diff options
5 files changed, 14 insertions, 93 deletions
diff --git a/pkgs/development/compilers/rust/bootstrap.nix b/pkgs/development/compilers/rust/bootstrap.nix index 44d96bc4ad1dd..589054ef4384e 100644 --- a/pkgs/development/compilers/rust/bootstrap.nix +++ b/pkgs/development/compilers/rust/bootstrap.nix @@ -3,16 +3,16 @@ let # Note: the version MUST be one version prior to the version we're # building - version = "1.24.1"; + version = "1.26.0"; # fetch hashes by running `print-hashes.sh 1.24.1` hashes = { - i686-unknown-linux-gnu = "a483576bb2ab237aa1ef62b66c0814f934afd8129d7c9748cb9a75da4a678c98"; - x86_64-unknown-linux-gnu = "4567e7f6e5e0be96e9a5a7f5149b5452828ab6a386099caca7931544f45d5327"; - armv7-unknown-linux-gnueabihf = "1169ab005b771c4befcdab536347a90242cae544b6b76eccd0f76796b61a534c"; - aarch64-unknown-linux-gnu = "64bb25a9689b18ddadf025b90d9bdb150b809ebfb74432dc69cc2e46120adbb2"; - i686-apple-darwin = "c96f7579e2406220895da80a989daaa194751c141e112ebe95761f2ed4ecb662"; - x86_64-apple-darwin = "9d4aacdb5849977ea619d399903c9378163bd9c76ea11dac5ef6eca27849f501"; + i686-unknown-linux-gnu = "2aef0709b1f2e93d396143b7a926f262ac6fd24dd8768bf2c9425255a4a401c1"; + x86_64-unknown-linux-gnu = "13691d7782577fc9f110924b26603ade1990de0b691a3ce2dc324b4a72a64a68"; + armv7-unknown-linux-gnueabihf = "d10c892cd3267010068930599e1e3835b50c6ba5261a912107dcba5ca1893ec5"; + aarch64-unknown-linux-gnu = "e12dc84bdb569cdb382268a5fe6ae6a8e2e53810cb890ec3a7133c20ba8451ac"; + i686-apple-darwin = "04dd24d7a5d5e02d5e992eaabd5952d39363885ce2a9980e3e96e5bc09dab2f0"; + x86_64-apple-darwin = "38708803c3096b8f101d1919ee2d7e723b0adf1bc1bb986b060973b57d8c7c28"; }; platform = diff --git a/pkgs/development/compilers/rust/default.nix b/pkgs/development/compilers/rust/default.nix index f191515b745c7..8669af91a9a98 100644 --- a/pkgs/development/compilers/rust/default.nix +++ b/pkgs/development/compilers/rust/default.nix @@ -6,16 +6,18 @@ let rustPlatform = recurseIntoAttrs (makeRustPlatform (callPackage ./bootstrap.nix {})); - version = "1.25.0"; - cargoVersion = "0.26.0"; + version = "1.26.1"; + cargoVersion = "1.26.1"; src = fetchurl { url = "https://static.rust-lang.org/dist/rustc-${version}-src.tar.gz"; - sha256 = "0baxjr99311lvwdq0s38bipbnj72pn6fgbk6lcq7j555xq53mxpf"; + sha256 = "1w0da0cysvzxqyn0ap0aprzlm006185yk5lq3v0b4hzcv0drd9vh"; }; in rec { rustc = callPackage ./rustc.nix { inherit stdenv llvm targets targetPatches targetToolchains rustPlatform version src; + patches = []; + forceBundledLLVM = true; configureFlags = [ "--release-channel=stable" ]; @@ -25,11 +27,6 @@ in rec { # So we do the same. # 2. Tests run out of memory for i686 doCheck = !stdenv.isAarch64 && !stdenv.isi686; - - patches = [ - ./patches/0001-Disable-fragile-tests-libstd-net-tcp-on-Darwin-Linux.patch - ] ++ stdenv.lib.optional stdenv.needsPax ./patches/grsec.patch; - }; cargo = callPackage ./cargo.nix rec { diff --git a/pkgs/development/compilers/rust/patches/0001-Disable-fragile-tests-libstd-net-tcp-on-Darwin-Linux.patch b/pkgs/development/compilers/rust/patches/0001-Disable-fragile-tests-libstd-net-tcp-on-Darwin-Linux.patch deleted file mode 100644 index f55d0badb8234..0000000000000 --- a/pkgs/development/compilers/rust/patches/0001-Disable-fragile-tests-libstd-net-tcp-on-Darwin-Linux.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 26d3b70abec1adf773522643b31ce9c03439916a Mon Sep 17 00:00:00 2001 -From: Joerg Thalheim <joerg@thalheim.io> -Date: Tue, 10 Oct 2017 00:40:20 +0100 -Subject: [PATCH] Disable fragile tests libstd::net::tcp on Darwin/Linux - -Signed-off-by: Joerg Thalheim <joerg@thalheim.io> ---- - src/libstd/net/tcp.rs | 8 +++++++- - 1 file changed, 7 insertions(+), 1 deletion(-) - -diff --git a/src/libstd/net/tcp.rs b/src/libstd/net/tcp.rs -index 8d1e7882e5..2c223fb315 100644 ---- a/src/libstd/net/tcp.rs -+++ b/src/libstd/net/tcp.rs -@@ -949,6 +949,7 @@ mod tests { - }) - } - -+ #[cfg_attr(target_os = "macos", ignore)] - #[test] - fn write_close() { - each_ip(&mut |addr| { -@@ -1421,7 +1422,10 @@ mod tests { - - // FIXME: re-enabled bitrig/openbsd tests once their socket timeout code - // no longer has rounding errors. -- #[cfg_attr(any(target_os = "bitrig", target_os = "netbsd", target_os = "openbsd"), ignore)] -+ #[cfg_attr(any(target_os = "bitrig", -+ target_os = "netbsd", -+ target_os = "openbsd", -+ target_os = "macos"), ignore)] - #[test] - fn timeouts() { - let addr = next_test_ip4(); -@@ -1500,6 +1504,7 @@ mod tests { - assert_eq!(false, t!(stream.nodelay())); - } - -+ #[cfg_attr(target_os = "macos", ignore)] - #[test] - fn ttl() { - let ttl = 100; -@@ -1568,6 +1573,7 @@ mod tests { - }) - } - -+ #[cfg_attr(target_os = "linux", ignore)] - #[test] - fn connect_timeout_unroutable() { - // this IP is unroutable, so connections should always time out, --- -2.14.2 - diff --git a/pkgs/development/compilers/rust/patches/grsec.patch b/pkgs/development/compilers/rust/patches/grsec.patch deleted file mode 100644 index b97b40c240912..0000000000000 --- a/pkgs/development/compilers/rust/patches/grsec.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff --git a/src/test/run-make/relocation-model/Makefile b/src/test/run-make/relocation-model/Makefile -index b22f34f..c6489bd 100644 ---- a/src/test/run-make/relocation-model/Makefile -+++ b/src/test/run-make/relocation-model/Makefile -@@ -2,9 +2,11 @@ - - all: others - $(RUSTC) -C relocation-model=dynamic-no-pic foo.rs -+ paxctl -czexm $(TMPDIR)/foo - $(call RUN,foo) - - $(RUSTC) -C relocation-model=default foo.rs -+ paxctl -czexm $(TMPDIR)/foo - $(call RUN,foo) - - $(RUSTC) -C relocation-model=default --crate-type=dylib foo.rs -@@ -16,6 +18,7 @@ others: - else - others: - $(RUSTC) -C relocation-model=static foo.rs -+ paxctl -czexm $(TMPDIR)/foo - $(call RUN,foo) - $(RUSTC) -C relocation-model=static --crate-type=dylib foo.rs - endif diff --git a/pkgs/development/compilers/rust/rustc.nix b/pkgs/development/compilers/rust/rustc.nix index 277ffda20afd3..72d0ee70782ad 100644 --- a/pkgs/development/compilers/rust/rustc.nix +++ b/pkgs/development/compilers/rust/rustc.nix @@ -149,10 +149,11 @@ stdenv.mkDerivation { outputs = [ "out" "man" "doc" ]; setOutputFlags = false; - # Disable codegen units for the tests. + # Disable codegen units and hardening for the tests. preCheck = '' export RUSTFLAGS= export TZDIR=${tzdata}/share/zoneinfo + export hardeningDisable=all '' + # Ensure TMPDIR is set, and disable a test that removing the HOME # variable from the environment falls back to another home |