aboutsummaryrefslogtreecommitdiffstats
path: root/community/rust
diff options
context:
space:
mode:
authorJakub Jirutka <jakub@jirutka.cz>2018-08-03 13:44:05 +0200
committerJakub Jirutka <jakub@jirutka.cz>2018-08-03 13:48:31 +0200
commite6200a5c61a35d55afeef51bd3117ddeef751aec (patch)
tree5f61f9043432504d3fba153cd5d2afdfba3a9c18 /community/rust
parent723d1744587d636ce59f5a48432a29af645f4ed4 (diff)
downloadaports-e6200a5c61a35d55afeef51bd3117ddeef751aec.tar.bz2
aports-e6200a5c61a35d55afeef51bd3117ddeef751aec.tar.xz
community/rust: upgrade to 1.28.0
Diffstat (limited to 'community/rust')
-rw-r--r--community/rust/APKBUILD18
-rw-r--r--community/rust/cargo-tests-fix-build-target.patch20
-rw-r--r--community/rust/ensure-stage0-libs-have-unique-metadata.patch39
-rw-r--r--community/rust/minimize-rpath.patch4
-rw-r--r--community/rust/musl-fix-linux_musl_base.patch15
-rw-r--r--community/rust/musl-fix-static-linking.patch4
-rw-r--r--community/rust/need-rpath.patch4
-rw-r--r--community/rust/static-pie.patch4
8 files changed, 42 insertions, 66 deletions
diff --git a/community/rust/APKBUILD b/community/rust/APKBUILD
index a85a70e2c9..d24b4d9e08 100644
--- a/community/rust/APKBUILD
+++ b/community/rust/APKBUILD
@@ -3,7 +3,7 @@
# Contributor: Jeizsm <jeizsm@gmail.com>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=rust
-pkgver=1.27.2
+pkgver=1.28.0
# TODO: bump to 6 as soon as we add llvm6
_llvmver=5
_bootver=1.27.0
@@ -69,7 +69,6 @@ source="https://static.rust-lang.org/dist/rustc-$pkgver-src.tar.gz
alpine-target.patch
install-template-shebang.patch
bootstrap-tool-respect-tool-config.patch
- ensure-stage0-libs-have-unique-metadata.patch
cargo-tests-fix-build-auth-http_auth_offered.patch
cargo-tests-ignore-resolving_minimum_version_with_transitive_deps.patch
cargo-tests-fix-build-target.patch
@@ -275,20 +274,19 @@ _mv() {
mv $@
}
-sha512sums="a4dacae9b1652fa03d5262ccd4d503953743d3b088de0125ea7761d4d0b045e19a8a6ca3fef1d7c7fbbb33ec2516c7ea4c93130475a6af34dc01dce16587b3f9 rustc-1.27.2-src.tar.gz
-d26b0c87e2dce9f2aca561a47ed1ca987c4e1b272ab8b19c39433b63d4be03ca244ba97adc50e743fe50eb0b2f8109cd68a2f05e41d7411c58ef77ef253ca789 musl-fix-static-linking.patch
-9ae8057e1f01b2f3a20906b9f82222b97aac0f1fce47471f724f1f2bd75f36f8be86cfc73ab6e6b09a9cfe5c1e5dc42780c3bac49e0cc453179c49580b3ebddc musl-fix-linux_musl_base.patch
+sha512sums="4e4f121ee5a8a9f8e1ddb6ca5a0c43ba15c1349ecea9478fbcd0b242bf438b498f76bee97d33b9e078a47395e44cdea4c5aa0941e7dd21167abdf94314ef10ce rustc-1.28.0-src.tar.gz
+768f999d88b74c89b595a29028041807b963c72da22cc9d9f96ae3d366a9bcac12ec65520510509560ed0cfa19b6988975e201e9be8349e41192aed82641afba musl-fix-static-linking.patch
+3615b815cfb4eae60f3291dc07a292e1be6048eeddcb21c595bddbe8cca6a622e5b76be72a76f6b65b4d33abdc34a792ce010b024b2818a4d73bce3f85b3eb2b musl-fix-linux_musl_base.patch
e40d41a6dc5d400d6672f1836cd5b9e00391f7beb52e872d87db76bc95a606ce6aaae737a0256a1e5fba77c83bb223818d214dbe87028d47be65fb43c101595c llvm-with-ffi.patch
-c686b1fc63d415e10e6e27ade39c692cff534262f45978deb7e71e3f11e3a61c849008b63da3963c423e9dc29ee7eb0efb0400918855827e34987da74b443a23 static-pie.patch
-c139ded88ed6c90f39ea039e182c7f135832b460e0637a7a453e8247170dca4eee209351f16ebfb5dac466d4f2bf7d7f2568d7e1c9a3aa4190150453677b3510 need-rpath.patch
-d352614e7c774e181decae210140e789de7fc090327ff371981ad28a11ce51c8c01b27c1101a24bb84d75ed2f706f67868f7dbc52196d4ccdf4ebd2d6d6b6b5e minimize-rpath.patch
+9fe4c230165a29ffc5557952d20e62b42e0c384a874e2584fa227239b44d20079878a740e525a51a1262d5a2194b2efe0b4e2e846fe317ea4c496d5fc1834671 static-pie.patch
+487d479a15b43c3e1ee28c111206a4f488be933309f3c6571be7ec33da4e955cc1ee907b7729b4228cb292ca7b3324eb6ba4f32a01abc3d04573a0d96982569a need-rpath.patch
+4362dcc4e9bbe2803337ca39ff97b5206feb42fd86580a108146153f323732e8d1e109edbf6a5d68791975cae7dd185b8220fc8edd62484b8ca31b1d39ab67b8 minimize-rpath.patch
0c0aa7eeddeb578c320a94696a4437fbf083ef4d6f8049512de82548285f37ec4460b5d04f087dc303a5f62a09b5d13b7f0c4fbbdb0b321147ae030e7282ac07 alpine-move-py-scripts-to-share.patch
61aa415d754e9e01236481a1f3c9d5242f2d633e6f11b998e9ffcc07bf5c182d87c0c973dab6f10e4bb3ab4b4a4857bf9ed8dd664c49a65f6175d27db2774db1 alpine-change-rpath-to-rustlib.patch
a688b4bc2420bf05c6ae724c9a4e6821267716032f69a9a44cb395407276df7fb37fc145f8d274b5fa03e7173c338871c9d2294a90726ef16bd087fbe6a77b66 alpine-target.patch
7d59258d4462eba0207739a5c0c8baf1f19d9a396e5547bb4d59d700eb94d50ba6add2e523f3e94e29e993821018594625ea4ac86304fb58f7f8c82622a26ab0 install-template-shebang.patch
c2ccab15d48c11cc3af549a3944ca0d29cb3790345468f4f3779e5ac931554dea603e5523281fc391ba4a555ee468b516961c4cb8ecee007eadacf114f3d8758 bootstrap-tool-respect-tool-config.patch
-df8caff62724e4d4ced52a72f919c3b41f272b5e547dac5aaccbc70f0cae2edf0002c755275e228944effac82fece63274e8fc717dca171b525fd51865151c75 ensure-stage0-libs-have-unique-metadata.patch
332a6af59edc507baa73eda1de60591dd4202f540541769ac1bcbc731267f4523ea309d2c3b1f5a9dc3db32831942a5d3d40b81882dad0bf0b5ee7f74f1d6477 cargo-tests-fix-build-auth-http_auth_offered.patch
3d6f027088e1ec189ce864bf5ed150ccad8be5d9fc0973f1b4d202eec6eab865834403335a9f0765bbfa54638aed7f5d5f2183ba9dfeab9f5bc4ef48111a8427 cargo-tests-ignore-resolving_minimum_version_with_transitive_deps.patch
-f7c09940a013f210c54e57770bbfbe7fa7a5670df6b8101c5058b0d94c1e297c2dbe358acf48ac3d4a36b15623643461d83b4b43c446144113318a4212623701 cargo-tests-fix-build-target.patch
+afa9b770c78857612078660966af0d800671b53bb5cfa717e9584efcca55ed3af451f2b05bf2d4168a4f992cdb5e1e21445ce6b1a09830e1bf5edfb5f92ef98c cargo-tests-fix-build-target.patch
c31fdfe8a9b3411576c75da46645cf0465b9053000a2ab49cf9b2f2733f679d6d33acbf236d67a20e14935d094a685453b7f1840180249f39d610fd0902c3125 check-rustc"
diff --git a/community/rust/cargo-tests-fix-build-target.patch b/community/rust/cargo-tests-fix-build-target.patch
index 98195f697c..413053ff6b 100644
--- a/community/rust/cargo-tests-fix-build-target.patch
+++ b/community/rust/cargo-tests-fix-build-target.patch
@@ -25,3 +25,23 @@ error[E0463]: can't find crate for `std`
.env("RUSTFLAGS", "--cfg with_b"),
execs().with_status(0),
);
+--- a/src/tools/cargo/tests/testsuite/rustdoc.rs
++++ b/src/tools/cargo/tests/testsuite/rustdoc.rs
+@@ -269,13 +269,13 @@
+ .build();
+
+ assert_that(
+- p.cargo("rustdoc --verbose --target x86_64-unknown-linux-gnu"),
++ p.cargo("rustdoc --verbose --target x86_64-alpine-linux-musl"),
+ execs().with_status(0).with_stderr("\
+ [DOCUMENTING] a v0.0.1 ([..])
+ [RUNNING] `rustdoc --crate-name a src[/]lib.rs \
+- --target x86_64-unknown-linux-gnu \
+- -o [..]foo[/]target[/]x86_64-unknown-linux-gnu[/]doc \
+- -L dependency=[..]foo[/]target[/]x86_64-unknown-linux-gnu[/]debug[/]deps \
++ --target x86_64-alpine-linux-musl \
++ -o [..]foo[/]target[/]x86_64-alpine-linux-musl[/]doc \
++ -L dependency=[..]foo[/]target[/]x86_64-alpine-linux-musl[/]debug[/]deps \
+ -L dependency=[..]foo[/]target[/]debug[/]deps`
+ [FINISHED] dev [unoptimized + debuginfo] target(s) in [..]"),
+ );
diff --git a/community/rust/ensure-stage0-libs-have-unique-metadata.patch b/community/rust/ensure-stage0-libs-have-unique-metadata.patch
deleted file mode 100644
index 8141a4784e..0000000000
--- a/community/rust/ensure-stage0-libs-have-unique-metadata.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From e8e5eb58c0d6890f73ea01354e18f51b1a6697f8 Mon Sep 17 00:00:00 2001
-From: Josh Stone <jistone@redhat.com>
-Date: Tue, 15 May 2018 17:48:02 -0700
-Subject: [PATCH] Ensure libraries built in stage0 have unique metadata
-
-Issue #50786 shows a case with local rebuild where the libraries built
-by stage0 had the same suffix as stage0's own, and were accidentally
-loaded by that stage0 rustc when compiling `librustc_trans`.
-
-Now we set `__CARGO_DEFAULT_LIB_METADATA` to "bootstrap" during stage0,
-rather than the release channel like usual, so the library suffix will
-always be completely distinct from the stage0 compiler.
-
-Patch-Source: https://github.com/rust-lang/rust/pull/50789
----
- src/bootstrap/builder.rs | 10 +++++++++-
- 1 file changed, 9 insertions(+), 1 deletion(-)
-
-diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs
-index 17f19222e6ea..e5824010ef2c 100644
---- a/src/bootstrap/builder.rs
-+++ b/src/bootstrap/builder.rs
-@@ -592,7 +592,15 @@ impl<'a> Builder<'a> {
-
- // FIXME: Temporary fix for https://github.com/rust-lang/cargo/issues/3005
- // Force cargo to output binaries with disambiguating hashes in the name
-- cargo.env("__CARGO_DEFAULT_LIB_METADATA", &self.config.channel);
-+ let metadata = if compiler.stage == 0 {
-+ // Treat stage0 like special channel, whether it's a normal prior-
-+ // release rustc or a local rebuild with the same version, so we
-+ // never mix these libraries by accident.
-+ "bootstrap"
-+ } else {
-+ &self.config.channel
-+ };
-+ cargo.env("__CARGO_DEFAULT_LIB_METADATA", &metadata);
-
- let stage;
- if compiler.stage == 0 && self.local_rebuild {
diff --git a/community/rust/minimize-rpath.patch b/community/rust/minimize-rpath.patch
index 1fc0e1b722..32c5c1b52b 100644
--- a/community/rust/minimize-rpath.patch
+++ b/community/rust/minimize-rpath.patch
@@ -7,8 +7,8 @@ relative path to the install prefix. This is unnecessary, so we add the install
prefix to a list of absolute paths to omit in the relative path generation,
and skip it there.
---- a/src/librustc_trans/back/rpath.rs
-+++ b/src/librustc_trans/back/rpath.rs
+--- a/src/librustc_codegen_llvm/back/rpath.rs
++++ b/src/librustc_codegen_llvm/back/rpath.rs
@@ -69,14 +69,15 @@
debug!(" {:?}", libpath.display());
}
diff --git a/community/rust/musl-fix-linux_musl_base.patch b/community/rust/musl-fix-linux_musl_base.patch
index 4ddcac9d40..e342f448fc 100644
--- a/community/rust/musl-fix-linux_musl_base.patch
+++ b/community/rust/musl-fix-linux_musl_base.patch
@@ -6,13 +6,14 @@ See https://github.com/rust-lang/rust/pull/40113
--- a/src/librustc_target/spec/linux_musl_base.rs
+++ b/src/librustc_target/spec/linux_musl_base.rs
-@@ -14,54 +14,14 @@
+@@ -13,53 +13,12 @@
pub fn opts() -> TargetOptions {
let mut base = super::linux_base::opts();
- // Make sure that the linker/gcc really don't pull in anything, including
- // default objects, libs, etc.
-- base.pre_link_args.get_mut(&LinkerFlavor::Gcc).unwrap().push("-nostdlib".to_string());
+- base.pre_link_args_crt.insert(LinkerFlavor::Gcc, Vec::new());
+- base.pre_link_args_crt.get_mut(&LinkerFlavor::Gcc).unwrap().push("-nostdlib".to_string());
-
// At least when this was tested, the linker would not add the
// `GNU_EH_FRAME` program header to executables generated, which is required
@@ -52,14 +53,10 @@ See https://github.com/rust-lang/rust/pull/40113
- //
- // Each target directory for musl has these object files included in it so
- // they'll be included from there.
-- base.pre_link_objects_exe.push("crt1.o".to_string());
-- base.pre_link_objects_exe.push("crti.o".to_string());
-- base.post_link_objects.push("crtn.o".to_string());
+- base.pre_link_objects_exe_crt.push("crt1.o".to_string());
+- base.pre_link_objects_exe_crt.push("crti.o".to_string());
+- base.post_link_objects_crt.push("crtn.o".to_string());
-
// These targets statically link libc by default
base.crt_static_default = true;
// These targets allow the user to choose between static and dynamic linking.
- base.crt_static_respected = true;
-
- base
- }
diff --git a/community/rust/musl-fix-static-linking.patch b/community/rust/musl-fix-static-linking.patch
index c697785ab8..b72c725526 100644
--- a/community/rust/musl-fix-static-linking.patch
+++ b/community/rust/musl-fix-static-linking.patch
@@ -10,8 +10,8 @@ Finally, if no linking preference is given for native libraries
(`NativeLibraryKind::NativeUnknown`), they are linked statically if full
static linking is requested, instead of dynamically as before.
---- a/src/librustc_trans/back/link.rs
-+++ b/src/librustc_trans/back/link.rs
+--- a/src/librustc_codegen_llvm/back/link.rs
++++ b/src/librustc_codegen_llvm/back/link.rs
@@ -1151,13 +1151,13 @@
let relevant_libs = trans.crate_info.used_libraries.iter().filter(|l| {
relevant_lib(sess, l)
diff --git a/community/rust/need-rpath.patch b/community/rust/need-rpath.patch
index b875df5b91..c86f437d50 100644
--- a/community/rust/need-rpath.patch
+++ b/community/rust/need-rpath.patch
@@ -46,8 +46,8 @@ Hacky hacky!
target_option_val!(no_default_libraries);
target_option_val!(position_independent_executables);
target_option_val!(static_position_independent_executables);
---- a/src/librustc_trans/back/link.rs
-+++ b/src/librustc_trans/back/link.rs
+--- a/src/librustc_codegen_llvm/back/link.rs
++++ b/src/librustc_codegen_llvm/back/link.rs
@@ -1092,7 +1092,10 @@
// FIXME (#2397): At some point we want to rpath our guesses as to
// where extern libraries might live, based on the
diff --git a/community/rust/static-pie.patch b/community/rust/static-pie.patch
index c6ffdbe00c..8a3a9b9b36 100644
--- a/community/rust/static-pie.patch
+++ b/community/rust/static-pie.patch
@@ -71,8 +71,8 @@ library, just like static binaries, but more secure.
pre_link_objects_exe: Vec::new(),
pre_link_objects_dll: Vec::new(),
post_link_objects: Vec::new(),
---- a/src/librustc_trans/back/link.rs
-+++ b/src/librustc_trans/back/link.rs
+--- a/src/librustc_codegen_llvm/back/link.rs
++++ b/src/librustc_codegen_llvm/back/link.rs
@@ -994,13 +994,9 @@
let mut position_independent_executable = false;