diff --git a/.gitignore b/.gitignore index a1c5778..c9fead2 100644 --- a/.gitignore +++ b/.gitignore @@ -307,3 +307,11 @@ /rust-1.46.0-powerpc64-unknown-linux-gnu.tar.xz /rust-1.46.0-s390x-unknown-linux-gnu.tar.xz /rust-1.46.0-x86_64-unknown-linux-gnu.tar.xz +/rustc-1.48.0-src.tar.xz +/rust-1.47.0-aarch64-unknown-linux-gnu.tar.xz +/rust-1.47.0-armv7-unknown-linux-gnueabihf.tar.xz +/rust-1.47.0-i686-unknown-linux-gnu.tar.xz +/rust-1.47.0-powerpc64le-unknown-linux-gnu.tar.xz +/rust-1.47.0-powerpc64-unknown-linux-gnu.tar.xz +/rust-1.47.0-s390x-unknown-linux-gnu.tar.xz +/rust-1.47.0-x86_64-unknown-linux-gnu.tar.xz diff --git a/rust.spec b/rust.spec index 915481e..baea48b 100644 --- a/rust.spec +++ b/rust.spec @@ -1,5 +1,5 @@ # Only x86_64 and i686 are Tier 1 platforms at this time. -# https://forge.rust-lang.org/platform-support.html +# https://doc.rust-lang.org/nightly/rustc/platform-support.html %global rust_arches x86_64 i686 armv7hl aarch64 ppc64 ppc64le s390x # The channel can be stable, beta, or nightly @@ -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.46.0 -%global bootstrap_cargo 1.46.0 -%global bootstrap_channel 1.46.0 -%global bootstrap_date 2020-08-27 +%global bootstrap_rust 1.47.0 +%global bootstrap_cargo 1.47.0 +%global bootstrap_channel 1.47.0 +%global bootstrap_date 2020-10-08 # Only the specified arches will use bootstrap binaries. #global bootstrap_arches %%{rust_arches} @@ -52,7 +52,7 @@ %endif Name: rust -Version: 1.47.0 +Version: 1.48.0 Release: 1%{?dist} Summary: The Rust Programming Language License: (ASL 2.0 or MIT) and (BSD and MIT) @@ -76,15 +76,15 @@ Patch2: 0001-doc-disambiguate-stat-in-MetadataExt-as_raw_stat.patch ### RHEL-specific patches below ### # Disable cargo->libgit2->libssh2 on RHEL, as it's not approved for FIPS (rhbz1732949) -Patch100: rustc-1.47.0-disable-libssh2.patch +Patch100: rustc-1.48.0-disable-libssh2.patch # libcurl on RHEL7 doesn't have http2, but since cargo requests it, curl-sys # will try to build it statically -- instead we turn off the feature. -Patch101: rustc-1.47.0-disable-http2.patch +Patch101: rustc-1.48.0-disable-http2.patch # kernel rh1410097 causes too-small stacks for PIE. # (affects RHEL6 kernels when building for RHEL7) -Patch102: rustc-1.45.0-no-default-pie.patch +Patch102: rustc-1.48.0-no-default-pie.patch # Get the Rust triple for any arch. @@ -297,7 +297,7 @@ its standard library. %package -n cargo Summary: Rust's package manager and build tool %if %with bundled_libgit2 -Provides: bundled(libgit2) = 1.0.0 +Provides: bundled(libgit2) = 1.1.0 %endif %if %with bundled_libssh2 Provides: bundled(libssh2) = 1.9.0~dev @@ -343,7 +343,7 @@ A tool for formatting Rust code according to style guidelines. %package -n rls Summary: Rust Language Server for IDE integration %if %with bundled_libgit2 -Provides: bundled(libgit2) = 1.0.0 +Provides: bundled(libgit2) = 1.1.0 %endif %if %with bundled_libssh2 Provides: bundled(libssh2) = 1.9.0~dev @@ -421,7 +421,7 @@ rm -rf vendor/libnghttp2-sys/ %endif %if 0%{?rhel} && 0%{?rhel} < 8 -%patch102 -p1 -b .no-pie +%patch102 -p1 %endif %if "%{python}" != "python3" @@ -431,12 +431,14 @@ sed -i.try-python -e '/^try python3 /i try "%{python}" "$@"' ./configure %if %without bundled_llvm rm -rf src/llvm-project/ +mkdir -p src/llvm-project/libunwind/ %endif # Remove other unused vendored libraries rm -rf vendor/curl-sys/curl/ rm -rf vendor/jemalloc-sys/jemalloc/ rm -rf vendor/libz-sys/src/zlib/ +rm -rf vendor/libz-sys/src/zlib-ng/ rm -rf vendor/lzma-sys/xz-*/ rm -rf vendor/openssl-src/openssl/ @@ -493,12 +495,6 @@ find -name '*.rs' -type f -perm /111 -exec chmod -v -x '{}' '+' %build -# This package fails to build with LTO due to undefined symbols. LTO -# was disabled in OpenSuSE as well, but with no real explanation why -# beyond the undefined symbols. It really should be investigated further. -# Disable LTO -%define _lto_cflags %{nil} - export %{rust_env} # We're going to override --libdir when configuring to get rustlib into a @@ -686,7 +682,6 @@ export %{rust_env} %{_docdir}/%{name}/html/*/ %{_docdir}/%{name}/html/*.html %{_docdir}/%{name}/html/*.css -%{_docdir}/%{name}/html/*.ico %{_docdir}/%{name}/html/*.js %{_docdir}/%{name}/html/*.png %{_docdir}/%{name}/html/*.svg @@ -742,6 +737,12 @@ export %{rust_env} %changelog +* Thu Nov 19 2020 Josh Stone - 1.48.0-1 +- Update to 1.48.0. + +* Sat Oct 10 2020 Jeff Law - 1.47.0-2 +- Re-enable LTO + * Thu Oct 08 2020 Josh Stone - 1.47.0-1 - Update to 1.47.0. diff --git a/rustc-1.47.0-disable-http2.patch b/rustc-1.48.0-disable-http2.patch similarity index 75% rename from rustc-1.47.0-disable-http2.patch rename to rustc-1.48.0-disable-http2.patch index e59c892..a162fd0 100644 --- a/rustc-1.47.0-disable-http2.patch +++ b/rustc-1.48.0-disable-http2.patch @@ -1,6 +1,6 @@ ---- rustc-1.47.0-src/Cargo.lock.orig 2020-10-08 12:21:40.516837553 -0700 -+++ rustc-1.47.0-src/Cargo.lock 2020-10-08 12:23:25.327581933 -0700 -@@ -837,7 +837,6 @@ +--- rustc-1.48.0-src/Cargo.lock.orig 2020-11-16 09:36:19.889728111 -0800 ++++ rustc-1.48.0-src/Cargo.lock 2020-11-16 09:36:19.890728089 -0800 +@@ -849,7 +849,6 @@ dependencies = [ "cc", "libc", @@ -8,7 +8,7 @@ "libz-sys", "openssl-sys", "pkg-config", -@@ -1642,16 +1641,6 @@ +@@ -1682,16 +1681,6 @@ ] [[package]] @@ -23,10 +23,10 @@ - -[[package]] name = "libz-sys" - version = "1.0.27" + version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" ---- rustc-1.47.0-src/src/tools/cargo/Cargo.toml.orig 2020-10-07 01:04:03.000000000 -0700 -+++ rustc-1.47.0-src/src/tools/cargo/Cargo.toml 2020-10-08 12:22:17.830034534 -0700 +--- rustc-1.48.0-src/src/tools/cargo/Cargo.toml.orig 2020-11-16 06:02:09.000000000 -0800 ++++ rustc-1.48.0-src/src/tools/cargo/Cargo.toml 2020-11-16 09:36:19.890728089 -0800 @@ -25,7 +25,7 @@ crates-io = { path = "crates/crates-io", version = "0.31.1" } crossbeam-utils = "0.7" @@ -36,8 +36,8 @@ curl-sys = "0.4.22" env_logger = "0.7.0" pretty_env_logger = { version = "0.4", optional = true } ---- rustc-1.47.0-src/src/tools/cargo/src/cargo/core/package.rs.orig 2020-10-07 01:04:03.000000000 -0700 -+++ rustc-1.47.0-src/src/tools/cargo/src/cargo/core/package.rs 2020-10-08 12:23:11.246884961 -0700 +--- rustc-1.48.0-src/src/tools/cargo/src/cargo/core/package.rs.orig 2020-11-16 06:02:09.000000000 -0800 ++++ rustc-1.48.0-src/src/tools/cargo/src/cargo/core/package.rs 2020-11-16 09:36:19.890728089 -0800 @@ -396,14 +396,8 @@ // Also note that pipelining is disabled as curl authors have indicated // that it's buggy, and we've empirically seen that it's buggy with HTTP diff --git a/rustc-1.47.0-disable-libssh2.patch b/rustc-1.48.0-disable-libssh2.patch similarity index 58% rename from rustc-1.47.0-disable-libssh2.patch rename to rustc-1.48.0-disable-libssh2.patch index 5a03b13..6916e74 100644 --- a/rustc-1.47.0-disable-libssh2.patch +++ b/rustc-1.48.0-disable-libssh2.patch @@ -1,6 +1,6 @@ ---- rustc-1.47.0-src/Cargo.lock.orig 2020-10-07 00:53:22.000000000 -0700 -+++ rustc-1.47.0-src/Cargo.lock 2020-10-08 12:15:07.361298619 -0700 -@@ -1636,7 +1636,6 @@ +--- rustc-1.48.0-src/Cargo.lock.orig 2020-11-16 06:01:53.000000000 -0800 ++++ rustc-1.48.0-src/Cargo.lock 2020-11-16 09:27:44.425104404 -0800 +@@ -1676,7 +1676,6 @@ dependencies = [ "cc", "libc", @@ -8,14 +8,14 @@ "libz-sys", "openssl-sys", "pkg-config", -@@ -1653,20 +1652,6 @@ +@@ -1693,20 +1692,6 @@ ] [[package]] -name = "libssh2-sys" --version = "0.2.18" +-version = "0.2.19" -source = "registry+https://github.com/rust-lang/crates.io-index" --checksum = "eafa907407504b0e683786d4aba47acf250f114d37357d56608333fd167dd0fc" +-checksum = "ca46220853ba1c512fc82826d0834d87b06bcd3c2a42241b7de72f3d2fe17056" -dependencies = [ - "cc", - "libc", @@ -27,10 +27,10 @@ - -[[package]] name = "libz-sys" - version = "1.0.27" + version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" ---- rustc-1.47.0-src/vendor/git2/Cargo.toml.orig 2020-10-07 02:33:31.000000000 -0700 -+++ rustc-1.47.0-src/vendor/git2/Cargo.toml 2020-10-08 12:13:37.697228272 -0700 +--- rustc-1.48.0-src/vendor/git2/Cargo.toml.orig 2020-11-16 06:27:49.000000000 -0800 ++++ rustc-1.48.0-src/vendor/git2/Cargo.toml 2020-11-16 09:27:44.425104404 -0800 @@ -49,7 +49,7 @@ version = "0.1.39" diff --git a/rustc-1.45.0-no-default-pie.patch b/rustc-1.48.0-no-default-pie.patch similarity index 79% rename from rustc-1.45.0-no-default-pie.patch rename to rustc-1.48.0-no-default-pie.patch index 726df24..bb6b3d1 100644 --- a/rustc-1.45.0-no-default-pie.patch +++ b/rustc-1.48.0-no-default-pie.patch @@ -1,8 +1,6 @@ -diff --git a/src/librustc_codegen_ssa/back/link.rs b/src/librustc_codegen_ssa/back/link.rs -index dcce1d45298c..5c11f7276f26 100644 ---- a/src/librustc_codegen_ssa/back/link.rs -+++ b/src/librustc_codegen_ssa/back/link.rs -@@ -1184,10 +1184,12 @@ fn exec_linker( +--- rustc-1.48.0-src/compiler/rustc_codegen_ssa/src/back/link.rs.orig 2020-11-16 06:01:53.000000000 -0800 ++++ rustc-1.48.0-src/compiler/rustc_codegen_ssa/src/back/link.rs 2020-11-16 09:37:15.779516797 -0800 +@@ -1185,10 +1185,12 @@ } fn link_output_kind(sess: &Session, crate_type: CrateType) -> LinkOutputKind { diff --git a/sources b/sources index 748da43..eb048bc 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (rustc-1.47.0-src.tar.xz) = 6ba83c0158f8130ddeae7e070417a2121d8a548c8fe97e28bce116d84048636c75aaee78e0c92cd43a50f5679a1223fc226cc8c5ba9bbd1465e84c5c6034d5c9 +SHA512 (rustc-1.48.0-src.tar.xz) = 4e12baa6893238a8d336ec9ebe891477d18676f271b32763474fa7a6a8b58fb3187dd4e2aa95bce482989b692cc2e1360221669d6811eec71b326f22a1756c23 diff --git a/sources-bootstrap b/sources-bootstrap index 2e17a5a..bdfa9f7 100644 --- a/sources-bootstrap +++ b/sources-bootstrap @@ -1,8 +1,8 @@ -SHA512 (rustc-1.47.0-src.tar.xz) = 6ba83c0158f8130ddeae7e070417a2121d8a548c8fe97e28bce116d84048636c75aaee78e0c92cd43a50f5679a1223fc226cc8c5ba9bbd1465e84c5c6034d5c9 -SHA512 (rust-1.46.0-aarch64-unknown-linux-gnu.tar.xz) = 53e5d8afadaa9505286dce4acbb911126d17bc7bf45ea4685070ff07be7f6c7860e543a7686eeac695e7e3e127ca38ba2f09b73467fbf5f92d0b2195467c51f2 -SHA512 (rust-1.46.0-armv7-unknown-linux-gnueabihf.tar.xz) = c7e320fd5169c99bf8a12fb5bf1c5fb19a05d14f75ce655e4b64cad3456594ef09be1da7ac34a09b5d84da0c857d1a6e5a0695b5ff04cda491ea92fea15d28dc -SHA512 (rust-1.46.0-i686-unknown-linux-gnu.tar.xz) = b01e9b06c9de50e43bc6b5e1a5e6cc49dab1cf28b9cf0a8b974d2630c7ed4c6a5df6f321c872e11eb622c42f1d8cfaec77c1b67254a84365464fe3415acfa07f -SHA512 (rust-1.46.0-powerpc64le-unknown-linux-gnu.tar.xz) = 986f0bf7995f35836b73fb7045cf43ae5efe0c2543c75c66cdcc0f8c1dd3513def3c291e021241e328142deaca690ce113526ffc870c4412a7841f244258a43e -SHA512 (rust-1.46.0-powerpc64-unknown-linux-gnu.tar.xz) = 40f9423d838cab74b9920372e728c4ca7057005d83af587387dd2b164a0bf93de65cebc035320bce25f80914c63ce65b84218b9a776b0b905428e4cba0821b8b -SHA512 (rust-1.46.0-s390x-unknown-linux-gnu.tar.xz) = b6146695225ff6d0516e7bb6bc4620599356bb89b14f429a09d9d7f8715a94e8e218402346d5c9a10eeb54c0bdc40fb179289216b0cb4edd5bdf886f6b69aab4 -SHA512 (rust-1.46.0-x86_64-unknown-linux-gnu.tar.xz) = 95f5adc2d2137010c7e5ac8a0fc70485250b4f9a909cb8b164b35fffff76ab88e9b09d305bfac37324ed080c5fc7643001d2abec5454ca911dc3513f1af52c88 +SHA512 (rustc-1.48.0-src.tar.xz) = 4e12baa6893238a8d336ec9ebe891477d18676f271b32763474fa7a6a8b58fb3187dd4e2aa95bce482989b692cc2e1360221669d6811eec71b326f22a1756c23 +SHA512 (rust-1.47.0-aarch64-unknown-linux-gnu.tar.xz) = 7df7045df341f03508f1ad795a9117b39c1f4c4cc778c7fd9d78c42e7da662ce244d018084ac9e80d9409cf8b3b5d1ccc25ef4cb71a2b8727398d30a4e962e19 +SHA512 (rust-1.47.0-armv7-unknown-linux-gnueabihf.tar.xz) = b207ab7c478dce6db4018527888f539938c8e77b5ceccb460b9d52ffee13a2329d225d03a605b60729cae6254129245bdd69730aebb6ec91dd0c83005cf25253 +SHA512 (rust-1.47.0-i686-unknown-linux-gnu.tar.xz) = 551204b4edfc1500aa83108c88b845997bb6befba0dd3401e9ae5294ab27960421f1b3130159946b996171c1d46f7532afa0c3ae767a9318985db0bb7c88dba0 +SHA512 (rust-1.47.0-powerpc64le-unknown-linux-gnu.tar.xz) = d5c6580861786545f0540cc9591884fb9f2036061bdd451d17cf8bfb427008d365cacd14e5054028c72b83d1d5eb347ab74478a882cbbd7fcc75a7421657561c +SHA512 (rust-1.47.0-powerpc64-unknown-linux-gnu.tar.xz) = 46fa1c042aebb06db4185fed6ef3bc7772f2a13f2290a20f5499757aae2a05dc984026315be7b5813aac172f52f50565e56aa074d32f6271858590a9ceb9e1c7 +SHA512 (rust-1.47.0-s390x-unknown-linux-gnu.tar.xz) = dd5877b6ff5c310ca6aa23c1cc621e6b0675d4c46f5a06b2a0b107641b604a1a2101109ba8e286267bab1158768c601d5d9a922a8da72486c91755ef465720c0 +SHA512 (rust-1.47.0-x86_64-unknown-linux-gnu.tar.xz) = f695986ab8e67636b0e92ca7ea223984121e3c22788434a6f1062690e7932f6b30c0c302160fef96831f821acedaf8a909bd3d00a9aa873c7200d2b8fa39013f