The package rpms/rust.git has added or updated architecture specific content in its spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s): https://src.fedoraproject.org/cgit/rpms/rust.git/commit/?id=ebd24b39176265e2... https://src.fedoraproject.org/cgit/rpms/rust.git/commit/?id=fa5bf8c5987d0853....
Change: +%ifarch x86_64 -%ifnarch %{power64}
Thanks.
Full change: ============
commit 1cf4ed42e3fe9c4f91ede76ed86dd5993db3b402 Merge: d498bc1 078a692 Author: Josh Stone jistone@redhat.com Date: Thu Jun 17 11:10:32 2021 -0700
Merge branch 'f34' into rawhide
diff --cc rust.spec index c2eaf66,2f4f48a..2ef33e0 --- a/rust.spec +++ b/rust.spec @@@ -181,13 -169,8 +181,8 @@@ Provides: bundled(llvm) = 12.0. %else BuildRequires: cmake >= 2.8.11 %if 0%{?epel} == 7 -%global llvm llvm9.0 +%global llvm llvm11.0 %endif - %if 0%{?fedora} == 34 - # aarch64 is hanging with LLVM 12-rc1, but it's fine with 12-final on rawhide. - # Fall back to LLVM 11 on f34 for now... - %global llvm llvm11 - %endif %if %defined llvm %global llvm_root %{_libdir}/%{llvm} %else @@@ -809,12 -732,8 +804,13 @@@ end
%changelog -* Fri May 14 2021 Josh Stone jistone@redhat.com - 1.52.1-2 +* Thu Jun 17 2021 Josh Stone jistone@redhat.com - 1.53.0-1 +- Update to 1.53.0. + +* Wed Jun 02 2021 Josh Stone jistone@redhat.com - 1.52.1-2 +- Set rust.codegen-units-std=1 for all targets again. +- Add rust-std-static-wasm32-unknown-unknown. + - Rebuild f34 with LLVM 12.
* Mon May 10 2021 Josh Stone jistone@redhat.com - 1.52.1-1 - Update to 1.52.1.
commit d498bc15d8366cb20ef33c6a8ad2fb797bc6ecd0 Author: Josh Stone jistone@redhat.com Date: Thu Jun 17 10:45:34 2021 -0700
Update to 1.53.0.
diff --git a/.gitignore b/.gitignore index 98a8066..dec69a4 100644 --- a/.gitignore +++ b/.gitignore @@ -343,3 +343,10 @@ /rust-1.51.0-s390x-unknown-linux-gnu.tar.xz /rust-1.51.0-x86_64-unknown-linux-gnu.tar.xz /rustc-1.52.1-src.tar.xz +/rustc-1.53.0-src.tar.xz +/rust-1.52.0-aarch64-unknown-linux-gnu.tar.xz +/rust-1.52.0-armv7-unknown-linux-gnueabihf.tar.xz +/rust-1.52.0-i686-unknown-linux-gnu.tar.xz +/rust-1.52.0-powerpc64le-unknown-linux-gnu.tar.xz +/rust-1.52.0-s390x-unknown-linux-gnu.tar.xz +/rust-1.52.0-x86_64-unknown-linux-gnu.tar.xz diff --git a/0001-Use-lld-provided-by-system-for-wasm.patch b/0001-Use-lld-provided-by-system-for-wasm.patch index ff126cc..4dcb322 100644 --- a/0001-Use-lld-provided-by-system-for-wasm.patch +++ b/0001-Use-lld-provided-by-system-for-wasm.patch @@ -1,17 +1,17 @@ -From 1a6307bbf7972aa2ce89a213bad6f26b6325a59c Mon Sep 17 00:00:00 2001 +From 3582a262d27fd5a2f8705bad6018241eaca8aadd Mon Sep 17 00:00:00 2001 From: Ivan Mironov mironov.ivan@gmail.com Date: Sun, 8 Dec 2019 17:23:08 +0500 Subject: [PATCH] Use lld provided by system for wasm
--- - compiler/rustc_target/src/spec/wasm32_base.rs | 3 +-- + compiler/rustc_target/src/spec/wasm_base.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
-diff --git a/compiler/rustc_target/src/spec/wasm32_base.rs b/compiler/rustc_target/src/spec/wasm32_base.rs -index bfef3d37228f..0ecb29248fe2 100644 ---- a/compiler/rustc_target/src/spec/wasm32_base.rs -+++ b/compiler/rustc_target/src/spec/wasm32_base.rs -@@ -97,8 +97,7 @@ pub fn options() -> TargetOptions { +diff --git a/compiler/rustc_target/src/spec/wasm_base.rs b/compiler/rustc_target/src/spec/wasm_base.rs +index b208eb92f8ff..94a701a11c8b 100644 +--- a/compiler/rustc_target/src/spec/wasm_base.rs ++++ b/compiler/rustc_target/src/spec/wasm_base.rs +@@ -98,8 +98,7 @@ pub fn options() -> TargetOptions { // arguments just yet limit_rdylib_exports: false,
diff --git a/rust.spec b/rust.spec index b508e36..c2eaf66 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.51.0 -%global bootstrap_cargo 1.51.0 -%global bootstrap_channel 1.51.0 -%global bootstrap_date 2021-03-25 +%global bootstrap_rust 1.52.0 +%global bootstrap_cargo 1.52.0 +%global bootstrap_channel 1.52.0 +%global bootstrap_date 2021-05-06
# Only the specified arches will use bootstrap binaries. #global bootstrap_arches %%{rust_arches} @@ -30,7 +30,7 @@ %bcond_with llvm_static
# We can also choose to just use Rust's bundled LLVM, in case the system LLVM -# is insufficient. Rust currently requires LLVM 9.0+. +# is insufficient. Rust currently requires LLVM 10.0+. %bcond_with bundled_llvm
# Requires stable libgit2 1.1 @@ -61,8 +61,8 @@ %endif
Name: rust -Version: 1.52.1 -Release: 2%{?dist} +Version: 1.53.0 +Release: 1%{?dist} Summary: The Rust Programming Language License: (ASL 2.0 or MIT) and (BSD and MIT) # ^ written as: (rust itself) and (bundled libraries) @@ -90,7 +90,7 @@ 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.51.0-disable-http2.patch +Patch101: rustc-1.53.0-disable-http2.patch
# kernel rh1410097 causes too-small stacks for PIE. # (affects RHEL6 kernels when building for RHEL7) @@ -181,7 +181,7 @@ Provides: bundled(llvm) = 12.0.0 %else BuildRequires: cmake >= 2.8.11 %if 0%{?epel} == 7 -%global llvm llvm9.0 +%global llvm llvm11.0 %endif %if 0%{?fedora} == 34 # aarch64 is hanging with LLVM 12-rc1, but it's fine with 12-final on rawhide. @@ -194,7 +194,7 @@ BuildRequires: cmake >= 2.8.11 %global llvm llvm %global llvm_root %{_prefix} %endif -BuildRequires: %{llvm}-devel >= 9.0 +BuildRequires: %{llvm}-devel >= 10.0 %if %with llvm_static BuildRequires: %{llvm}-static BuildRequires: libffi-devel @@ -809,6 +809,9 @@ end}
%changelog +* Thu Jun 17 2021 Josh Stone jistone@redhat.com - 1.53.0-1 +- Update to 1.53.0. + * Wed Jun 02 2021 Josh Stone jistone@redhat.com - 1.52.1-2 - Set rust.codegen-units-std=1 for all targets again. - Add rust-std-static-wasm32-unknown-unknown. diff --git a/rustc-1.51.0-disable-http2.patch b/rustc-1.53.0-disable-http2.patch similarity index 72% rename from rustc-1.51.0-disable-http2.patch rename to rustc-1.53.0-disable-http2.patch index 2517a34..94040b3 100644 --- a/rustc-1.51.0-disable-http2.patch +++ b/rustc-1.53.0-disable-http2.patch @@ -1,6 +1,6 @@ ---- rustc-beta-src/Cargo.lock.orig 2021-03-09 10:30:08.626424998 -0800 -+++ rustc-beta-src/Cargo.lock 2021-03-09 10:32:38.096207704 -0800 -@@ -899,7 +899,6 @@ +--- rustc-beta-src/Cargo.lock.orig 2021-06-04 15:56:04.141227630 -0700 ++++ rustc-beta-src/Cargo.lock 2021-06-04 16:03:04.461396826 -0700 +@@ -885,7 +885,6 @@ dependencies = [ "cc", "libc", @@ -8,8 +8,8 @@ "libz-sys", "openssl-sys", "pkg-config", -@@ -1860,16 +1859,6 @@ - ] +@@ -1904,16 +1903,6 @@ + checksum = "7fc7aa29613bd6a620df431842069224d8bc9011086b1db4c0e0cd47fa03ec9a"
[[package]] -name = "libnghttp2-sys" @@ -25,20 +25,20 @@ name = "libz-sys" version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" ---- rustc-beta-src/src/tools/cargo/Cargo.toml.orig 2021-03-05 08:34:15.000000000 -0800 -+++ rustc-beta-src/src/tools/cargo/Cargo.toml 2021-03-09 10:32:38.096207704 -0800 +--- rustc-beta-src/src/tools/cargo/Cargo.toml.orig 2021-06-04 15:56:04.143227587 -0700 ++++ rustc-beta-src/src/tools/cargo/Cargo.toml 2021-06-04 15:57:56.931857927 -0700 @@ -25,7 +25,7 @@ + cargo-util = { path = "crates/cargo-util", version = "0.1.0" } crates-io = { path = "crates/crates-io", version = "0.33.0" } crossbeam-utils = "0.8" - crypto-hash = "0.3.1" -curl = { version = "0.4.23", features = ["http2"] } +curl = { version = "0.4.23", features = [] } curl-sys = "0.4.22" env_logger = "0.8.1" pretty_env_logger = { version = "0.4", optional = true } ---- rustc-beta-src/src/tools/cargo/src/cargo/core/package.rs.orig 2021-03-05 08:34:15.000000000 -0800 -+++ rustc-beta-src/src/tools/cargo/src/cargo/core/package.rs 2021-03-09 10:32:38.096207704 -0800 -@@ -412,14 +412,8 @@ +--- rustc-beta-src/src/tools/cargo/src/cargo/core/package.rs.orig 2021-05-22 15:22:31.000000000 -0700 ++++ rustc-beta-src/src/tools/cargo/src/cargo/core/package.rs 2021-06-04 16:00:03.903190293 -0700 +@@ -416,14 +416,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 // proxies. @@ -46,7 +46,7 @@ - let multiplexing = config.http_config()?.multiplexing.unwrap_or(true); - multi - .pipelining(false, multiplexing) -- .chain_err(|| "failed to enable multiplexing/pipelining in curl")?; +- .with_context(|| "failed to enable multiplexing/pipelining in curl")?; - - // let's not flood crates.io with connections - multi.set_max_host_connections(2)?; @@ -55,7 +55,7 @@
Ok(PackageSet { packages: package_ids -@@ -592,7 +586,7 @@ +@@ -596,7 +590,7 @@ macro_rules! try_old_curl { ($e:expr, $msg:expr) => { let result = $e; diff --git a/sources b/sources index 0ec5511..0df131d 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (rustc-1.52.1-src.tar.xz) = 55f5053ce40d4eba4663052817aef6a6275139ca229c89cd1ec44711458b412720203301d8c7975aac5720a91fcaf21847f8184f641cbb0004f722520283c73c +SHA512 (rustc-1.53.0-src.tar.xz) = 70485cf7a0f7fc36ee31644e546374079dc387a85b44e5e793707fd0a4d7ca05d311291e78b86db955485d8f21c47ff9e1908acc4da68ba04929287213a40c24 diff --git a/sources-bootstrap b/sources-bootstrap index cc52865..0f64443 100644 --- a/sources-bootstrap +++ b/sources-bootstrap @@ -1,7 +1,7 @@ -SHA512 (rustc-1.52.1-src.tar.xz) = 55f5053ce40d4eba4663052817aef6a6275139ca229c89cd1ec44711458b412720203301d8c7975aac5720a91fcaf21847f8184f641cbb0004f722520283c73c -SHA512 (rust-1.51.0-aarch64-unknown-linux-gnu.tar.xz) = 2af31290e1065a4611f34e6cc8c62ee494c222becfb21ec6707059c119069b0adf0eec23e56bad4a3cc8690b2556309ec58cbd9003a959983689cc46c7c63361 -SHA512 (rust-1.51.0-armv7-unknown-linux-gnueabihf.tar.xz) = c602dcc7fd1343b310f5e3074bf63f2428ca7c15cdce8999fa4655de5a4bda5a13255fc12bee3d0632f6cb93220a883fb36d24061dca6795d23afa9f8fdae57f -SHA512 (rust-1.51.0-i686-unknown-linux-gnu.tar.xz) = 05d08e44827dcba8197667deb9a7f3584465085ce1b79a38deb138849a07c716646a70f1cc2cee02b41c45ec7c3a3b7800a3fae62ebe04d6f72f017a5d722bab -SHA512 (rust-1.51.0-powerpc64le-unknown-linux-gnu.tar.xz) = b53a741d1d75637fb31ddb0364e1f91427c3818ca145f819b906d13c32c638ae77fbaa567a6220b6bf69f38cc00d2b95615778a86f4acadd63efe2e62b1b01ef -SHA512 (rust-1.51.0-s390x-unknown-linux-gnu.tar.xz) = a72ad31c6306f939c4f963133ddc0b3fabc9e506bdff5e318f5275658b7271a675a51d208d306d94fb01739cbcf0f62f018fc7490ca6db54b301852202749d16 -SHA512 (rust-1.51.0-x86_64-unknown-linux-gnu.tar.xz) = 9f95045119bcd5ef7be54f5b5bdc9ebc6bd6c48437d90762a1cfbc03281882f81087e1877eecae9573ba5e7cd7c11ef5fed979034c57f45b6547cbfeb11eef6d +SHA512 (rustc-1.53.0-src.tar.xz) = 70485cf7a0f7fc36ee31644e546374079dc387a85b44e5e793707fd0a4d7ca05d311291e78b86db955485d8f21c47ff9e1908acc4da68ba04929287213a40c24 +SHA512 (rust-1.52.0-aarch64-unknown-linux-gnu.tar.xz) = 7a26e14be6b27c7084c7c85b312341ab991c2df91ea53128f14707a4c725dd03ba7df30b9e9fcef39a509ab4f5d5feb028b99d6d9ffcc059996ed29b83eb90b9 +SHA512 (rust-1.52.0-armv7-unknown-linux-gnueabihf.tar.xz) = 100b9abdc3dc7852f880eea205056a7a6b78af39fc3b7019ebcac712d5eee3c053f0508a6dc1f9da13074ca476e9fb33514bb83098d3b41964e878c0fc6498d4 +SHA512 (rust-1.52.0-i686-unknown-linux-gnu.tar.xz) = 10fcf9e891ae8bc6e83b5e71c83b34773c18b024c9e9b580cfae714b4e135d313ba5434fc28c2dffa3db2e50669b3acd07e6874de0cfab89b343db92bfbdff80 +SHA512 (rust-1.52.0-powerpc64le-unknown-linux-gnu.tar.xz) = 916a3338c850cf804535e25aebc0fdcf6cea8fe9e5df9fed11fbf03ae81fb8220321dc41edd7133f287dfee0dbf19730ff8b020f32322850329865db76bab95e +SHA512 (rust-1.52.0-s390x-unknown-linux-gnu.tar.xz) = 6a91adf7c1947b63db0bf02b4aa4a36fbbfcc5b40d9c18175e4c5efe785b8a17ff21a887476cf76f7e3d3854f2cc362b5d2dc8243493291a4d19a705276e6355 +SHA512 (rust-1.52.0-x86_64-unknown-linux-gnu.tar.xz) = 27a8db421ae62af92e2c34dcc1fdd617bf7e8de2c68205773a3037be496ccbf21f5549dd18377a9730102e7915519824231218fef9a09abe9d116441d6ce28d2
commit ebd24b39176265e2d001250dc279293a23b6a79c Author: Josh Stone jistone@redhat.com Date: Wed Jun 2 15:27:34 2021 -0700
Add rust-std-static-wasm32-unknown-unknown.
This change is partly based on an older pull request: https://src.fedoraproject.org/rpms/rust/pull-request/6
Co-authored-by: Ivan Mironov mironov.ivan@gmail.com
diff --git a/0001-Use-lld-provided-by-system-for-wasm.patch b/0001-Use-lld-provided-by-system-for-wasm.patch new file mode 100644 index 0000000..ff126cc --- /dev/null +++ b/0001-Use-lld-provided-by-system-for-wasm.patch @@ -0,0 +1,26 @@ +From 1a6307bbf7972aa2ce89a213bad6f26b6325a59c Mon Sep 17 00:00:00 2001 +From: Ivan Mironov mironov.ivan@gmail.com +Date: Sun, 8 Dec 2019 17:23:08 +0500 +Subject: [PATCH] Use lld provided by system for wasm + +--- + compiler/rustc_target/src/spec/wasm32_base.rs | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/compiler/rustc_target/src/spec/wasm32_base.rs b/compiler/rustc_target/src/spec/wasm32_base.rs +index bfef3d37228f..0ecb29248fe2 100644 +--- a/compiler/rustc_target/src/spec/wasm32_base.rs ++++ b/compiler/rustc_target/src/spec/wasm32_base.rs +@@ -97,8 +97,7 @@ pub fn options() -> TargetOptions { + // arguments just yet + limit_rdylib_exports: false, + +- // we use the LLD shipped with the Rust toolchain by default +- linker: Some("rust-lld".to_owned()), ++ linker: Some("lld".to_owned()), + lld_flavor: LldFlavor::Wasm, + + // No need for indirection here, simd types can always be passed by +-- +2.31.1 + diff --git a/rust.spec b/rust.spec index a084245..b508e36 100644 --- a/rust.spec +++ b/rust.spec @@ -17,6 +17,15 @@ # Only the specified arches will use bootstrap binaries. #global bootstrap_arches %%{rust_arches}
+# Define a space-separated list of targets to ship rust-std-static-$triple for +# cross-compilation. The packages are noarch, but they're not fully +# reproducible between hosts, so only x86_64 actually builds it. +%ifarch x86_64 +%if 0%{?fedora} +%global cross_targets wasm32-unknown-unknown +%endif +%endif + # Using llvm-static may be helpful as an opt-in, e.g. to aid LLVM rebases. %bcond_with llvm_static
@@ -71,6 +80,9 @@ Source0: https://static.rust-lang.org/dist/%%7Brustc_package%7D.tar.xz # https://github.com/rust-lang/rust/issues/80810#issuecomment-781784032 Patch1: 0001-Revert-Auto-merge-of-79547.patch
+# By default, rust tries to use "rust-lld" as a linker for WebAssembly. +Patch2: 0001-Use-lld-provided-by-system-for-wasm.patch + ### RHEL-specific patches below ###
# Disable cargo->libgit2->libssh2 on RHEL, as it's not approved for FIPS (rhbz1732949) @@ -235,6 +247,19 @@ Requires: /usr/bin/cc %endif %endif
+# We're going to override --libdir when configuring to get rustlib into a +# common path, but we'll fix the shared libraries during install. +%global common_libdir %{_prefix}/lib +%global rustlibdir %{common_libdir}/rustlib + +%if %defined cross_targets +# brp-strip-static-archive breaks the archive index for wasm +%global __os_install_post \ +%__os_install_post \ +find %{buildroot}%{rustlibdir} -type f -path '*/wasm*/lib/*.rlib' -exec ranlib '{}' ';' \ +%{nil} +%endif + %description Rust is a systems programming language that runs blazingly fast, prevents segfaults, and guarantees thread safety. @@ -249,6 +274,32 @@ Summary: Standard library for Rust This package includes the standard libraries for building applications written in Rust.
+%if %defined cross_targets +%{lua: do + for triple in string.gmatch(rpm.expand("%{cross_targets}"), "%S+") do + local requires = rpm.expand("Requires: rust = %{version}-%{release}") + if string.sub(triple, 1, 4) == "wasm" then + requires = requires .. "\nRequires: lld >= 8.0" + end + local subs = { + triple = triple, + requires = requires, + } + local s = string.gsub([[ +%package std-static-{{triple}} +Summary: Standard library for Rust +BuildArch: noarch +{{requires}} + +%description std-static-{{triple}} +This package includes the standard libraries for building applications +written in Rust for the {{triple}} target. +]], "{{(%w+)}}", subs) + print(s) + end +end} +%endif +
%package debugger-common Summary: Common debugger pretty printers for Rust @@ -406,6 +457,7 @@ test -f '%{local_rust_root}/bin/rustc' %setup -q -n %{rustc_package}
%patch1 -p1 +%patch2 -p1
%if %with disabled_libssh2 %patch100 -p1 @@ -491,11 +543,6 @@ find -name '*.rs' -type f -perm /111 -exec chmod -v -x '{}' '+' %build export %{rust_env}
-# We're going to override --libdir when configuring to get rustlib into a -# common path, but we'll fix the shared libraries during install. -%global common_libdir %{_prefix}/lib -%global rustlibdir %{common_libdir}/rustlib - %ifarch %{arm} %{ix86} s390x # full debuginfo is exhausting memory; just do libstd for now # https://github.com/rust-lang/rust/issues/45854 @@ -540,12 +587,23 @@ fi %{python} ./x.py build -j "$ncpus" --stage 2 %{python} ./x.py doc --stage 2
+%if %defined cross_targets +for triple in %{cross_targets}; do + %{python} ./x.py build --stage 2 --target=$triple std +done +%endif
%install export %{rust_env}
DESTDIR=%{buildroot} %{python} ./x.py install
+%if %defined cross_targets +for triple in %{cross_targets}; do + DESTDIR=%{buildroot} %{python} ./x.py install --target=$triple std +done +%endif + # Make sure the shared libraries are in the proper libdir %if "%{_libdir}" != "%{common_libdir}" mkdir -p %{buildroot}%{_libdir} @@ -648,6 +706,26 @@ export %{rust_env} %{rustlibdir}/%{rust_triple}/lib/*.rlib
+%if %defined cross_targets +%{lua: do + for triple in string.gmatch(rpm.expand("%{cross_targets}"), "%S+") do + local subs = { + triple = triple, + rustlibdir = rpm.expand("%{rustlibdir}"), + } + local s = string.gsub([[ +%files std-static-{{triple}} +%dir {{rustlibdir}} +%dir {{rustlibdir}}/{{triple}} +%dir {{rustlibdir}}/{{triple}}/lib +{{rustlibdir}}/{{triple}}/lib/*.rlib +]], "{{(%w+)}}", subs) + print(s) + end +end} +%endif + + %files debugger-common %dir %{rustlibdir} %dir %{rustlibdir}/etc @@ -733,6 +811,7 @@ export %{rust_env} %changelog * Wed Jun 02 2021 Josh Stone jistone@redhat.com - 1.52.1-2 - Set rust.codegen-units-std=1 for all targets again. +- Add rust-std-static-wasm32-unknown-unknown.
* Mon May 10 2021 Josh Stone jistone@redhat.com - 1.52.1-1 - Update to 1.52.1.
commit fa5bf8c5987d08539e2d8b27ab7f1ebda798ab0b Author: Josh Stone jistone@redhat.com Date: Wed Jun 2 15:27:05 2021 -0700
Set rust.codegen-units-std=1 for all targets again.
diff --git a/rust.spec b/rust.spec index 2886605..a084245 100644 --- a/rust.spec +++ b/rust.spec @@ -53,7 +53,7 @@
Name: rust Version: 1.52.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: The Rust Programming Language License: (ASL 2.0 or MIT) and (BSD and MIT) # ^ written as: (rust itself) and (bundled libraries) @@ -510,13 +510,6 @@ export %{rust_env} %define enable_debuginfo --debuginfo-level=2 %endif
-# We want the best optimization for std, but it caused problems for rpm-ostree -# on ppc64le to have all of the compiler_builtins in a single object: -# https://bugzilla.redhat.com/show_bug.cgi?id=1713090 -%ifnarch %{power64} -%define codegen_units_std --set rust.codegen-units-std=1 -%endif - # Some builders have relatively little memory for their CPU count. # At least 2GB per CPU is a good rule of thumb for building rustc. ncpus=$(/usr/bin/getconf _NPROCESSORS_ONLN) @@ -535,6 +528,7 @@ fi %{!?with_llvm_static: --enable-llvm-link-shared } } \ --disable-rpath \ %{enable_debuginfo} \ + --set rust.codegen-units-std=1 \ --enable-extended \ --tools=analysis,cargo,clippy,rls,rustfmt,src \ --enable-vendor \ @@ -737,6 +731,9 @@ export %{rust_env}
%changelog +* Wed Jun 02 2021 Josh Stone jistone@redhat.com - 1.52.1-2 +- Set rust.codegen-units-std=1 for all targets again. + * Mon May 10 2021 Josh Stone jistone@redhat.com - 1.52.1-1 - Update to 1.52.1.
commit 078a6925f5f5a7c9e916c41c33e8457e8ac257af Author: Josh Stone jistone@redhat.com Date: Fri May 14 12:49:12 2021 -0700
Rebuild f34 with LLVM 12.
diff --git a/rust.spec b/rust.spec index 2886605..2f4f48a 100644 --- a/rust.spec +++ b/rust.spec @@ -53,7 +53,7 @@
Name: rust Version: 1.52.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: The Rust Programming Language License: (ASL 2.0 or MIT) and (BSD and MIT) # ^ written as: (rust itself) and (bundled libraries) @@ -171,11 +171,6 @@ BuildRequires: cmake >= 2.8.11 %if 0%{?epel} == 7 %global llvm llvm9.0 %endif -%if 0%{?fedora} == 34 -# aarch64 is hanging with LLVM 12-rc1, but it's fine with 12-final on rawhide. -# Fall back to LLVM 11 on f34 for now... -%global llvm llvm11 -%endif %if %defined llvm %global llvm_root %{_libdir}/%{llvm} %else @@ -737,6 +732,9 @@ export %{rust_env}
%changelog +* Fri May 14 2021 Josh Stone jistone@redhat.com - 1.52.1-2 +- Rebuild f34 with LLVM 12. + * Mon May 10 2021 Josh Stone jistone@redhat.com - 1.52.1-1 - Update to 1.52.1.