diff options
Diffstat (limited to 'user/rust/0018-Add-foxkit-target-specs.patch')
-rw-r--r-- | user/rust/0018-Add-foxkit-target-specs.patch | 148 |
1 files changed, 148 insertions, 0 deletions
diff --git a/user/rust/0018-Add-foxkit-target-specs.patch b/user/rust/0018-Add-foxkit-target-specs.patch new file mode 100644 index 000000000..4c57c1ab0 --- /dev/null +++ b/user/rust/0018-Add-foxkit-target-specs.patch @@ -0,0 +1,148 @@ +From 263793146d885c14796d7ad8feba6fe60e547faa Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Mon, 17 Sep 2018 02:29:06 +0000 +Subject: [PATCH 18/18] Add foxkit target specs + +--- + .../spec/aarch64_foxkit_linux_musl.rs | 11 +++++++++++ + .../spec/armv7_foxkit_linux_musleabihf.rs | 11 +++++++++++ + src/librustc_target/spec/i586_foxkit_linux_musl.rs | 13 +++++++++++++ + src/librustc_target/spec/mod.rs | 7 +++++++ + .../spec/powerpc64_foxkit_linux_musl.rs | 11 +++++++++++ + .../spec/powerpc_foxkit_linux_musl.rs | 13 +++++++++++++ + .../spec/x86_64_foxkit_linux_musl.rs | 11 +++++++++++ + 7 files changed, 77 insertions(+) + create mode 100644 src/librustc_target/spec/aarch64_foxkit_linux_musl.rs + create mode 100644 src/librustc_target/spec/armv7_foxkit_linux_musleabihf.rs + create mode 100644 src/librustc_target/spec/i586_foxkit_linux_musl.rs + create mode 100644 src/librustc_target/spec/powerpc64_foxkit_linux_musl.rs + create mode 100644 src/librustc_target/spec/powerpc_foxkit_linux_musl.rs + create mode 100644 src/librustc_target/spec/x86_64_foxkit_linux_musl.rs + +diff --git a/src/librustc_target/spec/aarch64_foxkit_linux_musl.rs b/src/librustc_target/spec/aarch64_foxkit_linux_musl.rs +new file mode 100644 +index 00000000000..9ba8bc1deb8 +--- /dev/null ++++ b/src/librustc_target/spec/aarch64_foxkit_linux_musl.rs +@@ -0,0 +1,11 @@ ++use crate::spec::TargetResult; ++ ++pub fn target() -> TargetResult { ++ let mut base = super::aarch64_unknown_linux_musl::target()?; ++ ++ base.llvm_target = "aarch64-foxkit-linux-musl".to_string(); ++ base.target_vendor = "foxkit".to_string(); ++ base.options.crt_static_default = false; ++ ++ Ok(base) ++} +diff --git a/src/librustc_target/spec/armv7_foxkit_linux_musleabihf.rs b/src/librustc_target/spec/armv7_foxkit_linux_musleabihf.rs +new file mode 100644 +index 00000000000..5a88f778968 +--- /dev/null ++++ b/src/librustc_target/spec/armv7_foxkit_linux_musleabihf.rs +@@ -0,0 +1,11 @@ ++use crate::spec::TargetResult; ++ ++pub fn target() -> TargetResult { ++ let mut base = super::armv7_unknown_linux_musleabihf::target()?; ++ ++ base.llvm_target = "armv7-foxkit-linux-musleabihf".to_string(); ++ base.target_vendor = "foxkit".to_string(); ++ base.options.crt_static_default = false; ++ ++ Ok(base) ++} +diff --git a/src/librustc_target/spec/i586_foxkit_linux_musl.rs b/src/librustc_target/spec/i586_foxkit_linux_musl.rs +new file mode 100644 +index 00000000000..f0c4ffbf580 +--- /dev/null ++++ b/src/librustc_target/spec/i586_foxkit_linux_musl.rs +@@ -0,0 +1,13 @@ ++use crate::spec::{LinkerFlavor, TargetResult}; ++ ++pub fn target() -> TargetResult { ++ let mut base = super::i586_unknown_linux_musl::target()?; ++ ++ base.llvm_target = "i586-foxkit-linux-musl".to_string(); ++ base.target_vendor = "foxkit".to_string(); ++ base.options.crt_static_default = false; ++ base.options.post_link_args.insert(LinkerFlavor::Gcc, ++ vec!["-Wl,--as-needed".to_string(), "-lssp_nonshared".to_string()]); ++ ++ Ok(base) ++} +diff --git a/src/librustc_target/spec/mod.rs b/src/librustc_target/spec/mod.rs +index ec72c00c28f..cda203f8078 100644 +--- a/src/librustc_target/spec/mod.rs ++++ b/src/librustc_target/spec/mod.rs +@@ -330,6 +330,13 @@ macro_rules! supported_targets { + } + + supported_targets! { ++ ("aarch64-foxkit-linux-musl", aarch64_foxkit_linux_musl), ++ ("armv7-foxkit-linux-musleabihf", armv7_foxkit_linux_musleabihf), ++ ("i586-foxkit-linux-musl", i586_foxkit_linux_musl), ++ ("powerpc-foxkit-linux-musl", powerpc_foxkit_linux_musl), ++ ("powerpc64-foxkit-linux-musl", powerpc64_foxkit_linux_musl), ++ ("x86_64-foxkit-linux-musl", x86_64_foxkit_linux_musl), ++ + ("x86_64-unknown-linux-gnu", x86_64_unknown_linux_gnu), + ("x86_64-unknown-linux-gnux32", x86_64_unknown_linux_gnux32), + ("i686-unknown-linux-gnu", i686_unknown_linux_gnu), +diff --git a/src/librustc_target/spec/powerpc64_foxkit_linux_musl.rs b/src/librustc_target/spec/powerpc64_foxkit_linux_musl.rs +new file mode 100644 +index 00000000000..b105aa247eb +--- /dev/null ++++ b/src/librustc_target/spec/powerpc64_foxkit_linux_musl.rs +@@ -0,0 +1,11 @@ ++use crate::spec::TargetResult; ++ ++pub fn target() -> TargetResult { ++ let mut base = super::powerpc64_unknown_linux_musl::target()?; ++ ++ base.llvm_target = "powerpc64-foxkit-linux-musl".to_string(); ++ base.target_vendor = "foxkit".to_string(); ++ base.options.crt_static_default = false; ++ ++ Ok(base) ++} +diff --git a/src/librustc_target/spec/powerpc_foxkit_linux_musl.rs b/src/librustc_target/spec/powerpc_foxkit_linux_musl.rs +new file mode 100644 +index 00000000000..a425f472aa0 +--- /dev/null ++++ b/src/librustc_target/spec/powerpc_foxkit_linux_musl.rs +@@ -0,0 +1,13 @@ ++use crate::spec::{LinkerFlavor, TargetResult}; ++ ++pub fn target() -> TargetResult { ++ let mut base = super::powerpc_unknown_linux_musl::target()?; ++ ++ base.llvm_target = "powerpc-foxkit-linux-musl".to_string(); ++ base.target_vendor = "foxkit".to_string(); ++ base.options.crt_static_default = false; ++ base.options.post_link_args.insert(LinkerFlavor::Gcc, ++ vec!["-Wl,--as-needed".to_string(), "-lssp_nonshared".to_string()]); ++ ++ Ok(base) ++} +diff --git a/src/librustc_target/spec/x86_64_foxkit_linux_musl.rs b/src/librustc_target/spec/x86_64_foxkit_linux_musl.rs +new file mode 100644 +index 00000000000..40adbd77b38 +--- /dev/null ++++ b/src/librustc_target/spec/x86_64_foxkit_linux_musl.rs +@@ -0,0 +1,11 @@ ++use crate::spec::TargetResult; ++ ++pub fn target() -> TargetResult { ++ let mut base = super::x86_64_unknown_linux_musl::target()?; ++ ++ base.llvm_target = "x86_64-foxkit-linux-musl".to_string(); ++ base.target_vendor = "foxkit".to_string(); ++ base.options.crt_static_default = false; ++ ++ Ok(base) ++} +-- +2.21.0 + |