Add build target for aarch64-unknown-none-softfloat

This commit is contained in:
Davide Cavalca 2023-12-11 20:22:45 -08:00
parent 15b7bb28e4
commit e0c61d2262
2 changed files with 29 additions and 1 deletions

View File

@ -48,6 +48,18 @@ index 5abfb8162f70..13cb43bda1a4 100644
// We disable MMX and SSE for now, even though UEFI allows using them. Problem is, you have to
// enable these CPU features explicitly before their first use, otherwise their instructions
diff -Naur a/compiler/rustc_target/src/spec/targets/aarch64_unknown_none_softfloat.rs b/compiler/rustc_target/src/spec/targets/aarch64_unknown_none_softfloat.rs
--- a/compiler/rustc_target/src/spec/targets/aarch64_unknown_none_softfloat.rs 2024-03-17 12:03:00.000000000 -0700
+++ b/compiler/rustc_target/src/spec/targets/aarch64_unknown_none_softfloat.rs 2024-03-22 10:02:17.742806274 -0700
@@ -14,7 +14,7 @@
let opts = TargetOptions {
abi: "softfloat".into(),
linker_flavor: LinkerFlavor::Gnu(Cc::No, Lld::Yes),
- linker: Some("rust-lld".into()),
+ linker: Some("lld".into()),
features: "+v8a,+strict-align,-neon,-fp-armv8".into(),
relocation_model: RelocModel::Static,
disable_redzone: true,
--
2.41.0

View File

@ -1,6 +1,6 @@
Name: rust
Version: 1.77.0
Release: 1%{?dist}
Release: 2%{?dist}
Summary: The Rust Programming Language
License: (Apache-2.0 OR MIT) AND (Artistic-2.0 AND BSD-3-Clause AND ISC AND MIT AND MPL-2.0 AND Unicode-DFS-2016)
# ^ written as: (rust itself) and (bundled libraries)
@ -37,6 +37,9 @@ ExclusiveArch: %{rust_arches}
%global extra_targets x86_64-unknown-none x86_64-unknown-uefi
%endif
%endif
%ifarch aarch64
%global extra_targets aarch64-unknown-none-softfloat
%endif
%global all_targets %{?mingw_targets} %{?wasm_targets} %{?extra_targets}
%define target_enabled() %{lua:
print(string.find(rpm.expand(" %{all_targets} "), rpm.expand(" %1 "), 1, true) or 0)
@ -415,6 +418,12 @@ Requires: lld
%target_description x86_64-unknown-uefi embedded
%endif
%if %target_enabled aarch64-unknown-none-softfloat
%target_package aarch64-unknown-none-softfloat
Requires: lld
%target_description aarch64-unknown-none-softfloat embedded
%endif
%package debugger-common
Summary: Common debugger pretty printers for Rust
@ -994,6 +1003,10 @@ rm -rf "./build/%{rust_triple}/stage2-tools/%{rust_triple}/cit/"
%target_files x86_64-unknown-uefi
%endif
%if %target_enabled aarch64-unknown-none-softfloat
%target_files aarch64-unknown-none-softfloat
%endif
%files debugger-common
%dir %{rustlibdir}
@ -1071,6 +1084,9 @@ rm -rf "./build/%{rust_triple}/stage2-tools/%{rust_triple}/cit/"
%changelog
* Thu Mar 21 2024 Davide Cavalca <dcavalca@fedoraproject.org> - 1.77.0-2
- Add build target for aarch64-unknown-none-softfloat
* Thu Mar 21 2024 Nikita Popov <npopov@redhat.com> - 1.77.0-1
- Update to 1.77.0