about summary refs log tree commit diff
path: root/pkgs/development/compilers
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/compilers')
-rw-r--r--pkgs/development/compilers/bigloo/default.nix20
-rw-r--r--pkgs/development/compilers/hop/default.nix20
-rw-r--r--pkgs/development/compilers/jasmin/default.nix4
-rw-r--r--pkgs/development/compilers/llvm/5/lldb.nix10
-rw-r--r--pkgs/development/compilers/llvm/6/lldb.nix10
-rw-r--r--pkgs/development/compilers/mcpp/default.nix10
-rw-r--r--pkgs/development/compilers/mruby/bison-36-compat.patch59
-rw-r--r--pkgs/development/compilers/mruby/default.nix8
-rw-r--r--pkgs/development/compilers/pforth/default.nix10
9 files changed, 72 insertions, 79 deletions
diff --git a/pkgs/development/compilers/bigloo/default.nix b/pkgs/development/compilers/bigloo/default.nix
index 32116048a438..a3bac2b1722c 100644
--- a/pkgs/development/compilers/bigloo/default.nix
+++ b/pkgs/development/compilers/bigloo/default.nix
@@ -1,17 +1,29 @@
-{ fetchurl, stdenv, gmp }:
+{ fetchurl, stdenv, autoconf, automake, libtool, gmp
+, darwin
+}:
 
 stdenv.mkDerivation rec {
   pname = "bigloo";
-  version = "4.1a-2";
+  version = "4.3h";
 
   src = fetchurl {
-    url = "ftp://ftp-sop.inria.fr/indes/fp/Bigloo/bigloo${version}.tar.gz";
-    sha256 = "09yrz8r0jpj7bda39fdxzrrdyhi851nlfajsyf0b6jxanz6ygcjx";
+    url = "ftp://ftp-sop.inria.fr/indes/fp/Bigloo/bigloo-${version}.tar.gz";
+    sha256 = "0fw08096sf8ma2cncipnidnysxii0h0pc7kcqkjhkhdchknp8vig";
   };
 
+  nativeBuildInputs = [ autoconf automake libtool ];
+
+  buildInputs = stdenv.lib.optional stdenv.isDarwin
+    darwin.apple_sdk.frameworks.ApplicationServices
+  ;
+
   propagatedBuildInputs = [ gmp ];
 
   preConfigure =
+    # For libuv on darwin
+    stdenv.lib.optionalString stdenv.isDarwin ''
+      export LIBTOOLIZE=libtoolize
+    '' +
     # Help libgc's configure.
     '' export CXXCPP="$CXX -E"
     '';
diff --git a/pkgs/development/compilers/hop/default.nix b/pkgs/development/compilers/hop/default.nix
index f63f4169bc36..fd3ef137ae60 100644
--- a/pkgs/development/compilers/hop/default.nix
+++ b/pkgs/development/compilers/hop/default.nix
@@ -1,21 +1,27 @@
 { stdenv, fetchurl, bigloo }:
 
+# Compute the “release” version of bigloo (before the first dash, if any)
+let bigloo-release =
+  let inherit (stdenv.lib) head splitString; in
+  head (splitString "-" (builtins.parseDrvName bigloo.name).version)
+; in
+
 stdenv.mkDerivation rec {
-  name = "hop-2.5.1";
+  name = "hop-3.3.0";
   src = fetchurl {
     url = "ftp://ftp-sop.inria.fr/indes/fp/Hop/${name}.tar.gz";
-    sha256 = "1bvp7pc71bln5yvfj87s8750c6l53wjl6f8m12v62q9926adhwys";
+    sha256 = "14gf9ihmw95zdnxsqhn5jymfivpfq5cg9v0y7yjd5i7c787dncp5";
   };
 
-  buildInputs = [ bigloo ];
-
-  preConfigure = ''
-    export NIX_LDFLAGS="$NIX_LDFLAGS -lbigloogc-4.1a";
+  postPatch = ''
+    substituteInPlace configure --replace "(os-tmp)" '(getenv "TMPDIR")'
   '';
 
+  buildInputs = [ bigloo ];
+
   configureFlags = [
     "--bigloo=${bigloo}/bin/bigloo"
-    "--bigloolibdir=${bigloo}/lib/bigloo/4.1a/"
+    "--bigloolibdir=${bigloo}/lib/bigloo/${bigloo-release}/"
   ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/compilers/jasmin/default.nix b/pkgs/development/compilers/jasmin/default.nix
index ef1b3055190e..7defdc5c689b 100644
--- a/pkgs/development/compilers/jasmin/default.nix
+++ b/pkgs/development/compilers/jasmin/default.nix
@@ -1,13 +1,13 @@
 { stdenv
 , fetchurl
 , unzip
-, jdk
+, jdk8
 , ant
 , makeWrapper
-, jre
 , callPackage
 }:
 
+let jre = jdk8.jre; jdk = jdk8; in
 stdenv.mkDerivation rec {
   pname = "jasmin";
   version = "2.4";
diff --git a/pkgs/development/compilers/llvm/5/lldb.nix b/pkgs/development/compilers/llvm/5/lldb.nix
index e0698e1dcf3d..e827f76231f1 100644
--- a/pkgs/development/compilers/llvm/5/lldb.nix
+++ b/pkgs/development/compilers/llvm/5/lldb.nix
@@ -1,5 +1,6 @@
 { stdenv
 , fetch
+, fetchpatch
 , cmake
 , zlib
 , ncurses
@@ -20,6 +21,15 @@ stdenv.mkDerivation {
 
   src = fetch "lldb" "05j2a63yzln43852nng8a7y47spzlyr1cvdmgmbxgd29c8r0bfkq";
 
+  patches = [
+    # Fix PythonString::GetString for >=python-3.7
+    (fetchpatch {
+      url = "https://github.com/llvm/llvm-project/commit/5457b426f5e15a29c0acc8af1a476132f8be2a36.patch";
+      sha256 = "1zbx4m0m8kbg0wq6740jcw151vb2pb1p25p401wiq8diqqagkjps";
+      stripLen = 1;
+    })
+  ];
+
   postPatch = ''
     # Fix up various paths that assume llvm and clang are installed in the same place
     sed -i 's,".*ClangConfig.cmake","${clang-unwrapped}/lib/cmake/clang/ClangConfig.cmake",' \
diff --git a/pkgs/development/compilers/llvm/6/lldb.nix b/pkgs/development/compilers/llvm/6/lldb.nix
index 80e298eaf8c0..629749e10f3c 100644
--- a/pkgs/development/compilers/llvm/6/lldb.nix
+++ b/pkgs/development/compilers/llvm/6/lldb.nix
@@ -1,5 +1,6 @@
 { stdenv
 , fetch
+, fetchpatch
 , cmake
 , zlib
 , ncurses
@@ -20,6 +21,15 @@ stdenv.mkDerivation {
 
   src = fetch "lldb" "05178zkyh84x32n91md6wm22lkzzrrfwa5cpmgzn0yrg3y2771bb";
 
+  patches = [
+    # Fix PythonString::GetString for >=python-3.7
+    (fetchpatch {
+      url = "https://github.com/llvm/llvm-project/commit/5457b426f5e15a29c0acc8af1a476132f8be2a36.patch";
+      sha256 = "1zbx4m0m8kbg0wq6740jcw151vb2pb1p25p401wiq8diqqagkjps";
+      stripLen = 1;
+    })
+  ];
+
   postPatch = ''
     # Fix up various paths that assume llvm and clang are installed in the same place
     sed -i 's,".*ClangConfig.cmake","${clang-unwrapped}/lib/cmake/clang/ClangConfig.cmake",' \
diff --git a/pkgs/development/compilers/mcpp/default.nix b/pkgs/development/compilers/mcpp/default.nix
index bf0db4c1f6cd..023bae48b3e9 100644
--- a/pkgs/development/compilers/mcpp/default.nix
+++ b/pkgs/development/compilers/mcpp/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl }:
+{ stdenv, fetchurl, fetchpatch }:
 
 stdenv.mkDerivation rec {
   pname = "mcpp";
@@ -11,6 +11,14 @@ stdenv.mkDerivation rec {
 
   configureFlags = [ "--enable-mcpplib" ];
 
+  patches = [
+    (fetchpatch {
+      name = "CVE-2019-14274.patch";
+      url = "https://github.com/h8liu/mcpp/commit/ea453aca2742be6ac43ba4ce0da6f938a7e5a5d8.patch";
+      sha256 = "0svkdr3w9b45v6scgzvggw9nsh6a3k7g19fqk0w3vlckwmk5ydzr";
+    })
+  ];
+
   meta = with stdenv.lib; {
     homepage = "http://mcpp.sourceforge.net/";
     description = "A portable c preprocessor";
diff --git a/pkgs/development/compilers/mruby/bison-36-compat.patch b/pkgs/development/compilers/mruby/bison-36-compat.patch
deleted file mode 100644
index 674a88fe4c23..000000000000
--- a/pkgs/development/compilers/mruby/bison-36-compat.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From acab088fd6af0b2ef2df1396aeb93bfc2e020fa5 Mon Sep 17 00:00:00 2001
-From: "Yukihiro \"Matz\" Matsumoto" <matz@ruby.or.jp>
-Date: Mon, 27 Apr 2020 18:52:43 +0900
-Subject: [PATCH 1/2] Updating `parse.y for recent `bison` (retry).
-
----
- mrbgems/mruby-compiler/core/parse.y | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/mrbgems/mruby-compiler/core/parse.y b/mrbgems/mruby-compiler/core/parse.y
-index 6a1faf4e..2a4f740e 100644
---- a/mrbgems/mruby-compiler/core/parse.y
-+++ b/mrbgems/mruby-compiler/core/parse.y
-@@ -1323,7 +1323,7 @@ heredoc_end(parser_state *p)
- 
- %}
- 
--%pure-parser
-+%define api.pure
- %parse-param {parser_state *p}
- %lex-param {parser_state *p}
- 
--- 
-2.27.0
-
-From 3cc682d943b29e84928a847a23f411ddbace74b7 Mon Sep 17 00:00:00 2001
-From: "Yukihiro \"Matz\" Matsumoto" <matz@ruby.or.jp>
-Date: Fri, 15 May 2020 12:30:13 +0900
-Subject: [PATCH 2/2] Remove `YYERROR_VERBOSE` which no longer supported since
- `bison 3.6`.
-
-Instead we added `%define parse.error verbose`.
----
- mrbgems/mruby-compiler/core/parse.y | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/mrbgems/mruby-compiler/core/parse.y b/mrbgems/mruby-compiler/core/parse.y
-index 2a4f740e..eee6a5e5 100644
---- a/mrbgems/mruby-compiler/core/parse.y
-+++ b/mrbgems/mruby-compiler/core/parse.y
-@@ -9,7 +9,6 @@
- #ifdef PARSER_DEBUG
- # define YYDEBUG 1
- #endif
--#define YYERROR_VERBOSE 1
- #define YYSTACK_USE_ALLOCA 1
- 
- #include <ctype.h>
-@@ -1323,6 +1322,7 @@ heredoc_end(parser_state *p)
- 
- %}
- 
-+%define parse.error verbose
- %define api.pure
- %parse-param {parser_state *p}
- %lex-param {parser_state *p}
--- 
-2.27.0
-
diff --git a/pkgs/development/compilers/mruby/default.nix b/pkgs/development/compilers/mruby/default.nix
index 2589c47c3bec..eee4f2c64eb7 100644
--- a/pkgs/development/compilers/mruby/default.nix
+++ b/pkgs/development/compilers/mruby/default.nix
@@ -2,26 +2,24 @@
 
 stdenv.mkDerivation rec {
   pname = "mruby";
-  version = "2.1.1";
+  version = "2.1.2";
 
   src = fetchFromGitHub {
     owner   = "mruby";
     repo    = "mruby";
     rev     = version;
-    sha256  = "gEEb0Vn/G+dNgeY6r0VP8bMSPrEOf5s+0GoOcnIPtEU=";
+    sha256  = "0fhfv8pi7i8jn2vgk2n2rjnbnfa12nhj514v8i4k353n7q4pmkh3";
   };
 
   nativeBuildInputs = [ ruby bison rake ];
 
-  patches = [ ./bison-36-compat.patch ];
-
   # Necessary so it uses `gcc` instead of `ld` for linking.
   # https://github.com/mruby/mruby/blob/35be8b252495d92ca811d76996f03c470ee33380/tasks/toolchains/gcc.rake#L25
   preBuild = if stdenv.isLinux then "unset LD" else null;
 
   installPhase = ''
     mkdir $out
-    cp -R build/host/{bin,lib} $out
+    cp -R include build/host/{bin,lib} $out
   '';
 
   doCheck = true;
diff --git a/pkgs/development/compilers/pforth/default.nix b/pkgs/development/compilers/pforth/default.nix
index c13d28c6a3bb..ce228c2f1cb5 100644
--- a/pkgs/development/compilers/pforth/default.nix
+++ b/pkgs/development/compilers/pforth/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub }:
+{ stdenv, fetchFromGitHub, fetchpatch }:
 
 stdenv.mkDerivation {
   version = "28";
@@ -10,6 +10,14 @@ stdenv.mkDerivation {
     sha256 = "0k3pmcgybsnwrxy75piyb2420r8d4ij190606js32j99062glr3x";
   };
 
+  patches = [
+    (fetchpatch {
+      name = "gnumake-4.3-fix.patch";
+      url = "https://github.com/philburk/pforth/commit/457cb99f57292bc855e53abcdcb7b12d6681e847.patch";
+      sha256 = "0x1bwx3pqb09ddjhmdli47lnk1ys4ny42819g17kfn8nkjs5hbx7";
+    })
+  ];
+
   makeFlags = [ "SRCDIR=." ];
   makefile = "build/unix/Makefile";