diff --git a/.gitignore b/.gitignore index 76a3caf..92e692a 100644 --- a/.gitignore +++ b/.gitignore @@ -255,3 +255,11 @@ /rust-1.40.0-s390x-unknown-linux-gnu.tar.xz /rust-1.40.0-x86_64-unknown-linux-gnu.tar.xz /rustc-1.41.1-src.tar.xz +/rustc-1.42.0-src.tar.xz +/rust-1.41.1-aarch64-unknown-linux-gnu.tar.xz +/rust-1.41.1-armv7-unknown-linux-gnueabihf.tar.xz +/rust-1.41.1-i686-unknown-linux-gnu.tar.xz +/rust-1.41.1-powerpc64le-unknown-linux-gnu.tar.xz +/rust-1.41.1-powerpc64-unknown-linux-gnu.tar.xz +/rust-1.41.1-s390x-unknown-linux-gnu.tar.xz +/rust-1.41.1-x86_64-unknown-linux-gnu.tar.xz diff --git a/0001-Drop-cfg-bootstrap-code.patch b/0001-Drop-cfg-bootstrap-code.patch new file mode 100644 index 0000000..3d8f202 --- /dev/null +++ b/0001-Drop-cfg-bootstrap-code.patch @@ -0,0 +1,25 @@ +From 31dcdc9e13c324d33a18db3aed7f4b3208ff3744 Mon Sep 17 00:00:00 2001 +From: Mark Rousskov +Date: Fri, 31 Jan 2020 12:30:17 -0500 +Subject: [PATCH] Drop cfg(bootstrap) code + +--- + src/bootstrap/lib.rs | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/bootstrap/lib.rs b/src/bootstrap/lib.rs +index 1fee3fd9ac1d..637323331f58 100644 +--- a/src/bootstrap/lib.rs ++++ b/src/bootstrap/lib.rs +@@ -1026,7 +1026,7 @@ impl Build { + } + + fn llvm_link_tools_dynamically(&self, target: Interned) -> bool { +- (target.contains("linux-gnu") || target.contains("apple-darwin")) ++ target.contains("linux-gnu") || target.contains("apple-darwin") + } + + /// Returns the `version` string associated with this compiler for Rust +-- +2.24.1 + diff --git a/0001-Fix-compiletest-fallout-from-stage0-bump.patch b/0001-Fix-compiletest-fallout-from-stage0-bump.patch deleted file mode 100644 index dfffce9..0000000 --- a/0001-Fix-compiletest-fallout-from-stage0-bump.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 241d2e765dc7401e642812e43b75dbc3950f2c98 Mon Sep 17 00:00:00 2001 -From: Mark Rousskov -Date: Wed, 18 Dec 2019 13:28:14 -0500 -Subject: [PATCH] Fix compiletest fallout from stage0 bump - ---- - src/tools/compiletest/src/main.rs | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/tools/compiletest/src/main.rs b/src/tools/compiletest/src/main.rs -index 15f8abd75d59..32965bbb292d 100644 ---- a/src/tools/compiletest/src/main.rs -+++ b/src/tools/compiletest/src/main.rs -@@ -569,6 +569,7 @@ pub fn test_opts(config: &Config) -> test::TestOpts { - list: false, - options: test::Options::new(), - time_options: None, -+ force_run_in_process: false, - } - } - --- -2.24.1 - diff --git a/0001-Update-the-barrier-cache-during-ARM-EHABI-unwinding.patch b/0001-Update-the-barrier-cache-during-ARM-EHABI-unwinding.patch deleted file mode 100644 index 82d928d..0000000 --- a/0001-Update-the-barrier-cache-during-ARM-EHABI-unwinding.patch +++ /dev/null @@ -1,52 +0,0 @@ -From b6fd4598c5367e78b5841fd99412484f0e86fc21 Mon Sep 17 00:00:00 2001 -From: Amanieu d'Antras -Date: Wed, 1 Jan 2020 17:11:45 +0100 -Subject: [PATCH] Update the barrier cache during ARM EHABI unwinding - ---- - src/libpanic_unwind/gcc.rs | 8 +++++++- - src/libunwind/libunwind.rs | 2 ++ - 2 files changed, 9 insertions(+), 1 deletion(-) - -diff --git a/src/libpanic_unwind/gcc.rs b/src/libpanic_unwind/gcc.rs -index 4f572fe21b30..328d0d4ce7be 100644 ---- a/src/libpanic_unwind/gcc.rs -+++ b/src/libpanic_unwind/gcc.rs -@@ -187,7 +187,13 @@ cfg_if::cfg_if! { - match eh_action { - EHAction::None | - EHAction::Cleanup(_) => return continue_unwind(exception_object, context), -- EHAction::Catch(_) => return uw::_URC_HANDLER_FOUND, -+ EHAction::Catch(_) => { -+ // EHABI requires the personality routine to update the -+ // SP value in the barrier cache of the exception object. -+ (*exception_object).private[5] = -+ uw::_Unwind_GetGR(context, uw::UNWIND_SP_REG); -+ return uw::_URC_HANDLER_FOUND; -+ } - EHAction::Terminate => return uw::_URC_FAILURE, - } - } else { -diff --git a/src/libunwind/libunwind.rs b/src/libunwind/libunwind.rs -index 0b39503c0d03..30658ce328d8 100644 ---- a/src/libunwind/libunwind.rs -+++ b/src/libunwind/libunwind.rs -@@ -23,6 +23,7 @@ pub type _Unwind_Word = uintptr_t; - pub type _Unwind_Ptr = uintptr_t; - pub type _Unwind_Trace_Fn = extern "C" fn(ctx: *mut _Unwind_Context, arg: *mut c_void) - -> _Unwind_Reason_Code; -+ - #[cfg(target_arch = "x86")] - pub const unwinder_private_data_size: usize = 5; - -@@ -151,6 +152,7 @@ if #[cfg(all(any(target_os = "ios", target_os = "netbsd", not(target_arch = "arm - use _Unwind_VRS_DataRepresentation::*; - - pub const UNWIND_POINTER_REG: c_int = 12; -+ pub const UNWIND_SP_REG: c_int = 13; - pub const UNWIND_IP_REG: c_int = 15; - - #[cfg_attr(all(feature = "llvm-libunwind", --- -2.24.1 - diff --git a/rust-pr68019-in-tree-compiletest.patch b/rust-pr68019-in-tree-compiletest.patch deleted file mode 100644 index a0b28bf..0000000 --- a/rust-pr68019-in-tree-compiletest.patch +++ /dev/null @@ -1,97 +0,0 @@ -From ed8e55fe8d732d8a87343441db3bfbb974f043df Mon Sep 17 00:00:00 2001 -From: Josh Stone -Date: Wed, 8 Jan 2020 09:44:45 -0800 -Subject: [PATCH 1/2] Remove obsolete llvm_tools flag - ---- - src/bootstrap/tool.rs | 12 +----------- - 1 file changed, 1 insertion(+), 11 deletions(-) - -diff --git a/src/bootstrap/tool.rs b/src/bootstrap/tool.rs -index 815498047fd5..f785a0989a36 100644 ---- a/src/bootstrap/tool.rs -+++ b/src/bootstrap/tool.rs -@@ -293,7 +293,6 @@ fn rustbook_features() -> Vec { - macro_rules! bootstrap_tool { - ($( - $name:ident, $path:expr, $tool_name:expr -- $(,llvm_tools = $llvm:expr)* - $(,is_external_tool = $external:expr)* - $(,features = $features:expr)* - ; -@@ -305,15 +304,6 @@ macro_rules! bootstrap_tool { - )+ - } - -- impl Tool { -- /// Whether this tool requires LLVM to run -- pub fn uses_llvm_tools(&self) -> bool { -- match self { -- $(Tool::$name => false $(|| $llvm)*,)+ -- } -- } -- } -- - impl<'a> Builder<'a> { - pub fn tool_exe(&self, tool: Tool) -> PathBuf { - match tool { -@@ -381,7 +371,7 @@ bootstrap_tool!( - Tidy, "src/tools/tidy", "tidy"; - Linkchecker, "src/tools/linkchecker", "linkchecker"; - CargoTest, "src/tools/cargotest", "cargotest"; -- Compiletest, "src/tools/compiletest", "compiletest", llvm_tools = true; -+ Compiletest, "src/tools/compiletest", "compiletest"; - BuildManifest, "src/tools/build-manifest", "build-manifest"; - RemoteTestClient, "src/tools/remote-test-client", "remote-test-client"; - RustInstaller, "src/tools/rust-installer", "fabricate", is_external_tool = true; --- -2.24.1 - - -From cc4688d66d75e149a0136f701045cbf7ee672725 Mon Sep 17 00:00:00 2001 -From: Josh Stone -Date: Wed, 8 Jan 2020 10:04:18 -0800 -Subject: [PATCH 2/2] Build compiletest with in-tree libtest - ---- - src/bootstrap/tool.rs | 10 ++++++++-- - 1 file changed, 8 insertions(+), 2 deletions(-) - -diff --git a/src/bootstrap/tool.rs b/src/bootstrap/tool.rs -index f785a0989a36..73a4dda74e88 100644 ---- a/src/bootstrap/tool.rs -+++ b/src/bootstrap/tool.rs -@@ -294,6 +294,7 @@ macro_rules! bootstrap_tool { - ($( - $name:ident, $path:expr, $tool_name:expr - $(,is_external_tool = $external:expr)* -+ $(,is_unstable_tool = $unstable:expr)* - $(,features = $features:expr)* - ; - )+) => { -@@ -344,7 +345,12 @@ macro_rules! bootstrap_tool { - compiler: self.compiler, - target: self.target, - tool: $tool_name, -- mode: Mode::ToolBootstrap, -+ mode: if false $(|| $unstable)* { -+ // use in-tree libraries for unstable features -+ Mode::ToolStd -+ } else { -+ Mode::ToolBootstrap -+ }, - path: $path, - is_optional_tool: false, - source_type: if false $(|| $external)* { -@@ -371,7 +377,7 @@ bootstrap_tool!( - Tidy, "src/tools/tidy", "tidy"; - Linkchecker, "src/tools/linkchecker", "linkchecker"; - CargoTest, "src/tools/cargotest", "cargotest"; -- Compiletest, "src/tools/compiletest", "compiletest"; -+ Compiletest, "src/tools/compiletest", "compiletest", is_unstable_tool = true; - BuildManifest, "src/tools/build-manifest", "build-manifest"; - RemoteTestClient, "src/tools/remote-test-client", "remote-test-client"; - RustInstaller, "src/tools/rust-installer", "fabricate", is_external_tool = true; --- -2.24.1 - diff --git a/rust.spec b/rust.spec index ad4a89c..91d3153 100644 --- a/rust.spec +++ b/rust.spec @@ -9,10 +9,10 @@ # e.g. 1.10.0 wants rustc: 1.9.0-2016-05-24 # or nightly wants some beta-YYYY-MM-DD # Note that cargo matches the program version here, not its crate version. -%global bootstrap_rust 1.40.0 -%global bootstrap_cargo 1.40.0 -%global bootstrap_channel 1.40.0 -%global bootstrap_date 2019-12-19 +%global bootstrap_rust 1.41.0 +%global bootstrap_cargo 1.41.0 +%global bootstrap_channel 1.41.1 +%global bootstrap_date 2020-02-27 # Only the specified arches will use bootstrap binaries. #global bootstrap_arches %%{rust_arches} @@ -55,7 +55,7 @@ %endif Name: rust -Version: 1.41.1 +Version: 1.42.0 Release: 1%{?dist} Summary: The Rust Programming Language License: (ASL 2.0 or MIT) and (BSD and MIT) @@ -74,15 +74,9 @@ Source0: https://static.rust-lang.org/dist/%{rustc_package}.tar.xz # We do have the necessary fix in our LLVM 7. Patch1: rust-pr57840-llvm7-debuginfo-variants.patch -# Fix compiletest with newer (local-rebuild) libtest -# https://github.com/rust-lang/rust/commit/241d2e765dc7401e642812e43b75dbc3950f2c98 -Patch2: 0001-Fix-compiletest-fallout-from-stage0-bump.patch -# https://github.com/rust-lang/rust/pull/68019 -Patch3: rust-pr68019-in-tree-compiletest.patch - -# Fix ARM unwinding for foreign-exceptions -# https://github.com/rust-lang/rust/pull/67779 -Patch4: 0001-Update-the-barrier-cache-during-ARM-EHABI-unwinding.patch +# Fix 1.42 bootstrapping itself +# https://github.com/rust-lang/rust/issues/69953 +Patch2: 0001-Drop-cfg-bootstrap-code.patch # libcurl on EL7 doesn't have http2, but since cargo requests it, curl-sys # will try to build it statically -- instead we turn off the feature. @@ -198,7 +192,6 @@ BuildRequires: gdb # TODO: work on unbundling these! Provides: bundled(libbacktrace) = 8.1.0 -Provides: bundled(miniz) = 2.0.7 # Virtual provides for folks who attempt "dnf install rustc" Provides: rustc = %{version}-%{release} @@ -316,7 +309,7 @@ Summary: Rust's package manager and build tool Provides: bundled(libgit2) = 0.28.2 %endif %if %with bundled_libssh2 -Provides: bundled(libssh2) = 1.8.1~dev +Provides: bundled(libssh2) = 1.9.0~dev %endif # For tests: BuildRequires: git @@ -362,7 +355,7 @@ Summary: Rust Language Server for IDE integration Provides: bundled(libgit2) = 0.28.2 %endif %if %with bundled_libssh2 -Provides: bundled(libssh2) = 1.8.1~dev +Provides: bundled(libssh2) = 1.9.0~dev %endif Requires: rust-analysis # /usr/bin/rls is dynamically linked against internal rustc libs @@ -426,8 +419,6 @@ test -f '%{local_rust_root}/bin/rustc' %patch1 -p1 -R %patch2 -p1 -%patch3 -p1 -%patch4 -p1 %if %without curl_http2 %patch10 -p1 @@ -741,6 +732,9 @@ rm -f %{buildroot}%{rustlibdir}/etc/lldb_*.py* %changelog +* Thu Mar 12 2020 Josh Stone - 1.42.0-1 +- Update to 1.42.0. + * Thu Feb 27 2020 Josh Stone - 1.41.1-1 - Update to 1.41.1. diff --git a/sources b/sources index 8b5147c..63fa9dd 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (rustc-1.41.1-src.tar.xz) = ef33565c9cf4e27ca279072bfed3301e0276c09407d49727640746ba78d289de285278d64b1cce8708461fd6c97c7ab2ea8d56e7a4c4a23b2e66e2d164c35fc9 +SHA512 (rustc-1.42.0-src.tar.xz) = 589bfdc92deedd33b8ea0df7f7c64c2a9a085fbea64936eff92f81e812309c060ed7a7adc96f6010d7adf62a68434a230da0f6c5b3540df4e0a5c6de05a31b16 diff --git a/sources-bootstrap b/sources-bootstrap index ad40ecc..4a4c06d 100644 --- a/sources-bootstrap +++ b/sources-bootstrap @@ -1,8 +1,8 @@ -SHA512 (rustc-1.41.1-src.tar.xz) = ef33565c9cf4e27ca279072bfed3301e0276c09407d49727640746ba78d289de285278d64b1cce8708461fd6c97c7ab2ea8d56e7a4c4a23b2e66e2d164c35fc9 -SHA512 (rust-1.40.0-aarch64-unknown-linux-gnu.tar.xz) = f601e4251e08a6d66edb0489b6ab840b57622b506547e81036e6dfe08eb71005a22a2777a0b8b2d07a6f88286d58f513482b863116311a6f43c7284769af6e7f -SHA512 (rust-1.40.0-armv7-unknown-linux-gnueabihf.tar.xz) = d3345946c5a3d5cb3d7fca4d3200710704d64547ebfa4ab11c45ea1a18ca3c49b429783d499845f31dcb150abe2f6836fe203fd9d7aa53e0475b940da5549492 -SHA512 (rust-1.40.0-i686-unknown-linux-gnu.tar.xz) = d727149afbbc3b2709360dd6080ff301e781aaa94459c1348d3e35382bc9c7ad65c4d70f9bfc7b44ac92ddaf89e3aab92b75b9d184eba86916da25bd629592b6 -SHA512 (rust-1.40.0-powerpc64le-unknown-linux-gnu.tar.xz) = 8b82f3bacc503aa23cfa7a6cd6232e34b734becffbbe02df9f766878d526d24d7409d8c104f39fa791c0f7a8b3fa61f6b8a528e89e8ab94d6a131b2d0ac11f0f -SHA512 (rust-1.40.0-powerpc64-unknown-linux-gnu.tar.xz) = eae2e0ba3a6a9ba07945112c17962ca3c77737fa187759e674e78f626777da85a5ee6107168fe2866b5beb1ecf2e655652cb7d9b51867b247d76e174dfb103ce -SHA512 (rust-1.40.0-s390x-unknown-linux-gnu.tar.xz) = e71d3a1d85975653b6d972a4854c9e53be7f2d093a601145261c97f7917f869399fbc6322a04f63b782a5a28b91c3be40041a8c77367d19dec8d0e857cbbef14 -SHA512 (rust-1.40.0-x86_64-unknown-linux-gnu.tar.xz) = 11a2ad1d8b9e91cbe9ee6a1954d46ac75eeaa83f0c2425a8ad70d191727b02e86ead33d6464222effca6f5134c31a165801a854aa57bdb5f12944d605de3c1d1 +SHA512 (rustc-1.42.0-src.tar.xz) = 589bfdc92deedd33b8ea0df7f7c64c2a9a085fbea64936eff92f81e812309c060ed7a7adc96f6010d7adf62a68434a230da0f6c5b3540df4e0a5c6de05a31b16 +SHA512 (rust-1.41.1-aarch64-unknown-linux-gnu.tar.xz) = 54eac5c380b418c1714931ead7d6284b225bb427fcc501e147240000b71d31b667e308aea7f38f3299b1311ab04f19011b914d37a4581c7a64028965569cd58e +SHA512 (rust-1.41.1-armv7-unknown-linux-gnueabihf.tar.xz) = 400bf8d013fe5030243bc0ccb7066ea3d03a2c10727e04b6830ab91dfe9b04f78cfef10794a1c7bb6276fb00c86f1e1c42a74faba19f3125859b3464726d01c2 +SHA512 (rust-1.41.1-i686-unknown-linux-gnu.tar.xz) = c6d74b2653c537043eb2ea721095ff053def592b4c330bdc104690cfb51d648f515288cc0451743d94260f18a55d6757bcb8eb1e6c0217da3498d08b681ca6af +SHA512 (rust-1.41.1-powerpc64le-unknown-linux-gnu.tar.xz) = 1b2bf6d35321dd0a0fc9735005317f09f8b9a81b520612484530e29156ea254d5cada583e44f7e4a840edde09d70c34f7ead1208d8aa6037c652540dfa38cede +SHA512 (rust-1.41.1-powerpc64-unknown-linux-gnu.tar.xz) = 50367685783085cc384be944d4321dfde850f3a0e94de0625a08f17160af2c0b795276f96574d1bea84092cbc1cd3cde619d97fe2e37b07ead17f49164e1c995 +SHA512 (rust-1.41.1-s390x-unknown-linux-gnu.tar.xz) = f809adc626876df5c6e050362d59189ede5e3991ac41fd129922540abeb728f618e1a3f3925cee34895de5e037141aabb1f8c2b94d4069945d174e38446e8153 +SHA512 (rust-1.41.1-x86_64-unknown-linux-gnu.tar.xz) = c75d4a18cf9300c6ab480d34c5e4b41be971535931455239330cb2a0e927bcf9cf102498cad5dd1d5d802fd1d9c9d214b80e8ff15aa6be68d3e7f41420cad666