diff options
Diffstat (limited to 'pkgs/development/compilers')
-rw-r--r-- | pkgs/development/compilers/haxe/default.nix | 20 | ||||
-rw-r--r-- | pkgs/development/compilers/julia/default.nix | 3 | ||||
-rw-r--r-- | pkgs/development/compilers/rust/default.nix | 9 | ||||
-rw-r--r-- | pkgs/development/compilers/rust/patches/aarch64-disable-test_loading_cosine.patch | 12 | ||||
-rw-r--r-- | pkgs/development/compilers/rust/rustc.nix | 11 | ||||
-rw-r--r-- | pkgs/development/compilers/yosys/default.nix | 8 |
6 files changed, 41 insertions, 22 deletions
diff --git a/pkgs/development/compilers/haxe/default.nix b/pkgs/development/compilers/haxe/default.nix index a420949711e0..afeef2b3637c 100644 --- a/pkgs/development/compilers/haxe/default.nix +++ b/pkgs/development/compilers/haxe/default.nix @@ -53,6 +53,24 @@ let dontStrip = true; + # While it might be a good idea to run the upstream test suite, let's at + # least make sure we can actually run the compiler. + doInstallCheck = true; + installCheckPhase = '' + # Get out of the source directory to make sure the stdlib from the + # sources doesn't interfere with the installed one. + mkdir installcheck + pushd installcheck > /dev/null + cat >> InstallCheck.hx <<EOF + class InstallCheck { + public static function main() trace("test"); + } + EOF + "$out/bin/haxe" -js installcheck.js -main InstallCheck + grep -q 'console\.log.*test' installcheck.js + popd > /dev/null + ''; + meta = with stdenv.lib; { description = "Programming language targeting JavaScript, Flash, NekoVM, PHP, C++"; homepage = https://haxe.org; @@ -75,7 +93,7 @@ in { version = "3.4.6"; sha256 = "1myc4b8fwp0f9vky17wv45n34a583f5sjvajsc93f5gm1wanp4if"; prePatch = '' - sed -i -e 's|"/usr/lib/haxe/std/";|"'"$out/lib/haxe/std/"'";\n&|g' src/main.ml + sed -i -re 's!(let +prefix_path += +).*( +in)!\1"'"$out/"'"\2!' src/main.ml sed -i -e 's|"neko"|"${neko}/bin/neko"|g' extra/haxelib_src/src/haxelib/client/Main.hx ''; }; diff --git a/pkgs/development/compilers/julia/default.nix b/pkgs/development/compilers/julia/default.nix index a263703ffa5d..b5a3a8c6be2d 100644 --- a/pkgs/development/compilers/julia/default.nix +++ b/pkgs/development/compilers/julia/default.nix @@ -164,6 +164,7 @@ stdenv.mkDerivation rec { license = stdenv.lib.licenses.mit; maintainers = with stdenv.lib.maintainers; [ raskin ]; platforms = [ "i686-linux" "x86_64-linux" "x86_64-darwin" ]; - broken = stdenv.isi686; + #broken = stdenv.isi686; + broken = true; # 2018-04-10 }; } diff --git a/pkgs/development/compilers/rust/default.nix b/pkgs/development/compilers/rust/default.nix index d9a36273ce1d..f47c1f753ee1 100644 --- a/pkgs/development/compilers/rust/default.nix +++ b/pkgs/development/compilers/rust/default.nix @@ -20,11 +20,14 @@ in rec { configureFlags = [ "--release-channel=stable" ]; + # Upstream is not running tests on aarch64: + # see https://github.com/rust-lang/rust/issues/49807#issuecomment-380860567 + # So we do the same. + doCheck = !stdenv.isAarch64; + patches = [ ./patches/0001-Disable-fragile-tests-libstd-net-tcp-on-Darwin-Linux.patch - ] ++ stdenv.lib.optional stdenv.needsPax ./patches/grsec.patch - # https://github.com/rust-lang/rust/issues/45410 - ++ stdenv.lib.optional stdenv.isAarch64 ./patches/aarch64-disable-test_loading_cosine.patch; + ] ++ stdenv.lib.optional stdenv.needsPax ./patches/grsec.patch; }; diff --git a/pkgs/development/compilers/rust/patches/aarch64-disable-test_loading_cosine.patch b/pkgs/development/compilers/rust/patches/aarch64-disable-test_loading_cosine.patch deleted file mode 100644 index bafab0e9ef71..000000000000 --- a/pkgs/development/compilers/rust/patches/aarch64-disable-test_loading_cosine.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/src/librustc_metadata/dynamic_lib.rs b/src/librustc_metadata/dynamic_lib.rs -index 1b42fa0..92256dc 100644 ---- a/src/librustc_metadata/dynamic_lib.rs -+++ b/src/librustc_metadata/dynamic_lib.rs -@@ -80,6 +80,7 @@ mod tests { - use std::mem; - - #[test] -+ #[ignore] - fn test_loading_cosine() { - if cfg!(windows) { - return diff --git a/pkgs/development/compilers/rust/rustc.nix b/pkgs/development/compilers/rust/rustc.nix index bb0794aeb84e..19c4a590e454 100644 --- a/pkgs/development/compilers/rust/rustc.nix +++ b/pkgs/development/compilers/rust/rustc.nix @@ -53,6 +53,7 @@ stdenv.mkDerivation { RUSTFLAGS = "-Ccodegen-units=10"; # We need rust to build rust. If we don't provide it, configure will try to download it. + # Reference: https://github.com/rust-lang/rust/blob/master/src/bootstrap/configure.py configureFlags = configureFlags ++ [ "--enable-local-rust" "--local-rust-root=${rustPlatform.rust.rustc}" "--enable-rpath" ] ++ [ "--enable-vendor" ] @@ -62,6 +63,13 @@ stdenv.mkDerivation { ++ optional (targets != []) "--target=${target}" ++ optional (!forceBundledLLVM) "--llvm-root=${llvmShared}"; + # The boostrap.py will generated a Makefile that then executes the build. + # The BOOTSTRAP_ARGS used by this Makefile must include all flags to pass + # to the bootstrap builder. + postConfigure = '' + substituteInPlace Makefile --replace 'BOOTSTRAP_ARGS :=' 'BOOTSTRAP_ARGS := --jobs $(NIX_BUILD_CORES)' + ''; + patches = patches ++ targetPatches; # the rust build system complains that nix alters the checksums @@ -100,9 +108,6 @@ stdenv.mkDerivation { # Useful debugging parameter # export VERBOSE=1 - '' + optionalString stdenv.isAarch64 '' - # https://github.com/rust-lang/rust/issues/49807 - rm -vr src/test/debuginfo/by-value-self-argument-in-trait-impl.rs '' + optionalString stdenv.isDarwin '' # Disable all lldb tests. # error: Can't run LLDB test because LLDB's python path is not set diff --git a/pkgs/development/compilers/yosys/default.nix b/pkgs/development/compilers/yosys/default.nix index 568c94718e7f..c20bffe26ed1 100644 --- a/pkgs/development/compilers/yosys/default.nix +++ b/pkgs/development/compilers/yosys/default.nix @@ -35,14 +35,18 @@ stdenv.mkDerivation rec { buildInputs = [ tcl readline libffi python3 bison flex ]; patchPhase = '' + substituteInPlace ../yosys-abc/Makefile \ + --replace 'CC := gcc' "" substituteInPlace ./Makefile \ + --replace 'CXX = clang' "" \ + --replace 'ABCMKARGS = CC="$(CXX)"' 'ABCMKARGS =' \ --replace 'echo UNKNOWN' 'echo ${substring 0 10 (elemAt srcs 0).rev}' ''; preBuild = '' chmod -R u+w ../yosys-abc ln -s ../yosys-abc abc - make config-gcc + make config-${if stdenv.cc.isClang or false then "clang" else "gcc"} echo 'ABCREV := default' >> Makefile.conf makeFlags="PREFIX=$out $makeFlags" ''; @@ -61,6 +65,6 @@ stdenv.mkDerivation rec { homepage = http://www.clifford.at/yosys/; license = stdenv.lib.licenses.isc; maintainers = with stdenv.lib.maintainers; [ shell thoughtpolice ]; - platforms = stdenv.lib.platforms.linux; + platforms = stdenv.lib.platforms.unix; }; } |