Merge pull request #40356 from jD91mZM2/rust

rustc: 1.25.0 -> 1.26.2
This commit is contained in:
Jörg Thalheim 2018-06-07 20:47:36 +01:00 committed by GitHub
commit ca6569c96a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 140 additions and 99 deletions

View File

@ -14,7 +14,7 @@ let
installComponents
= "rustc,rust-std-${platform}"
+ (optionalString bootstrapping ",rust-docs,cargo")
+ (optionalString bootstrapping ",cargo")
;
in

View File

@ -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.1";
# 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 = "d704ba5cbaaf93c5e2112d211630db0e460d5dc819a43464ba91581e5c821df3";
x86_64-unknown-linux-gnu = "b7e964bace1286696d511c287b945f3ece476ba77a231f0c31f1867dfa5080e0";
armv7-unknown-linux-gnueabihf = "34fbcebc8e60b6496f1ce7998cf0b50cd618770f039da529b65110fff1f25fa0";
aarch64-unknown-linux-gnu = "d4a369053c2dfd5f457de6853557dab563944579fa4bb55bc919bacf259bff6d";
i686-apple-darwin = "047c31a872161ebb1d21ef616f7658190403769a8734f84364a3cf15838b4708";
x86_64-apple-darwin = "ebf898b9fa7e2aafc53682a41f18af5ca6660ebe82dd78f28cd9799fe4dc189a";
};
platform =

View File

@ -6,16 +6,18 @@
let
rustPlatform = recurseIntoAttrs (makeRustPlatform (callPackage ./bootstrap.nix {}));
version = "1.25.0";
cargoVersion = "0.26.0";
version = "1.26.2";
cargoVersion = "1.26.2";
src = fetchurl {
url = "https://static.rust-lang.org/dist/rustc-${version}-src.tar.gz";
sha256 = "0baxjr99311lvwdq0s38bipbnj72pn6fgbk6lcq7j555xq53mxpf";
sha256 = "0047ais0fvmqvngqkdsxgrzhb0kljg8wy85b01kbbjc88hqcz7pv";
};
in rec {
rustc = callPackage ./rustc.nix {
inherit stdenv llvm targets targetPatches targetToolchains rustPlatform version src;
patches = [ ./patches/net-tcp-disable-tests.patch ./patches/stdsimd-disable-doctest.patch ];
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 {

View File

@ -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

View File

@ -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

View File

@ -0,0 +1,104 @@
diff --git a/src/libstd/net/tcp.rs b/src/libstd/net/tcp.rs
index 0f60b5b3e..9b08415e7 100644
--- a/src/libstd/net/tcp.rs
+++ b/src/libstd/net/tcp.rs
@@ -962,6 +962,7 @@ mod tests {
}
}
+ #[cfg_attr(target_os = "macos", ignore)]
#[test]
fn listen_localhost() {
let socket_addr = next_test_ip4();
@@ -1020,6 +1021,7 @@ mod tests {
})
}
+ #[cfg_attr(target_os = "macos", ignore)]
#[test]
fn read_eof() {
each_ip(&mut |addr| {
@@ -1039,6 +1041,7 @@ mod tests {
})
}
+ #[cfg_attr(target_os = "macos", ignore)]
#[test]
fn write_close() {
each_ip(&mut |addr| {
@@ -1065,6 +1068,7 @@ mod tests {
})
}
+ #[cfg_attr(target_os = "macos", ignore)]
#[test]
fn multiple_connect_serial() {
each_ip(&mut |addr| {
@@ -1087,6 +1091,7 @@ mod tests {
})
}
+ #[cfg_attr(target_os = "macos", ignore)]
#[test]
fn multiple_connect_interleaved_greedy_schedule() {
const MAX: usize = 10;
@@ -1123,6 +1128,7 @@ mod tests {
}
#[test]
+ #[cfg_attr(target_os = "macos", ignore)]
fn multiple_connect_interleaved_lazy_schedule() {
const MAX: usize = 10;
each_ip(&mut |addr| {
@@ -1401,6 +1407,7 @@ mod tests {
}
#[test]
+ #[cfg_attr(target_os = "macos", ignore)]
fn clone_while_reading() {
each_ip(&mut |addr| {
let accept = t!(TcpListener::bind(&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();
@@ -1596,6 +1603,7 @@ mod tests {
drop(listener);
}
+ #[cfg_attr(target_os = "macos", ignore)]
#[test]
fn nodelay() {
let addr = next_test_ip4();
@@ -1610,6 +1618,7 @@ mod tests {
assert_eq!(false, t!(stream.nodelay()));
}
+ #[cfg_attr(target_os = "macos", ignore)]
#[test]
fn ttl() {
let ttl = 100;
@@ -1647,6 +1656,7 @@ mod tests {
}
}
+ #[cfg_attr(target_os = "macos", ignore)]
#[test]
fn peek() {
each_ip(&mut |addr| {
@@ -1679,6 +1689,7 @@ mod tests {
}
#[test]
+ #[cfg_attr(any(target_os = "linux", target_os = "macos"), ignore)]
fn connect_timeout_unroutable() {
// this IP is unroutable, so connections should always time out,
// provided the network is reachable to begin with.

View File

@ -0,0 +1,20 @@
diff --git a/src/stdsimd/coresimd/x86/mod.rs b/src/stdsimd/coresimd/x86/mod.rs
index 32915c332..7cb54f31e 100644
--- a/src/stdsimd/coresimd/x86/mod.rs
+++ b/src/stdsimd/coresimd/x86/mod.rs
@@ -279,7 +279,6 @@ types! {
///
/// # Examples
///
- /// ```
/// # #![feature(cfg_target_feature, target_feature, stdsimd)]
/// # #![cfg_attr(not(dox), no_std)]
/// # #[cfg(not(dox))]
@@ -301,7 +300,6 @@ types! {
/// # }
/// # if is_x86_feature_detected!("sse") { unsafe { foo() } }
/// # }
- /// ```
pub struct __m256(f32, f32, f32, f32, f32, f32, f32, f32);
/// 256-bit wide set of four `f64` types, x86-specific

View File

@ -10,11 +10,7 @@
, targets
, targetPatches
, targetToolchains
# Tests frequently break on Darwin
# See the rust issue: https://github.com/rust-lang/rust/issues/51006
, doCheck ? (!stdenv.isDarwin)
, doCheck ? true
, broken ? false
, buildPlatform, hostPlatform
} @ args:
@ -149,10 +145,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