diff options
author | Georgy Yakovlev <gyakovlev@gentoo.org> | 2020-10-08 12:32:12 -0700 |
---|---|---|
committer | Georgy Yakovlev <gyakovlev@gentoo.org> | 2020-10-08 23:23:05 -0700 |
commit | 51563211f1ddc9662e89cad5c1a2495fcdf9f117 (patch) | |
tree | ae2d8c5ab9e65768c3e107cfc631fa03b233aeeb /dev-lang/rust/files | |
parent | profiles/base/package.use.mask: mask rust-1.47[doc] (diff) | |
download | gentoo-51563211f1ddc9662e89cad5c1a2495fcdf9f117.tar.gz gentoo-51563211f1ddc9662e89cad5c1a2495fcdf9f117.tar.bz2 gentoo-51563211f1ddc9662e89cad5c1a2495fcdf9f117.zip |
dev-lang/rust: bump to 1.47.0
we now install to /usr/lib/rust/<ver>
this is more robust and mirrors how
rustup installs rust, also most slotted
toolchain projects already to it, so we follow
Bug: https://bugs.gentoo.org/734018
PR: https://github.com/gentoo/gentoo/pull/16846
Package-Manager: Portage-3.0.8, Repoman-3.0.1
Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org>
Diffstat (limited to 'dev-lang/rust/files')
3 files changed, 274 insertions, 0 deletions
diff --git a/dev-lang/rust/files/1.46.0-don-t-create-prefix-at-time-of-check.patch b/dev-lang/rust/files/1.46.0-don-t-create-prefix-at-time-of-check.patch new file mode 100644 index 000000000000..9064a52ac2d3 --- /dev/null +++ b/dev-lang/rust/files/1.46.0-don-t-create-prefix-at-time-of-check.patch @@ -0,0 +1,31 @@ +From 6b31232a9d32529e30765108f30365ac48587ce6 Mon Sep 17 00:00:00 2001 +From: Georgy Yakovlev <gyakovlev@gentoo.org> +Date: Thu, 8 Oct 2020 15:48:33 -0700 +Subject: [PATCH] don't create prefix at time of check + +--- + src/bootstrap/install.rs | 8 ++------ + 1 file changed, 2 insertions(+), 6 deletions(-) + +diff --git a/src/bootstrap/install.rs b/src/bootstrap/install.rs +index d9ee3bc..c5da9ce 100644 +--- a/src/bootstrap/install.rs ++++ b/src/bootstrap/install.rs +@@ -73,12 +73,8 @@ fn install_sh( + let docdir_default = datadir_default.join("doc/rust"); + let libdir_default = PathBuf::from("lib"); + let mandir_default = datadir_default.join("man"); +- let prefix = builder.config.prefix.as_ref().map_or(prefix_default, |p| { +- fs::create_dir_all(p) +- .unwrap_or_else(|err| panic!("could not create {}: {}", p.display(), err)); +- fs::canonicalize(p) +- .unwrap_or_else(|err| panic!("could not canonicalize {}: {}", p.display(), err)) +- }); ++ ++ let prefix = builder.config.prefix.as_ref().unwrap_or(&prefix_default); + let sysconfdir = builder.config.sysconfdir.as_ref().unwrap_or(&sysconfdir_default); + let datadir = builder.config.datadir.as_ref().unwrap_or(&datadir_default); + let docdir = builder.config.docdir.as_ref().unwrap_or(&docdir_default); +-- +2.28.0 + diff --git a/dev-lang/rust/files/1.47.0-ignore-broken-and-non-applicable-tests.patch b/dev-lang/rust/files/1.47.0-ignore-broken-and-non-applicable-tests.patch new file mode 100644 index 000000000000..ff1707f4b8a4 --- /dev/null +++ b/dev-lang/rust/files/1.47.0-ignore-broken-and-non-applicable-tests.patch @@ -0,0 +1,75 @@ +From 1879d1d1a284bf51c752e47db284ce22701ed5d0 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +Date: Sun, 16 Sep 2018 16:38:48 +0000 +Subject: [PATCH 12/15] Ignore broken and non-applicable tests + +c-link-to-rust-va-list-fn: unstable feature, broken on aarch64, #56475 +env-funky-keys: can't handle LD_PRELOAD (e.g. sandbox) +long-linker-command-lines: takes >10 minutes to run (but still passes) +simd-intrinsic-generic-bitmask.rs: broken on BE, #59356 +sparc-struct-abi: no sparc target +sysroot-crates-are-unstable: can't run rustc without RPATH +--- + src/test/codegen/sparc-struct-abi.rs | 1 + + src/test/run-make-fulldeps/c-link-to-rust-va-list-fn/Makefile | 2 ++ + src/test/run-make-fulldeps/long-linker-command-lines/Makefile | 2 ++ + src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile | 2 ++ + src/test/ui/env-funky-keys.rs | 1 + + 6 files changed, 10 insertions(+) + +diff --git a/src/test/codegen/sparc-struct-abi.rs b/src/test/codegen/sparc-struct-abi.rs +index 78e5b14a212..6f93e93286b 100644 +--- a/src/test/codegen/sparc-struct-abi.rs ++++ b/src/test/codegen/sparc-struct-abi.rs +@@ -4,6 +4,7 @@ + + // only-sparc64 + // compile-flags: -O --target=sparc64-unknown-linux-gnu --crate-type=rlib ++// ignore-test + #![feature(no_core, lang_items)] + #![no_core] + +diff --git a/src/test/run-make-fulldeps/c-link-to-rust-va-list-fn/Makefile b/src/test/run-make-fulldeps/c-link-to-rust-va-list-fn/Makefile +index f124ca2ab61..363b18f0985 100644 +--- a/src/test/run-make-fulldeps/c-link-to-rust-va-list-fn/Makefile ++++ b/src/test/run-make-fulldeps/c-link-to-rust-va-list-fn/Makefile +@@ -1,3 +1,5 @@ ++# ignore-aarch64 ++ + -include ../tools.mk + + all: +diff --git a/src/test/run-make-fulldeps/long-linker-command-lines/Makefile b/src/test/run-make-fulldeps/long-linker-command-lines/Makefile +index 5876fbc94bc..5f167ece1a2 100644 +--- a/src/test/run-make-fulldeps/long-linker-command-lines/Makefile ++++ b/src/test/run-make-fulldeps/long-linker-command-lines/Makefile +@@ -1,3 +1,5 @@ ++# ignore-test ++ + -include ../tools.mk + + all: +diff --git a/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile b/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile +index 9e770706857..6d92ec5cec8 100644 +--- a/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile ++++ b/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile +@@ -1,1 +1,3 @@ ++# ignore-test ++ + all: + python2.7 test.py +diff --git a/src/test/ui/env-funky-keys.rs b/src/test/ui/env-funky-keys.rs +index c5c824ac58d..f3fe047a79c 100644 +--- a/src/test/ui/env-funky-keys.rs ++++ b/src/test/ui/env-funky-keys.rs +@@ -1,6 +1,7 @@ + // run-pass + // Ignore this test on Android, because it segfaults there. + ++// ignore-test + // ignore-android + // ignore-windows + // ignore-cloudabi no execve +-- +2.24.1 + diff --git a/dev-lang/rust/files/gentoo-musl-target-specs.patch b/dev-lang/rust/files/gentoo-musl-target-specs.patch new file mode 100644 index 000000000000..0661a26841b7 --- /dev/null +++ b/dev-lang/rust/files/gentoo-musl-target-specs.patch @@ -0,0 +1,168 @@ +From 9fb44efd4a6270443ca2a06a098c83cf9820cc8b Mon Sep 17 00:00:00 2001 +From: Georgy Yakovlev <gyakovlev@gentoo.org> +Date: Thu, 8 Oct 2020 22:38:54 -0700 +Subject: [PATCH] add gentoo musl target specs + +Directly based on patch by Samuel Holland <samuel@sholland.org> +Found at: https://github.com/smaeul/portage-overlay/blob/master/dev-lang/rust/files/ + +Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org> +--- + src/librustc_target/spec/aarch64_gentoo_linux_musl.rs | 11 +++++++++++ + .../spec/armv7_gentoo_linux_musleabihf.rs | 11 +++++++++++ + src/librustc_target/spec/i686_gentoo_linux_musl.rs | 11 +++++++++++ + src/librustc_target/spec/mod.rs | 8 ++++++++ + .../spec/powerpc64_gentoo_linux_musl.rs | 11 +++++++++++ + .../spec/powerpc64le_gentoo_linux_musl.rs | 11 +++++++++++ + src/librustc_target/spec/powerpc_gentoo_linux_musl.rs | 11 +++++++++++ + src/librustc_target/spec/x86_64_gentoo_linux_musl.rs | 11 +++++++++++ + 8 files changed, 85 insertions(+) + create mode 100644 src/librustc_target/spec/aarch64_gentoo_linux_musl.rs + create mode 100644 src/librustc_target/spec/armv7_gentoo_linux_musleabihf.rs + create mode 100644 src/librustc_target/spec/i686_gentoo_linux_musl.rs + create mode 100644 src/librustc_target/spec/powerpc64_gentoo_linux_musl.rs + create mode 100644 src/librustc_target/spec/powerpc64le_gentoo_linux_musl.rs + create mode 100644 src/librustc_target/spec/powerpc_gentoo_linux_musl.rs + create mode 100644 src/librustc_target/spec/x86_64_gentoo_linux_musl.rs + +diff --git a/src/librustc_target/spec/aarch64_gentoo_linux_musl.rs b/src/librustc_target/spec/aarch64_gentoo_linux_musl.rs +new file mode 100644 +index 0000000..420fe7c +--- /dev/null ++++ b/src/librustc_target/spec/aarch64_gentoo_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-gentoo-linux-musl".to_string(); ++ base.target_vendor = "gentoo".to_string(); ++ base.options.crt_static_default = false; ++ ++ Ok(base) ++} +diff --git a/src/librustc_target/spec/armv7_gentoo_linux_musleabihf.rs b/src/librustc_target/spec/armv7_gentoo_linux_musleabihf.rs +new file mode 100644 +index 0000000..067e2d6 +--- /dev/null ++++ b/src/librustc_target/spec/armv7_gentoo_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-gentoo-linux-musleabihf".to_string(); ++ base.target_vendor = "gentoo".to_string(); ++ base.options.crt_static_default = false; ++ ++ Ok(base) ++} +diff --git a/src/librustc_target/spec/i686_gentoo_linux_musl.rs b/src/librustc_target/spec/i686_gentoo_linux_musl.rs +new file mode 100644 +index 0000000..1cd39cd +--- /dev/null ++++ b/src/librustc_target/spec/i686_gentoo_linux_musl.rs +@@ -0,0 +1,11 @@ ++use crate::spec::TargetResult; ++ ++pub fn target() -> TargetResult { ++ let mut base = super::i686_unknown_linux_musl::target()?; ++ ++ base.llvm_target = "i686-gentoo-linux-musl".to_string(); ++ base.target_vendor = "gentoo".to_string(); ++ base.options.crt_static_default = false; ++ ++ Ok(base) ++} +diff --git a/src/librustc_target/spec/mod.rs b/src/librustc_target/spec/mod.rs +index fa29ff3..a685600 100644 +--- a/src/librustc_target/spec/mod.rs ++++ b/src/librustc_target/spec/mod.rs +@@ -490,6 +490,14 @@ macro_rules! supported_targets { + } + + supported_targets! { ++ ("aarch64-gentoo-linux-musl", aarch64_gentoo_linux_musl), ++ ("armv7-gentoo-linux-musleabihf", armv7_gentoo_linux_musleabihf), ++ ("i686-gentoo-linux-musl", i686_gentoo_linux_musl), ++ ("powerpc-gentoo-linux-musl", powerpc_gentoo_linux_musl), ++ ("powerpc64-gentoo-linux-musl", powerpc64_gentoo_linux_musl), ++ ("powerpc64le-gentoo-linux-musl", powerpc64le_gentoo_linux_musl), ++ ("x86_64-gentoo-linux-musl", x86_64_gentoo_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_gentoo_linux_musl.rs b/src/librustc_target/spec/powerpc64_gentoo_linux_musl.rs +new file mode 100644 +index 0000000..e840bb2 +--- /dev/null ++++ b/src/librustc_target/spec/powerpc64_gentoo_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-gentoo-linux-musl".to_string(); ++ base.target_vendor = "gentoo".to_string(); ++ base.options.crt_static_default = false; ++ ++ Ok(base) ++} +diff --git a/src/librustc_target/spec/powerpc64le_gentoo_linux_musl.rs b/src/librustc_target/spec/powerpc64le_gentoo_linux_musl.rs +new file mode 100644 +index 0000000..1037d82 +--- /dev/null ++++ b/src/librustc_target/spec/powerpc64le_gentoo_linux_musl.rs +@@ -0,0 +1,11 @@ ++use crate::spec::TargetResult; ++ ++pub fn target() -> TargetResult { ++ let mut base = super::powerpc64le_unknown_linux_musl::target()?; ++ ++ base.llvm_target = "powerpc64le-gentoo-linux-musl".to_string(); ++ base.target_vendor = "gentoo".to_string(); ++ base.options.crt_static_default = false; ++ ++ Ok(base) ++} +diff --git a/src/librustc_target/spec/powerpc_gentoo_linux_musl.rs b/src/librustc_target/spec/powerpc_gentoo_linux_musl.rs +new file mode 100644 +index 0000000..a623ffe +--- /dev/null ++++ b/src/librustc_target/spec/powerpc_gentoo_linux_musl.rs +@@ -0,0 +1,11 @@ ++use crate::spec::TargetResult; ++ ++pub fn target() -> TargetResult { ++ let mut base = super::powerpc_unknown_linux_musl::target()?; ++ ++ base.llvm_target = "powerpc-gentoo-linux-musl".to_string(); ++ base.target_vendor = "gentoo".to_string(); ++ base.options.crt_static_default = false; ++ ++ Ok(base) ++} +diff --git a/src/librustc_target/spec/x86_64_gentoo_linux_musl.rs b/src/librustc_target/spec/x86_64_gentoo_linux_musl.rs +new file mode 100644 +index 0000000..f330473 +--- /dev/null ++++ b/src/librustc_target/spec/x86_64_gentoo_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-gentoo-linux-musl".to_string(); ++ base.target_vendor = "gentoo".to_string(); ++ base.options.crt_static_default = false; ++ ++ Ok(base) ++} +-- +2.28.0 + |