From 1c147dccb8b8b31fbc830e963f301e99ebc25d8d Mon Sep 17 00:00:00 2001 From: Samuel Holland Date: Wed, 4 Sep 2019 23:57:26 +0000 Subject: user/llvm8: Additional powerpc fixes Two bugs found by running the rust 1.37.0 test suite: - Use the PIC sequence for getting the GOT address when resolving IE TLS in a PIE. The non-PIC code sequence creates bogus dynamic relocations. - Only use the PLT in PIC mode. Otherwise, calls to a DSO from a non-PIE dynamic executable force bss-plt, since secure-plt requires PIC. Signed-off-by: Samuel Holland --- user/llvm8/APKBUILD | 4 +- user/llvm8/more-secure-plt.patch | 163 +++++++++++++++++++++++++++++++++------ 2 files changed, 142 insertions(+), 25 deletions(-) (limited to 'user') diff --git a/user/llvm8/APKBUILD b/user/llvm8/APKBUILD index 6913646a3..0e09db7af 100644 --- a/user/llvm8/APKBUILD +++ b/user/llvm8/APKBUILD @@ -109,7 +109,7 @@ build() { check() { # appears to be an issue on musl and glibc, but only fails on musl: # https://github.com/NixOS/nixpkgs/blob/bb7e9e46/pkgs/development/compilers/llvm/8/llvm.nix#L74 - rm "$builddir"/test/CodeGen/AArch64/wineh4.mir + rm -f "$builddir"/test/CodeGen/AArch64/wineh4.mir make -C build check-llvm } @@ -231,6 +231,6 @@ f84cd65d7042e89826ba6e8d48c4c302bf4980da369d7f19a55f217e51c00ca8ed178d453df3a3ce 49c47f125014b60d0ea7870f981a2c1708ad705793f89287ed846ee881a837a4dc0170bf467e03f2ef56177473128945287749ac80dc2d13cfabcf8b929ba58a disable-FileSystemTest.CreateDir-perms-assert.patch caeec8e4dbd92f5f74940780b69075f3879a267a8623822cbdc193fd14706eb089071e3a5a20d60cc2eca59e4c5b2a61d29827a2f3362ee7c5f74f11d9ace200 disable-dlclose-test.patch e5ddbc4b6c4928e79846dc3c022eb7928aaa8fed40515c78f5f03b8ab8264f34f1eb8aa8bfc0f436450932f4917e54ad261603032092ea271d9590f11a37cf1e musl-ppc64-elfv2.patch -957516510439be661ad04e061e9616da8a271a5621603238cde5b4782bd2465367eaaa5ade628d163c8d9e70b8b0495687669f4648bd031ac6e5a1582d2e75a4 more-secure-plt.patch +7ba7f5b396e1afb49ea53fdc16729f0709fbba88de433cc8a8e2f751d13733011d4121318f68d7f8a16a6c57c3a1bee727cc3e0da0f5c6cae38eff70d3a539cf more-secure-plt.patch deb71762721ebc73bfdf23143b582f40c70eddcef3e337ed14499e8e336bee2906292d38d64fe98fa633430c1bcb66cf6a2e067258c8fbe6e931f99f6d10a6f7 even-more-secure-plt.patch 53cc0d13dd871e9b775bb4e7567de4f9a97d91b8246cd7ce74607fd88d6e3e2ab9455f5b4195bc7f9dbdedbc77d659d43e98ec0b7cd78cd395aaea6919510287 python3-test.patch" diff --git a/user/llvm8/more-secure-plt.patch b/user/llvm8/more-secure-plt.patch index 6728e2765..8b18a6db2 100644 --- a/user/llvm8/more-secure-plt.patch +++ b/user/llvm8/more-secure-plt.patch @@ -1,28 +1,145 @@ ---- a/lib/Target/PowerPC/PPCSubtarget.cpp -+++ b/lib/Target/PowerPC/PPCSubtarget.cpp -@@ -138,6 +138,10 @@ +--- llvm/lib/Target/PowerPC/PPCISelLowering.cpp ++++ llvm/lib/Target/PowerPC/PPCISelLowering.cpp +@@ -2769,8 +2769,12 @@ SDValue PPCTargetLowering::LowerGlobalTLSAddress(SDValue Op, + SDValue GOTReg = DAG.getRegister(PPC::X2, MVT::i64); + GOTPtr = DAG.getNode(PPCISD::ADDIS_GOT_TPREL_HA, dl, + PtrVT, GOTReg, TGA); +- } else +- GOTPtr = DAG.getNode(PPCISD::PPC32_GOT, dl, PtrVT); ++ } else { ++ if (isPositionIndependent()) ++ GOTPtr = DAG.getNode(PPCISD::PPC32_PICGOT, dl, PtrVT); ++ else ++ GOTPtr = DAG.getNode(PPCISD::PPC32_GOT, dl, PtrVT); ++ } + SDValue TPOffset = DAG.getNode(PPCISD::LD_GOT_TPREL_L, dl, + PtrVT, TGA, GOTPtr); + return DAG.getNode(PPCISD::ADD_TLS, dl, PtrVT, TPOffset, TGATLS); +@@ -4941,7 +4945,8 @@ PrepareCall(SelectionDAG &DAG, SDValue &Callee, SDValue &InFlag, SDValue &Chain, + if (auto *G = dyn_cast(Callee)) + GV = G->getGlobal(); + bool Local = TM.shouldAssumeDSOLocal(*Mod, GV); +- bool UsePlt = !Local && Subtarget.isTargetELF() && !isPPC64; ++ bool UsePlt = !Local && Subtarget.isTargetELF() && !isPPC64 && ++ TM.isPositionIndependent(); + + if (isFunctionGlobalAddress(Callee)) { + GlobalAddressSDNode *G = cast(Callee); +--- llvm/lib/Target/PowerPC/PPCSubtarget.cpp ++++ llvm/lib/Target/PowerPC/PPCSubtarget.cpp +@@ -138,7 +138,8 @@ void PPCSubtarget::initSubtargetFeatures(StringRef CPU, StringRef FS) { if (isDarwin()) HasLazyResolverStubs = true; - -+ // Set up musl-specific properties. -+ if (TargetTriple.getEnvironment() == Triple::Musl) -+ SecurePlt = true; -+ + +- if (TargetTriple.isOSNetBSD() || TargetTriple.isOSOpenBSD()) ++ if (TargetTriple.isOSNetBSD() || TargetTriple.isOSOpenBSD() || ++ TargetTriple.isMusl()) + SecurePlt = true; + if (HasSPE && IsPPC64) - report_fatal_error( "SPE is only supported for 32-bit targets.\n", false); - if (HasSPE && (HasAltivec || HasQPX || HasVSX || HasFPU)) -diff --git a/lib/Target/PowerPC/PPCTargetMachine.cpp b/lib/Target/PowerPC/PPCTargetMachine.cpp -index c583fba8cab..6a9eedf89c5 100644 ---- a/lib/Target/PowerPC/PPCTargetMachine.cpp -+++ b/lib/Target/PowerPC/PPCTargetMachine.cpp -@@ -222,6 +222,10 @@ static Reloc::Model getEffectiveRelocModel(const Triple &TT, - if (TT.getArch() == Triple::ppc64) - return Reloc::PIC_; +--- llvm/test/CodeGen/PowerPC/2008-10-28-f128-i32.ll ++++ llvm/test/CodeGen/PowerPC/2008-10-28-f128-i32.ll +@@ -62,7 +62,7 @@ define i64 @__fixunstfdi(ppc_fp128 %a) nounwind readnone { + ; CHECK-NEXT: lfd 4, 328(1) + ; CHECK-NEXT: fmr 1, 31 + ; CHECK-NEXT: fmr 2, 30 +-; CHECK-NEXT: bl __gcc_qmul@PLT ++; CHECK-NEXT: bl __gcc_qmul + ; CHECK-NEXT: lis 3, 16864 + ; CHECK-NEXT: stfd 1, 280(1) + ; CHECK-NEXT: fmr 29, 1 +@@ -84,7 +84,7 @@ define i64 @__fixunstfdi(ppc_fp128 %a) nounwind readnone { + ; CHECK-NEXT: lfd 4, 360(1) + ; CHECK-NEXT: lfd 1, 352(1) + ; CHECK-NEXT: lfd 2, 344(1) +-; CHECK-NEXT: bl __gcc_qsub@PLT ++; CHECK-NEXT: bl __gcc_qsub + ; CHECK-NEXT: mffs 0 + ; CHECK-NEXT: mtfsb1 31 + ; CHECK-NEXT: lis 3, .LCPI0_1@ha +@@ -117,7 +117,7 @@ define i64 @__fixunstfdi(ppc_fp128 %a) nounwind readnone { + ; CHECK-NEXT: .LBB0_5: # %bb1 + ; CHECK-NEXT: li 4, 0 + ; CHECK-NEXT: mr 3, 30 +-; CHECK-NEXT: bl __floatditf@PLT ++; CHECK-NEXT: bl __floatditf + ; CHECK-NEXT: lis 3, 17392 + ; CHECK-NEXT: stfd 1, 208(1) + ; CHECK-NEXT: fmr 29, 1 +@@ -140,7 +140,7 @@ define i64 @__fixunstfdi(ppc_fp128 %a) nounwind readnone { + ; CHECK-NEXT: lfd 4, 232(1) + ; CHECK-NEXT: lfd 1, 224(1) + ; CHECK-NEXT: lfd 2, 216(1) +-; CHECK-NEXT: bl __gcc_qadd@PLT ++; CHECK-NEXT: bl __gcc_qadd + ; CHECK-NEXT: blt 2, .LBB0_7 + ; CHECK-NEXT: # %bb.6: # %bb1 + ; CHECK-NEXT: fmr 2, 28 +@@ -163,7 +163,7 @@ define i64 @__fixunstfdi(ppc_fp128 %a) nounwind readnone { + ; CHECK-NEXT: stw 3, 248(1) + ; CHECK-NEXT: lfd 3, 256(1) + ; CHECK-NEXT: lfd 4, 248(1) +-; CHECK-NEXT: bl __gcc_qsub@PLT ++; CHECK-NEXT: bl __gcc_qsub + ; CHECK-NEXT: stfd 2, 176(1) + ; CHECK-NEXT: fcmpu 0, 2, 27 + ; CHECK-NEXT: stfd 1, 168(1) +@@ -205,7 +205,7 @@ define i64 @__fixunstfdi(ppc_fp128 %a) nounwind readnone { + ; CHECK-NEXT: lfd 4, 72(1) + ; CHECK-NEXT: lfd 1, 64(1) + ; CHECK-NEXT: lfd 2, 56(1) +-; CHECK-NEXT: bl __gcc_qsub@PLT ++; CHECK-NEXT: bl __gcc_qsub + ; CHECK-NEXT: mffs 0 + ; CHECK-NEXT: mtfsb1 31 + ; CHECK-NEXT: lis 3, .LCPI0_2@ha +@@ -260,7 +260,7 @@ define i64 @__fixunstfdi(ppc_fp128 %a) nounwind readnone { + ; CHECK-NEXT: lfd 4, 136(1) + ; CHECK-NEXT: lfd 1, 128(1) + ; CHECK-NEXT: lfd 2, 120(1) +-; CHECK-NEXT: bl __gcc_qsub@PLT ++; CHECK-NEXT: bl __gcc_qsub + ; CHECK-NEXT: mffs 0 + ; CHECK-NEXT: mtfsb1 31 + ; CHECK-NEXT: lis 3, .LCPI0_0@ha +--- llvm/test/CodeGen/PowerPC/2010-02-12-saveCR.ll ++++ llvm/test/CodeGen/PowerPC/2010-02-12-saveCR.ll +@@ -11,7 +11,7 @@ entry: + ; CHECK-DAG: ori [[T2:[0-9]+]], [[T2]], 34492 + ; CHECK-DAG: stwx [[T1]], 1, [[T2]] + ; CHECK-DAG: addi 3, 1, 28 +-; CHECK: bl bar@PLT ++; CHECK: bl bar + %x = alloca [100000 x i8] ; <[100000 x i8]*> [#uses=1] + %"alloca point" = bitcast i32 0 to i32 ; [#uses=0] + %x1 = bitcast [100000 x i8]* %x to i8* ; [#uses=1] +--- llvm/test/CodeGen/PowerPC/available-externally.ll ++++ llvm/test/CodeGen/PowerPC/available-externally.ll +@@ -14,7 +14,7 @@ target triple = "powerpc-unknown-linux-gnu" + define i32 @foo(i64 %x) nounwind { + entry: + ; STATIC: foo: +-; STATIC: bl exact_log2@PLT ++; STATIC: bl exact_log2 + ; STATIC: blr -+ // musl needs SecurePlt, which depends on PIC. -+ if (TT.getEnvironment() == Triple::Musl) -+ return Reloc::PIC_; -+ - // Rest are static by default. - return Reloc::Static; + ; PIC: foo: +--- llvm/test/CodeGen/PowerPC/stubs.ll ++++ llvm/test/CodeGen/PowerPC/stubs.ll +@@ -6,4 +6,4 @@ entry: } + + ; CHECK: test1: +-; CHECK: bl __floatditf@PLT ++; CHECK: bl __floatditf +--- llvm/test/CodeGen/PowerPC/umulo-128-legalisation-lowering.ll ++++ llvm/test/CodeGen/PowerPC/umulo-128-legalisation-lowering.ll +@@ -72,7 +72,7 @@ define { i128, i8 } @muloti_test(i128 %l, i128 %r) unnamed_addr #0 { + ; PPC32-NEXT: mr 28, 9 + ; PPC32-NEXT: mr 23, 6 + ; PPC32-NEXT: mr 24, 5 +-; PPC32-NEXT: bl __multi3@PLT ++; PPC32-NEXT: bl __multi3 + ; PPC32-NEXT: mr 7, 4 + ; PPC32-NEXT: mullw 4, 24, 30 + ; PPC32-NEXT: mullw 8, 29, 23 -- cgit v1.2.3-70-g09d2 From 7ff61b754950fa82d16e1bcbb458c54a38598f2a Mon Sep 17 00:00:00 2001 From: Samuel Holland Date: Fri, 5 Jul 2019 23:26:12 -0500 Subject: user/rust: Bump to 1.36.0 Signed-off-by: Samuel Holland --- .../0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch | 8 +- user/rust/0002-Fix-LLVM-build.patch | 8 +- ...tdoc-to-work-when-cross-compiling-on-musl.patch | 6 +- ...tic-native-libraries-when-linking-static-.patch | 18 +-- ...-nostdlib-and-musl_root-from-musl-targets.patch | 60 ++++----- ...-Prefer-libgcc_eh-over-libunwind-for-musl.patch | 6 +- ...untest-Fix-proc-macro-tests-on-musl-hosts.patch | 37 ------ ...-extern-for-plugins-Don-t-assume-multilib.patch | 30 +++++ ...t-crates-are-unstable-Fix-test-when-rpath.patch | 25 ++++ ...-extern-for-plugins-Don-t-assume-multilib.patch | 30 ----- ...09-Ignore-broken-and-non-applicable-tests.patch | 118 ++++++++++++++++ ...t-crates-are-unstable-Fix-test-when-rpath.patch | 25 ---- ...10-Ignore-broken-and-non-applicable-tests.patch | 104 --------------- ...-Link-stage-2-tools-dynamically-to-libstd.patch | 27 ++++ ...-Link-stage-2-tools-dynamically-to-libstd.patch | 27 ---- ...1-Move-debugger-scripts-to-usr-share-rust.patch | 53 ++++++++ user/rust/0012-Add-foxkit-target-specs.patch | 148 +++++++++++++++++++++ ...2-Move-debugger-scripts-to-usr-share-rust.patch | 53 -------- user/rust/0013-Add-foxkit-target-specs.patch | 148 --------------------- user/rust/0030-libc-linkage.patch | 16 +-- user/rust/APKBUILD | 54 ++++---- 21 files changed, 488 insertions(+), 513 deletions(-) delete mode 100644 user/rust/0007-runtest-Fix-proc-macro-tests-on-musl-hosts.patch create mode 100644 user/rust/0007-test-use-extern-for-plugins-Don-t-assume-multilib.patch create mode 100644 user/rust/0008-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch delete mode 100644 user/rust/0008-test-use-extern-for-plugins-Don-t-assume-multilib.patch create mode 100644 user/rust/0009-Ignore-broken-and-non-applicable-tests.patch delete mode 100644 user/rust/0009-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch delete mode 100644 user/rust/0010-Ignore-broken-and-non-applicable-tests.patch create mode 100644 user/rust/0010-Link-stage-2-tools-dynamically-to-libstd.patch delete mode 100644 user/rust/0011-Link-stage-2-tools-dynamically-to-libstd.patch create mode 100644 user/rust/0011-Move-debugger-scripts-to-usr-share-rust.patch create mode 100644 user/rust/0012-Add-foxkit-target-specs.patch delete mode 100644 user/rust/0012-Move-debugger-scripts-to-usr-share-rust.patch delete mode 100644 user/rust/0013-Add-foxkit-target-specs.patch (limited to 'user') diff --git a/user/rust/0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch b/user/rust/0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch index f6a0ddb6b..7bd3daed7 100644 --- a/user/rust/0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch +++ b/user/rust/0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch @@ -1,17 +1,17 @@ -From 600b7bb76d82d2ec180051318d811ad50fd68900 Mon Sep 17 00:00:00 2001 +From 3ee2eb230aa2414a7cf5e55cba365edbd20e25b4 Mon Sep 17 00:00:00 2001 From: Samuel Holland Date: Wed, 10 Jan 2018 13:36:41 -0600 -Subject: [PATCH 01/13] Don't pass CFLAGS to the C++ compiler +Subject: [PATCH 01/12] Don't pass CFLAGS to the C++ compiler --- src/bootstrap/builder.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs -index 522466314d..86f059a202 100644 +index 51663e93169..af4b471921c 100644 --- a/src/bootstrap/builder.rs +++ b/src/bootstrap/builder.rs -@@ -1098,8 +1098,7 @@ impl<'a> Builder<'a> { +@@ -1116,8 +1116,7 @@ impl<'a> Builder<'a> { if let Ok(cxx) = self.cxx(target) { let cxx = ccacheify(&cxx); cargo diff --git a/user/rust/0002-Fix-LLVM-build.patch b/user/rust/0002-Fix-LLVM-build.patch index 8b035a02d..7209c3c75 100644 --- a/user/rust/0002-Fix-LLVM-build.patch +++ b/user/rust/0002-Fix-LLVM-build.patch @@ -1,17 +1,17 @@ -From 1359f28a3d69943ff8bcd28d0dcca4c68200ff6a Mon Sep 17 00:00:00 2001 +From 93c87d4cf5ef70813b8e909cdc04527b1f5d7555 Mon Sep 17 00:00:00 2001 From: Samuel Holland Date: Fri, 8 Sep 2017 00:04:29 -0500 -Subject: [PATCH 02/13] Fix LLVM build +Subject: [PATCH 02/12] Fix LLVM build --- src/bootstrap/lib.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/bootstrap/lib.rs b/src/bootstrap/lib.rs -index fb60b470a3..71ca61d97e 100644 +index ca4489655ca..7618a6e6df5 100644 --- a/src/bootstrap/lib.rs +++ b/src/bootstrap/lib.rs -@@ -783,7 +783,8 @@ impl Build { +@@ -774,7 +774,8 @@ impl Build { // cc-rs because the build scripts will determine that for themselves. let mut base = self.cc[&target].args().iter() .map(|s| s.to_string_lossy().into_owned()) diff --git a/user/rust/0003-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch b/user/rust/0003-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch index 1d51af2d9..e9f879cbb 100644 --- a/user/rust/0003-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch +++ b/user/rust/0003-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch @@ -1,7 +1,7 @@ -From d4b81fe2c052ddd6776da36b035dbe2c2564689b Mon Sep 17 00:00:00 2001 +From 09d94e416d0dbc2e5f0e873fd7e72acdf2c7e178 Mon Sep 17 00:00:00 2001 From: Samuel Holland Date: Sat, 2 Dec 2017 17:25:44 -0600 -Subject: [PATCH 03/13] Allow rustdoc to work when cross-compiling on musl +Subject: [PATCH 03/12] Allow rustdoc to work when cross-compiling on musl musl can't handle foreign-architecture libraries in LD_LIBRARY_PATH. --- @@ -9,7 +9,7 @@ musl can't handle foreign-architecture libraries in LD_LIBRARY_PATH. 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/bootstrap/bin/rustdoc.rs b/src/bootstrap/bin/rustdoc.rs -index 1c9f6e1ab2..7e90be8d8c 100644 +index 1c9f6e1ab28..7e90be8d8cc 100644 --- a/src/bootstrap/bin/rustdoc.rs +++ b/src/bootstrap/bin/rustdoc.rs @@ -23,9 +23,6 @@ fn main() { diff --git a/user/rust/0004-Require-static-native-libraries-when-linking-static-.patch b/user/rust/0004-Require-static-native-libraries-when-linking-static-.patch index a1ee6c661..e8fada6be 100644 --- a/user/rust/0004-Require-static-native-libraries-when-linking-static-.patch +++ b/user/rust/0004-Require-static-native-libraries-when-linking-static-.patch @@ -1,7 +1,7 @@ -From 7f7ea1cba86a15510de2410529c8460fc5b7018b Mon Sep 17 00:00:00 2001 +From 41de62cd1f5e6326987cd9ec625b8ed06efa3041 Mon Sep 17 00:00:00 2001 From: Samuel Holland Date: Fri, 8 Sep 2017 00:05:18 -0500 -Subject: [PATCH 04/13] Require static native libraries when linking static +Subject: [PATCH 04/12] Require static native libraries when linking static executables On ELF targets like Linux, gcc/ld will create a dynamically-linked @@ -12,14 +12,14 @@ executables. Fixes #54243 --- - src/librustc_codegen_llvm/back/link.rs | 18 ++++++++++++++---- + src/librustc_codegen_ssa/back/link.rs | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) -diff --git a/src/librustc_codegen_llvm/back/link.rs b/src/librustc_codegen_llvm/back/link.rs -index 19419a72b9..9d26dd0b35 100644 ---- a/src/librustc_codegen_llvm/back/link.rs -+++ b/src/librustc_codegen_llvm/back/link.rs -@@ -1408,9 +1408,7 @@ fn add_upstream_rust_crates(cmd: &mut dyn Linker, +diff --git a/src/librustc_codegen_ssa/back/link.rs b/src/librustc_codegen_ssa/back/link.rs +index d5a56f6a09e..bb06d80d814 100644 +--- a/src/librustc_codegen_ssa/back/link.rs ++++ b/src/librustc_codegen_ssa/back/link.rs +@@ -1548,9 +1548,7 @@ fn add_upstream_rust_crates<'a, B: ArchiveBuilder<'a>>(cmd: &mut dyn Linker, } } @@ -30,7 +30,7 @@ index 19419a72b9..9d26dd0b35 100644 // // 1. The upstream crate is an rlib. In this case we *must* link in the // native dependency because the rlib is just an archive. -@@ -1453,7 +1451,19 @@ fn add_upstream_native_libraries(cmd: &mut dyn Linker, +@@ -1593,7 +1591,19 @@ pub fn add_upstream_native_libraries(cmd: &mut dyn Linker, continue } match lib.kind { diff --git a/user/rust/0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch b/user/rust/0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch index 4d70e7084..8dfb217b5 100644 --- a/user/rust/0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch +++ b/user/rust/0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch @@ -1,7 +1,7 @@ -From 121e89f649b1cfe3c18dc622279dc5a79873fcdb Mon Sep 17 00:00:00 2001 +From dc5862fa6adcd35e46b0a3ab160f5577535b4b76 Mon Sep 17 00:00:00 2001 From: Samuel Holland Date: Fri, 8 Sep 2017 22:11:14 -0500 -Subject: [PATCH 05/13] Remove -nostdlib and musl_root from musl targets +Subject: [PATCH 05/12] Remove -nostdlib and musl_root from musl targets --- config.toml.example | 6 ---- @@ -20,7 +20,7 @@ Subject: [PATCH 05/13] Remove -nostdlib and musl_root from musl targets 13 files changed, 4 insertions(+), 152 deletions(-) diff --git a/config.toml.example b/config.toml.example -index 8b2153cd2e..b8145ce8d5 100644 +index 556625b531d..3c6f1872822 100644 --- a/config.toml.example +++ b/config.toml.example @@ -474,12 +474,6 @@ @@ -33,11 +33,11 @@ index 8b2153cd2e..b8145ce8d5 100644 -# linked binaries -#musl-root = "..." - - # The root location of the `wasm32-unknown-wasi` sysroot. + # The root location of the `wasm32-wasi` sysroot. #wasi-root = "..." diff --git a/src/bootstrap/bin/rustc.rs b/src/bootstrap/bin/rustc.rs -index a76584093f..8a534ab8e2 100644 +index 821c37dc235..906af787f4a 100644 --- a/src/bootstrap/bin/rustc.rs +++ b/src/bootstrap/bin/rustc.rs @@ -122,16 +122,6 @@ fn main() { @@ -58,7 +58,7 @@ index a76584093f..8a534ab8e2 100644 let mut root = OsString::from("native="); root.push(&s); diff --git a/src/bootstrap/cc_detect.rs b/src/bootstrap/cc_detect.rs -index dfc243b705..848d1d4b2b 100644 +index dfc243b7054..848d1d4b2b3 100644 --- a/src/bootstrap/cc_detect.rs +++ b/src/bootstrap/cc_detect.rs @@ -84,7 +84,7 @@ pub fn find(build: &mut Build) { @@ -117,10 +117,10 @@ index dfc243b705..848d1d4b2b 100644 } } diff --git a/src/bootstrap/compile.rs b/src/bootstrap/compile.rs -index 66443d472d..bbaa32a91c 100644 +index e1cdd226fd6..05442c6c612 100644 --- a/src/bootstrap/compile.rs +++ b/src/bootstrap/compile.rs -@@ -114,20 +114,7 @@ impl Step for Std { +@@ -115,20 +115,7 @@ impl Step for Std { fn copy_third_party_objects(builder: &Builder<'_>, compiler: &Compiler, target: Interned) { let libdir = builder.sysroot_libdir(*compiler, target); @@ -142,7 +142,7 @@ index 66443d472d..bbaa32a91c 100644 for &obj in &["crt1.o"] { builder.copy( &builder.wasi_root(target).unwrap().join("lib/wasm32-wasi").join(obj), -@@ -190,12 +177,6 @@ pub fn std_cargo(builder: &Builder<'_>, +@@ -191,12 +178,6 @@ pub fn std_cargo(builder: &Builder<'_>, .arg("--manifest-path") .arg(builder.src.join("src/libstd/Cargo.toml")); @@ -156,10 +156,10 @@ index 66443d472d..bbaa32a91c 100644 if let Some(p) = builder.wasi_root(target) { cargo.env("WASI_ROOT", p); diff --git a/src/bootstrap/config.rs b/src/bootstrap/config.rs -index 0c31c41ced..b8c690fc41 100644 +index b1d009a6740..cc567839f47 100644 --- a/src/bootstrap/config.rs +++ b/src/bootstrap/config.rs -@@ -133,8 +133,6 @@ pub struct Config { +@@ -135,8 +135,6 @@ pub struct Config { pub print_step_timings: bool, pub missing_tools: bool, @@ -168,7 +168,7 @@ index 0c31c41ced..b8c690fc41 100644 pub prefix: Option, pub sysconfdir: Option, pub datadir: Option, -@@ -169,7 +167,6 @@ pub struct Target { +@@ -171,7 +169,6 @@ pub struct Target { pub linker: Option, pub ndk: Option, pub crt_static: Option, @@ -176,7 +176,7 @@ index 0c31c41ced..b8c690fc41 100644 pub wasi_root: Option, pub qemu_rootfs: Option, pub no_std: bool, -@@ -306,7 +303,6 @@ struct Rust { +@@ -308,7 +305,6 @@ struct Rust { backtrace: Option, default_linker: Option, channel: Option, @@ -184,7 +184,7 @@ index 0c31c41ced..b8c690fc41 100644 rpath: Option, optimize_tests: Option, debuginfo_tests: Option, -@@ -346,7 +342,6 @@ struct TomlTarget { +@@ -348,7 +344,6 @@ struct TomlTarget { linker: Option, android_ndk: Option, crt_static: Option, @@ -192,7 +192,7 @@ index 0c31c41ced..b8c690fc41 100644 wasi_root: Option, qemu_rootfs: Option, } -@@ -566,7 +561,6 @@ impl Config { +@@ -568,7 +563,6 @@ impl Config { set(&mut config.llvm_tools_enabled, rust.llvm_tools); config.rustc_parallel = rust.parallel_compiler.unwrap_or(false); config.rustc_default_linker = rust.default_linker.clone(); @@ -200,7 +200,7 @@ index 0c31c41ced..b8c690fc41 100644 config.save_toolstates = rust.save_toolstates.clone().map(PathBuf::from); set(&mut config.deny_warnings, rust.deny_warnings.or(flags.warnings)); set(&mut config.backtrace_on_ice, rust.backtrace_on_ice); -@@ -609,7 +603,6 @@ impl Config { +@@ -611,7 +605,6 @@ impl Config { target.ranlib = cfg.ranlib.clone().map(PathBuf::from); target.linker = cfg.linker.clone().map(PathBuf::from); target.crt_static = cfg.crt_static.clone(); @@ -209,7 +209,7 @@ index 0c31c41ced..b8c690fc41 100644 target.qemu_rootfs = cfg.qemu_rootfs.clone().map(PathBuf::from); diff --git a/src/bootstrap/configure.py b/src/bootstrap/configure.py -index ade8afee7c..f9ccf7aed5 100755 +index ade8afee7c1..f9ccf7aed5c 100755 --- a/src/bootstrap/configure.py +++ b/src/bootstrap/configure.py @@ -111,28 +111,6 @@ v("aarch64-linux-android-ndk", "target.aarch64-linux-android.android-ndk", @@ -242,10 +242,10 @@ index ade8afee7c..f9ccf7aed5 100755 "rootfs in qemu testing, you probably don't want to use this") v("qemu-aarch64-rootfs", "target.aarch64-unknown-linux-gnu.qemu-rootfs", diff --git a/src/bootstrap/lib.rs b/src/bootstrap/lib.rs -index 71ca61d97e..3b53029a79 100644 +index 7618a6e6df5..49cdb526e44 100644 --- a/src/bootstrap/lib.rs +++ b/src/bootstrap/lib.rs -@@ -861,14 +861,6 @@ impl Build { +@@ -852,14 +852,6 @@ impl Build { } } @@ -261,10 +261,10 @@ index 71ca61d97e..3b53029a79 100644 fn wasi_root(&self, target: Interned) -> Option<&Path> { self.config.target_config.get(&target) diff --git a/src/bootstrap/sanity.rs b/src/bootstrap/sanity.rs -index b9f456e910..792c975333 100644 +index dc65fb9b797..060ba6d9e42 100644 --- a/src/bootstrap/sanity.rs +++ b/src/bootstrap/sanity.rs -@@ -171,34 +171,6 @@ pub fn check(build: &mut Build) { +@@ -176,34 +176,6 @@ pub fn check(build: &mut Build) { } } @@ -300,7 +300,7 @@ index b9f456e910..792c975333 100644 // There are three builds of cmake on windows: MSVC, MinGW, and // Cygwin. The Cygwin build does not have generators for Visual diff --git a/src/ci/docker/dist-i586-gnu-i586-i686-musl/Dockerfile b/src/ci/docker/dist-i586-gnu-i586-i686-musl/Dockerfile -index ba2d32a929..412c37fdd1 100644 +index ba2d32a9296..412c37fdd12 100644 --- a/src/ci/docker/dist-i586-gnu-i586-i686-musl/Dockerfile +++ b/src/ci/docker/dist-i586-gnu-i586-i686-musl/Dockerfile @@ -30,8 +30,6 @@ COPY scripts/sccache.sh /scripts/ @@ -313,7 +313,7 @@ index ba2d32a929..412c37fdd1 100644 --disable-docs diff --git a/src/ci/docker/dist-various-1/Dockerfile b/src/ci/docker/dist-various-1/Dockerfile -index a722a41839..44e6728de7 100644 +index a722a418391..44e6728de79 100644 --- a/src/ci/docker/dist-various-1/Dockerfile +++ b/src/ci/docker/dist-various-1/Dockerfile @@ -132,13 +132,6 @@ ENV CC_mipsel_unknown_linux_musl=mipsel-openwrt-linux-gcc \ @@ -331,19 +331,19 @@ index a722a41839..44e6728de7 100644 --disable-docs diff --git a/src/ci/docker/dist-x86_64-musl/Dockerfile b/src/ci/docker/dist-x86_64-musl/Dockerfile -index 21a9023a45..db7c9729d0 100644 +index 385eefde846..81d4f7737e8 100644 --- a/src/ci/docker/dist-x86_64-musl/Dockerfile +++ b/src/ci/docker/dist-x86_64-musl/Dockerfile -@@ -29,7 +29,6 @@ COPY scripts/sccache.sh /scripts/ - RUN sh /scripts/sccache.sh +@@ -31,7 +31,6 @@ RUN sh /scripts/sccache.sh + ENV HOSTS=x86_64-unknown-linux-musl ENV RUST_CONFIGURE_ARGS \ - --musl-root-x86_64=/usr/local/x86_64-linux-musl \ --enable-extended \ - --disable-docs - + --disable-docs \ + --set target.x86_64-unknown-linux-musl.crt-static=false \ diff --git a/src/ci/docker/test-various/Dockerfile b/src/ci/docker/test-various/Dockerfile -index 611a24a69b..99c2b866b1 100644 +index 611a24a69bd..99c2b866b1d 100644 --- a/src/ci/docker/test-various/Dockerfile +++ b/src/ci/docker/test-various/Dockerfile @@ -31,7 +31,6 @@ COPY scripts/sccache.sh /scripts/ @@ -355,7 +355,7 @@ index 611a24a69b..99c2b866b1 100644 --set rust.lld diff --git a/src/librustc_target/spec/linux_musl_base.rs b/src/librustc_target/spec/linux_musl_base.rs -index e294e63982..58ae91a96a 100644 +index e294e63982d..58ae91a96aa 100644 --- a/src/librustc_target/spec/linux_musl_base.rs +++ b/src/librustc_target/spec/linux_musl_base.rs @@ -3,28 +3,12 @@ use crate::spec::{LinkerFlavor, TargetOptions}; diff --git a/user/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch b/user/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch index 38065f96c..901c52c7e 100644 --- a/user/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch +++ b/user/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch @@ -1,14 +1,14 @@ -From e74e7ab193b0d59302eac1edbab423f2e83e986d Mon Sep 17 00:00:00 2001 +From e0556e5cdd456e37e61e4ca1f5ef9862a2c6d3ae Mon Sep 17 00:00:00 2001 From: Samuel Holland Date: Sat, 9 Sep 2017 00:14:16 -0500 -Subject: [PATCH 06/13] Prefer libgcc_eh over libunwind for musl +Subject: [PATCH 06/12] Prefer libgcc_eh over libunwind for musl --- src/libunwind/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libunwind/lib.rs b/src/libunwind/lib.rs -index 0ccffea317..935175dd8d 100644 +index 0ccffea3170..935175dd8d1 100644 --- a/src/libunwind/lib.rs +++ b/src/libunwind/lib.rs @@ -26,6 +26,6 @@ cfg_if! { diff --git a/user/rust/0007-runtest-Fix-proc-macro-tests-on-musl-hosts.patch b/user/rust/0007-runtest-Fix-proc-macro-tests-on-musl-hosts.patch deleted file mode 100644 index b8fa40308..000000000 --- a/user/rust/0007-runtest-Fix-proc-macro-tests-on-musl-hosts.patch +++ /dev/null @@ -1,37 +0,0 @@ -From cd7484e89d44ad980a526eb993c5cbc2b7f0878a Mon Sep 17 00:00:00 2001 -From: Samuel Holland -Date: Sun, 16 Sep 2018 16:40:04 +0000 -Subject: [PATCH 07/13] runtest: Fix proc-macro tests on musl hosts - ---- - src/tools/compiletest/src/runtest.rs | 7 ++----- - 1 file changed, 2 insertions(+), 5 deletions(-) - -diff --git a/src/tools/compiletest/src/runtest.rs b/src/tools/compiletest/src/runtest.rs -index 2021dd513a..765353620b 100644 ---- a/src/tools/compiletest/src/runtest.rs -+++ b/src/tools/compiletest/src/runtest.rs -@@ -1605,7 +1605,6 @@ impl<'test> TestCx<'test> { - None - } else if self.config.target.contains("cloudabi") - || self.config.target.contains("emscripten") -- || (self.config.target.contains("musl") && !aux_props.force_host) - || self.config.target.contains("wasm32") - || self.config.target.contains("nvptx") - { -@@ -1614,10 +1613,8 @@ impl<'test> TestCx<'test> { - // for the test suite (otherwise including libstd statically in all - // executables takes up quite a bit of space). - // -- // For targets like MUSL or Emscripten, however, there is no support for -- // dynamic libraries so we just go back to building a normal library. Note, -- // however, that for MUSL if the library is built with `force_host` then -- // it's ok to be a dylib as the host should always support dylibs. -+ // For targets like Emscripten, however, there is no support for -+ // dynamic libraries so we just go back to building a normal library. - Some("lib") - } else { - Some("dylib") --- -2.21.0 - diff --git a/user/rust/0007-test-use-extern-for-plugins-Don-t-assume-multilib.patch b/user/rust/0007-test-use-extern-for-plugins-Don-t-assume-multilib.patch new file mode 100644 index 000000000..0655d8ac1 --- /dev/null +++ b/user/rust/0007-test-use-extern-for-plugins-Don-t-assume-multilib.patch @@ -0,0 +1,30 @@ +From 27dcf49a9a5a27c39b6f66837060bfa5d03ced50 Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Sat, 6 Oct 2018 04:01:48 +0000 +Subject: [PATCH 07/12] test/use-extern-for-plugins: Don't assume multilib + +--- + src/test/run-make-fulldeps/use-extern-for-plugins/Makefile | 7 +------ + 1 file changed, 1 insertion(+), 6 deletions(-) + +diff --git a/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile b/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile +index 838b1a2719b..94fa9f6d067 100644 +--- a/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile ++++ b/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile +@@ -4,12 +4,7 @@ + # ignore-openbsd + # ignore-sunos + +-HOST := $(shell $(RUSTC) -vV | grep 'host:' | sed 's/host: //') +-ifeq ($(findstring i686,$(HOST)),i686) +-TARGET := $(subst i686,x86_64,$(HOST)) +-else +-TARGET := $(subst x86_64,i686,$(HOST)) +-endif ++TARGET := $(shell $(RUSTC) -vV | grep 'host:' | sed 's/host: //') + + all: + $(RUSTC) foo.rs -C extra-filename=-host +-- +2.21.0 + diff --git a/user/rust/0008-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch b/user/rust/0008-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch new file mode 100644 index 000000000..7b23b662d --- /dev/null +++ b/user/rust/0008-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch @@ -0,0 +1,25 @@ +From 2b5385b0c6db9cf02d467b23df89596d33557adf Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Mon, 17 Sep 2018 01:32:20 +0000 +Subject: [PATCH 08/12] test/sysroot-crates-are-unstable: Fix test when rpath + is disabled + +Without this environment var, the test can't run rustc to find +the sysroot path. +--- + .../run-make-fulldeps/sysroot-crates-are-unstable/Makefile | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +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 a35174b3c2a..9e770706857 100644 +--- a/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile ++++ b/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile +@@ -1,2 +1,4 @@ ++-include ../tools.mk ++ + all: +- python2.7 test.py ++ env '$(HOST_RPATH_ENV)' python2.7 test.py +-- +2.21.0 + diff --git a/user/rust/0008-test-use-extern-for-plugins-Don-t-assume-multilib.patch b/user/rust/0008-test-use-extern-for-plugins-Don-t-assume-multilib.patch deleted file mode 100644 index 0fefe38cc..000000000 --- a/user/rust/0008-test-use-extern-for-plugins-Don-t-assume-multilib.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 6ad7add8f7dee0f6dac64add5d64098667a5168d Mon Sep 17 00:00:00 2001 -From: Samuel Holland -Date: Sat, 6 Oct 2018 04:01:48 +0000 -Subject: [PATCH 08/13] test/use-extern-for-plugins: Don't assume multilib - ---- - src/test/run-make-fulldeps/use-extern-for-plugins/Makefile | 7 +------ - 1 file changed, 1 insertion(+), 6 deletions(-) - -diff --git a/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile b/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile -index 3976da3113..567a8d3157 100644 ---- a/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile -+++ b/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile -@@ -5,12 +5,7 @@ - # ignore-bitrig - # ignore-sunos - --HOST := $(shell $(RUSTC) -vV | grep 'host:' | sed 's/host: //') --ifeq ($(findstring i686,$(HOST)),i686) --TARGET := $(subst i686,x86_64,$(HOST)) --else --TARGET := $(subst x86_64,i686,$(HOST)) --endif -+TARGET := $(shell $(RUSTC) -vV | grep 'host:' | sed 's/host: //') - - all: - $(RUSTC) foo.rs -C extra-filename=-host --- -2.21.0 - diff --git a/user/rust/0009-Ignore-broken-and-non-applicable-tests.patch b/user/rust/0009-Ignore-broken-and-non-applicable-tests.patch new file mode 100644 index 000000000..c56f943c8 --- /dev/null +++ b/user/rust/0009-Ignore-broken-and-non-applicable-tests.patch @@ -0,0 +1,118 @@ +From 9af5f127b0809c1cadef639f96907d5908d1aec3 Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Sun, 16 Sep 2018 16:38:48 +0000 +Subject: [PATCH 09/12] 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 +simd-intrinsic-generic-select.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/linker-output-non-utf8/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/run-pass/env-funky-keys.rs | 1 + + src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs | 2 ++ + src/test/run-pass/simd/simd-intrinsic-generic-select.rs | 2 ++ + 8 files changed, 14 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/linker-output-non-utf8/Makefile b/src/test/run-make-fulldeps/linker-output-non-utf8/Makefile +index b47ce17ec8b..59c44fcf438 100644 +--- a/src/test/run-make-fulldeps/linker-output-non-utf8/Makefile ++++ b/src/test/run-make-fulldeps/linker-output-non-utf8/Makefile +@@ -13,6 +13,8 @@ + # This also does not work on Apple APFS due to the filesystem requiring + # valid UTF-8 paths. + ++# ignore-musl ++ + # The zzz it to allow humans to tab complete or glob this thing. + bad_dir := $(TMPDIR)/zzz$$'\xff' + +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,3 +1,5 @@ ++# ignore-test ++ + -include ../tools.mk + + all: +diff --git a/src/test/run-pass/env-funky-keys.rs b/src/test/run-pass/env-funky-keys.rs +index 3b236e2b3af..7284d25de48 100644 +--- a/src/test/run-pass/env-funky-keys.rs ++++ b/src/test/run-pass/env-funky-keys.rs +@@ -1,5 +1,6 @@ + // Ignore this test on Android, because it segfaults there. + ++// ignore-test + // ignore-android + // ignore-windows + // ignore-cloudabi no execve +diff --git a/src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs b/src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs +index b28f742a92e..3ee4ccce731 100644 +--- a/src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs ++++ b/src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs +@@ -2,6 +2,8 @@ + #![allow(non_camel_case_types)] + + // ignore-emscripten ++// ignore-powerpc ++// ignore-powerpc64 + + // Test that the simd_bitmask intrinsic produces correct results. + +diff --git a/src/test/run-pass/simd/simd-intrinsic-generic-select.rs b/src/test/run-pass/simd/simd-intrinsic-generic-select.rs +index f79b140494e..39080c8c90d 100644 +--- a/src/test/run-pass/simd/simd-intrinsic-generic-select.rs ++++ b/src/test/run-pass/simd/simd-intrinsic-generic-select.rs +@@ -2,6 +2,8 @@ + #![allow(non_camel_case_types)] + + // ignore-emscripten ++// ignore-powerpc ++// ignore-powerpc64 + + // Test that the simd_select intrinsics produces correct results. + +-- +2.21.0 + diff --git a/user/rust/0009-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch b/user/rust/0009-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch deleted file mode 100644 index 3c0bc7c5e..000000000 --- a/user/rust/0009-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch +++ /dev/null @@ -1,25 +0,0 @@ -From fb4844f8b8a546873b909490b66bde24772e4cc7 Mon Sep 17 00:00:00 2001 -From: Samuel Holland -Date: Mon, 17 Sep 2018 01:32:20 +0000 -Subject: [PATCH 09/13] test/sysroot-crates-are-unstable: Fix test when rpath - is disabled - -Without this environment var, the test can't run rustc to find -the sysroot path. ---- - .../run-make-fulldeps/sysroot-crates-are-unstable/Makefile | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -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 a35174b3c2..9e77070685 100644 ---- a/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile -+++ b/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile -@@ -1,2 +1,4 @@ -+-include ../tools.mk -+ - all: -- python2.7 test.py -+ env '$(HOST_RPATH_ENV)' python2.7 test.py --- -2.21.0 - diff --git a/user/rust/0010-Ignore-broken-and-non-applicable-tests.patch b/user/rust/0010-Ignore-broken-and-non-applicable-tests.patch deleted file mode 100644 index f1349b906..000000000 --- a/user/rust/0010-Ignore-broken-and-non-applicable-tests.patch +++ /dev/null @@ -1,104 +0,0 @@ -From 44e9b61563be6a169575358107774109f910cb9d Mon Sep 17 00:00:00 2001 -From: Samuel Holland -Date: Sun, 16 Sep 2018 16:38:48 +0000 -Subject: [PATCH 10/13] 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 -simd-intrinsic-generic-select.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/run-pass/env-funky-keys.rs | 1 + - src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs | 2 ++ - src/test/run-pass/simd/simd-intrinsic-generic-select.rs | 2 ++ - 7 files changed, 12 insertions(+) - -diff --git a/src/test/codegen/sparc-struct-abi.rs b/src/test/codegen/sparc-struct-abi.rs -index 78e5b14a21..6f93e93286 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 f124ca2ab6..363b18f098 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 5876fbc94b..5f167ece1a 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 9e77070685..6d92ec5cec 100644 ---- a/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile -+++ b/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile -@@ -1,3 +1,5 @@ -+# ignore-test -+ - -include ../tools.mk - - all: -diff --git a/src/test/run-pass/env-funky-keys.rs b/src/test/run-pass/env-funky-keys.rs -index 79f32bd6c2..fc171687c9 100644 ---- a/src/test/run-pass/env-funky-keys.rs -+++ b/src/test/run-pass/env-funky-keys.rs -@@ -1,5 +1,6 @@ - // Ignore this test on Android, because it segfaults there. - -+// ignore-test - // ignore-android - // ignore-windows - // ignore-cloudabi no execve -diff --git a/src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs b/src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs -index b28f742a92..3ee4ccce73 100644 ---- a/src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs -+++ b/src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs -@@ -2,6 +2,8 @@ - #![allow(non_camel_case_types)] - - // ignore-emscripten -+// ignore-powerpc -+// ignore-powerpc64 - - // Test that the simd_bitmask intrinsic produces correct results. - -diff --git a/src/test/run-pass/simd/simd-intrinsic-generic-select.rs b/src/test/run-pass/simd/simd-intrinsic-generic-select.rs -index f79b140494..39080c8c90 100644 ---- a/src/test/run-pass/simd/simd-intrinsic-generic-select.rs -+++ b/src/test/run-pass/simd/simd-intrinsic-generic-select.rs -@@ -2,6 +2,8 @@ - #![allow(non_camel_case_types)] - - // ignore-emscripten -+// ignore-powerpc -+// ignore-powerpc64 - - // Test that the simd_select intrinsics produces correct results. - --- -2.21.0 - diff --git a/user/rust/0010-Link-stage-2-tools-dynamically-to-libstd.patch b/user/rust/0010-Link-stage-2-tools-dynamically-to-libstd.patch new file mode 100644 index 000000000..ab31ba75f --- /dev/null +++ b/user/rust/0010-Link-stage-2-tools-dynamically-to-libstd.patch @@ -0,0 +1,27 @@ +From cef4e3d7019c07115f1a4ee66987a4e0ecf8505f Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Mon, 24 Sep 2018 23:42:23 +0000 +Subject: [PATCH 10/12] Link stage 2 tools dynamically to libstd + +--- + src/bootstrap/tool.rs | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/src/bootstrap/tool.rs b/src/bootstrap/tool.rs +index edcd68d010e..b5acf43bba7 100644 +--- a/src/bootstrap/tool.rs ++++ b/src/bootstrap/tool.rs +@@ -209,7 +209,9 @@ pub fn prepare_tool_cargo( + + // We don't want to build tools dynamically as they'll be running across + // stages and such and it's just easier if they're not dynamically linked. +- cargo.env("RUSTC_NO_PREFER_DYNAMIC", "1"); ++ if compiler.stage < 2 { ++ cargo.env("RUSTC_NO_PREFER_DYNAMIC", "1"); ++ } + + if source_type == SourceType::Submodule { + cargo.env("RUSTC_EXTERNAL_TOOL", "1"); +-- +2.21.0 + diff --git a/user/rust/0011-Link-stage-2-tools-dynamically-to-libstd.patch b/user/rust/0011-Link-stage-2-tools-dynamically-to-libstd.patch deleted file mode 100644 index e46aeac77..000000000 --- a/user/rust/0011-Link-stage-2-tools-dynamically-to-libstd.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 91549d8c4f37fd0756d2b95fffcb7055acb663d1 Mon Sep 17 00:00:00 2001 -From: Samuel Holland -Date: Mon, 24 Sep 2018 23:42:23 +0000 -Subject: [PATCH 11/13] Link stage 2 tools dynamically to libstd - ---- - src/bootstrap/tool.rs | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/src/bootstrap/tool.rs b/src/bootstrap/tool.rs -index 23775a91e4..d79fede548 100644 ---- a/src/bootstrap/tool.rs -+++ b/src/bootstrap/tool.rs -@@ -208,7 +208,9 @@ pub fn prepare_tool_cargo( - - // We don't want to build tools dynamically as they'll be running across - // stages and such and it's just easier if they're not dynamically linked. -- cargo.env("RUSTC_NO_PREFER_DYNAMIC", "1"); -+ if compiler.stage < 2 { -+ cargo.env("RUSTC_NO_PREFER_DYNAMIC", "1"); -+ } - - if source_type == SourceType::Submodule { - cargo.env("RUSTC_EXTERNAL_TOOL", "1"); --- -2.21.0 - diff --git a/user/rust/0011-Move-debugger-scripts-to-usr-share-rust.patch b/user/rust/0011-Move-debugger-scripts-to-usr-share-rust.patch new file mode 100644 index 000000000..375eb7545 --- /dev/null +++ b/user/rust/0011-Move-debugger-scripts-to-usr-share-rust.patch @@ -0,0 +1,53 @@ +From 06a3f0608f996cc2791041a3f9a72f224223de43 Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Mon, 17 Sep 2018 02:09:10 +0000 +Subject: [PATCH 11/12] Move debugger scripts to /usr/share/rust + +--- + src/bootstrap/dist.rs | 2 +- + src/etc/rust-gdb | 2 +- + src/etc/rust-lldb | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/src/bootstrap/dist.rs b/src/bootstrap/dist.rs +index b0616ff6691..7a1225a9346 100644 +--- a/src/bootstrap/dist.rs ++++ b/src/bootstrap/dist.rs +@@ -597,7 +597,7 @@ impl Step for DebuggerScripts { + fn run(self, builder: &Builder<'_>) { + let host = self.host; + let sysroot = self.sysroot; +- let dst = sysroot.join("lib/rustlib/etc"); ++ let dst = sysroot.join("share/rust"); + t!(fs::create_dir_all(&dst)); + let cp_debugger_script = |file: &str| { + builder.install(&builder.src.join("src/etc/").join(file), &dst, 0o644); +diff --git a/src/etc/rust-gdb b/src/etc/rust-gdb +index 23ba93da8e5..dc51b16c572 100755 +--- a/src/etc/rust-gdb ++++ b/src/etc/rust-gdb +@@ -4,7 +4,7 @@ set -e + + # Find out where the pretty printer Python module is + RUSTC_SYSROOT=`rustc --print=sysroot` +-GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/lib/rustlib/etc" ++GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/share/rust" + + # Run GDB with the additional arguments that load the pretty printers + # Set the environment variable `RUST_GDB` to overwrite the call to a +diff --git a/src/etc/rust-lldb b/src/etc/rust-lldb +index 424302d495f..460e1192100 100755 +--- a/src/etc/rust-lldb ++++ b/src/etc/rust-lldb +@@ -26,7 +26,7 @@ display the contents of local variables!" + fi + + # Prepare commands that will be loaded before any file on the command line has been loaded +-script_import="command script import \"$RUSTC_SYSROOT/lib/rustlib/etc/lldb_rust_formatters.py\"" ++script_import="command script import \"$RUSTC_SYSROOT/share/rust/lldb_rust_formatters.py\"" + category_definition="type summary add --no-value --python-function lldb_rust_formatters.print_val -x \".*\" --category Rust" + category_enable="type category enable Rust" + +-- +2.21.0 + diff --git a/user/rust/0012-Add-foxkit-target-specs.patch b/user/rust/0012-Add-foxkit-target-specs.patch new file mode 100644 index 000000000..119722688 --- /dev/null +++ b/user/rust/0012-Add-foxkit-target-specs.patch @@ -0,0 +1,148 @@ +From 5b43a025fae81fa1356e3331bff8cba8e3f58013 Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Mon, 17 Sep 2018 02:29:06 +0000 +Subject: [PATCH 12/12] 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 844edbb946a..2d7746c871c 100644 +--- a/src/librustc_target/spec/mod.rs ++++ b/src/librustc_target/spec/mod.rs +@@ -328,6 +328,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 + diff --git a/user/rust/0012-Move-debugger-scripts-to-usr-share-rust.patch b/user/rust/0012-Move-debugger-scripts-to-usr-share-rust.patch deleted file mode 100644 index 449abc0cf..000000000 --- a/user/rust/0012-Move-debugger-scripts-to-usr-share-rust.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 6ebe128c3440ee224fed5e0a2b8897df21ed55f2 Mon Sep 17 00:00:00 2001 -From: Samuel Holland -Date: Mon, 17 Sep 2018 02:09:10 +0000 -Subject: [PATCH 12/13] Move debugger scripts to /usr/share/rust - ---- - src/bootstrap/dist.rs | 2 +- - src/etc/rust-gdb | 2 +- - src/etc/rust-lldb | 2 +- - 3 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/src/bootstrap/dist.rs b/src/bootstrap/dist.rs -index 61a7705bd6..920e0ad1f1 100644 ---- a/src/bootstrap/dist.rs -+++ b/src/bootstrap/dist.rs -@@ -597,7 +597,7 @@ impl Step for DebuggerScripts { - fn run(self, builder: &Builder<'_>) { - let host = self.host; - let sysroot = self.sysroot; -- let dst = sysroot.join("lib/rustlib/etc"); -+ let dst = sysroot.join("share/rust"); - t!(fs::create_dir_all(&dst)); - let cp_debugger_script = |file: &str| { - builder.install(&builder.src.join("src/etc/").join(file), &dst, 0o644); -diff --git a/src/etc/rust-gdb b/src/etc/rust-gdb -index 23ba93da8e..dc51b16c57 100755 ---- a/src/etc/rust-gdb -+++ b/src/etc/rust-gdb -@@ -4,7 +4,7 @@ set -e - - # Find out where the pretty printer Python module is - RUSTC_SYSROOT=`rustc --print=sysroot` --GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/lib/rustlib/etc" -+GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/share/rust" - - # Run GDB with the additional arguments that load the pretty printers - # Set the environment variable `RUST_GDB` to overwrite the call to a -diff --git a/src/etc/rust-lldb b/src/etc/rust-lldb -index 424302d495..460e119210 100755 ---- a/src/etc/rust-lldb -+++ b/src/etc/rust-lldb -@@ -26,7 +26,7 @@ display the contents of local variables!" - fi - - # Prepare commands that will be loaded before any file on the command line has been loaded --script_import="command script import \"$RUSTC_SYSROOT/lib/rustlib/etc/lldb_rust_formatters.py\"" -+script_import="command script import \"$RUSTC_SYSROOT/share/rust/lldb_rust_formatters.py\"" - category_definition="type summary add --no-value --python-function lldb_rust_formatters.print_val -x \".*\" --category Rust" - category_enable="type category enable Rust" - --- -2.21.0 - diff --git a/user/rust/0013-Add-foxkit-target-specs.patch b/user/rust/0013-Add-foxkit-target-specs.patch deleted file mode 100644 index c0e8cd4a2..000000000 --- a/user/rust/0013-Add-foxkit-target-specs.patch +++ /dev/null @@ -1,148 +0,0 @@ -From fcf56fefa4b75f24430f69477d8cca8ee758fa41 Mon Sep 17 00:00:00 2001 -From: Samuel Holland -Date: Mon, 17 Sep 2018 02:29:06 +0000 -Subject: [PATCH 13/13] 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 0000000000..9ba8bc1deb ---- /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 0000000000..5a88f77896 ---- /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 0000000000..f0c4ffbf58 ---- /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 46fefd78f4..7cdcb319c6 100644 ---- a/src/librustc_target/spec/mod.rs -+++ b/src/librustc_target/spec/mod.rs -@@ -329,6 +329,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 0000000000..b105aa247e ---- /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 0000000000..a425f472aa ---- /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 0000000000..40adbd77b3 ---- /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 - diff --git a/user/rust/0030-libc-linkage.patch b/user/rust/0030-libc-linkage.patch index 2454acdb3..a54303b8b 100644 --- a/user/rust/0030-libc-linkage.patch +++ b/user/rust/0030-libc-linkage.patch @@ -1,5 +1,5 @@ ---- rustc-1.35.0-src/vendor/libc/src/lib.rs -+++ rustc-1.35.0-src/vendor/libc/src/lib.rs +--- rustc-1.36.0-src/vendor/libc/src/lib.rs ++++ rustc-1.36.0-src/vendor/libc/src/lib.rs @@ -26,6 +26,7 @@ #![deny(missing_copy_implementations, safe_packed_borrows)] #![no_std] @@ -8,8 +8,8 @@ #[macro_use] mod macros; ---- rustc-1.35.0-src/vendor/libc/src/unix/mod.rs -+++ rustc-1.35.0-src/vendor/libc/src/unix/mod.rs +--- rustc-1.36.0-src/vendor/libc/src/unix/mod.rs ++++ rustc-1.36.0-src/vendor/libc/src/unix/mod.rs @@ -307,11 +307,11 @@ cfg_if! { // cargo build, don't pull in anything extra as the libstd dep // already pulls in all libs. @@ -25,9 +25,9 @@ extern {} } else if #[cfg(target_os = "emscripten")] { #[link(name = "c")] ---- rustc-1.35.0-src/vendor/libc/.cargo-checksum.json -+++ rustc-1.35.0-src/vendor/libc/.cargo-checksum.json +--- rustc-1.36.0-src/vendor/libc/.cargo-checksum.json ++++ rustc-1.36.0-src/vendor/libc/.cargo-checksum.json @@ -1 +1 @@ --{"files":{"CONTRIBUTING.md":"abc79e7f6c3eee37e21baca32847b6709c973f4995b32892e80deb56b73c9ac5","Cargo.toml":"c150fb3c5d9159cce669ff588684190f7b177d3aec39c543625a714d6630b9e5","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"35582cfa483e7676b25ae4a07064a19443f4942f5e60e43b91632fcd6ae95156","build.rs":"e9b7364366a5b4caa9daa436ab8a3469532fe63d5fae4d3b2e5ff59d32ff3f3a","rustfmt.toml":"8a654d5787585ca8f2c20580737336fc327f411a07b0dbd4870adf6e9bdf624f","src/cloudabi/aarch64.rs":"b8550bf1fd7344972aa4db29441486f39f31482d0327534981dbb75959c29114","src/cloudabi/arm.rs":"c197e2781c2839808bd6fcef219a29705b27b992d3ef920e9cf6ac96e2022bbf","src/cloudabi/mod.rs":"037c1a3160ae3bc336f6f7135476704e7f5e834e4039fa02b37f03b507118945","src/cloudabi/x86.rs":"33eb97f272d2201f3838ae74d444583c7de8f67856852ca375293b20bbd05636","src/cloudabi/x86_64.rs":"400d85d4fe39e26cf2e6ece9ee31c75fe9e88c4bcf4d836ca9f765c05c9c5be3","src/fuchsia/aarch64.rs":"40dce617877e606e92353491e1913711b1ecfa510bb983156f4a8460f490419e","src/fuchsia/align.rs":"9ca6271f2cbb0e6ca3b48ff6898ecee31c89b3c8388ae20be63e457aabad13a5","src/fuchsia/mod.rs":"fcadc9203451d5c04c36044f8b4cda7f64815c180446e87dbd02fbf7e6fda0f2","src/fuchsia/no_align.rs":"56868534e4ed3f94a27ed39c42f01210c8ecfdbafd4e27679860fbc65a2ae8de","src/fuchsia/x86_64.rs":"911d1249370cf1b0b7b38960cae28af1276f0f614cfcbf5174dbaa38be3dff1d","src/hermit/aarch64.rs":"86048676e335944c37a63d0083d0f368ae10ceccefeed9debb3bbe08777fc682","src/hermit/mod.rs":"9d764e53df81416a5182b71a26402d2071fc0c15160103b6670b6b268fc356da","src/hermit/x86_64.rs":"ab832b7524e5fb15c49ff7431165ab1a37dc4667ae0b58e8306f4c539bfa110c","src/lib.rs":"b0d525e3da42b1fde74356f3856e9054254eaefb260c2da8a253b025754c8770","src/macros.rs":"8232e284068d34336713535595fad3c910093346be32e72bde3d3d03327ec6b8","src/redox/align.rs":"2cdc7c826ef7ae61f5171c5ae8c445a743d86f1a7f2d9d7e4ceeec56d6874f65","src/redox/mod.rs":"34f132e794dc25bbb0e3c08b7f87e4508ce62e0aac00acf39dcdb0f246d7dfc0","src/redox/net.rs":"351960c3a3ad9b296fe43533cac429434e0872c8cca5ad5047dce79d82e009ee","src/redox/no_align.rs":"c06e95373b9088266e0b14bba0954eef95f93fb2b01d951855e382d22de78e53","src/sgx.rs":"7ff2fbf3e5ad1c880014d68e012f4381a9b9140d13089193b9fba07a7f27c352","src/switch.rs":"fe1414ca053b73cf8a5f54448e807abe81c776c6ac0dfe47ea7772c8140f50b6","src/unix/align.rs":"2cdc7c826ef7ae61f5171c5ae8c445a743d86f1a7f2d9d7e4ceeec56d6874f65","src/unix/bsd/apple/b32.rs":"0095a17e49fa423cab8644c722a375b88f5c0cf56fa456b549738d98131bb2f9","src/unix/bsd/apple/b64.rs":"99fbd3e6d2c969080631e23f58deffa51cb3f42b7a08395b49556f19bb40d4e1","src/unix/bsd/apple/mod.rs":"e1959b482dc3c1703eb032b5d6e269c434326dc3eae9f99bb88d51c732cd3df0","src/unix/bsd/freebsdlike/dragonfly/mod.rs":"2cb0a5d10a3c5721d10209ad7ddc59f6756b2c1d4bc89450988053efad788eb6","src/unix/bsd/freebsdlike/freebsd/aarch64.rs":"4dcd712c0dd5470171746071a176391f937de7865dd0792173284992d9e3f2c7","src/unix/bsd/freebsdlike/freebsd/arm.rs":"84cf36223f0229cb383036563a4902731543e89b37e4dfe2f450cced566d8545","src/unix/bsd/freebsdlike/freebsd/mod.rs":"0752dc1097fd5e94aabfe7b6d4ead2b94e5c0540e2cd3c8efee883bba13e1a0c","src/unix/bsd/freebsdlike/freebsd/powerpc64.rs":"9873f41843cbf066f6ffab8eeb63115095f81ce9fa8f337b95ec871e40c6565d","src/unix/bsd/freebsdlike/freebsd/x86.rs":"716cb67cd0aea66d4a8e40470d32b55cbfafddf75edd34a90f70d518c8c75457","src/unix/bsd/freebsdlike/freebsd/x86_64.rs":"dd3d8a546730f09b1ef0dfeeb20244eef01d1b4028799b28b3a0c33ae05d5002","src/unix/bsd/freebsdlike/mod.rs":"2938bb8b0a0f1d66912bdb4bac3e59863bd90787fe49e1d3a522098acfdb2b7a","src/unix/bsd/mod.rs":"0e92970853a9efbb51a17b9cb8009eb4e9a04cbf12d0e315659d240812c1e760","src/unix/bsd/netbsdlike/mod.rs":"77b85ecd2187df55466663f6af624416d9c99922065c6fbd0438d5b7063db89c","src/unix/bsd/netbsdlike/netbsd/aarch64.rs":"b38fc046f9a40fea28bd26328b96629f4d5d63d7524936bd6af1865d401a8716","src/unix/bsd/netbsdlike/netbsd/arm.rs":"58cdbb70b0d6f536551f0f3bb3725d2d75c4690db12c26c034e7d6ec4a924452","src/unix/bsd/netbsdlike/netbsd/mod.rs":"75adb8d6ee202d50487913c245e1a880447582f45e1ef6339743305a13fb5719","src/unix/bsd/netbsdlike/netbsd/powerpc.rs":"ee7ff5d89d0ed22f531237b5059aa669df93a3b5c489fa641465ace8d405bf41","src/unix/bsd/netbsdlike/netbsd/sparc64.rs":"9489f4b3e4566f43bb12dfb92238960613dac7f6a45cc13068a8d152b902d7d9","src/unix/bsd/netbsdlike/netbsd/x86.rs":"20692320e36bfe028d1a34d16fe12ca77aa909cb02bda167376f98f1a09aefe7","src/unix/bsd/netbsdlike/netbsd/x86_64.rs":"135509edeaf3fb3f102d89d51ff1a8f82323497336a8dc7e1f0f23b5c2434b73","src/unix/bsd/netbsdlike/openbsdlike/bitrig/mod.rs":"51dd68ca3c3eab0f1fe496b0dc12ad8b85f8cf964af0c2c95ab9834ad03938a8","src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86.rs":"bd251a102bed65d5cb3459275f6ec3310fe5803ff4c9651212115548f86256d0","src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86_64.rs":"6e6f15e81597d85d83ca0eeb154e4f8b8e7f9cbb6a9cfa176601f78642ef94f9","src/unix/bsd/netbsdlike/openbsdlike/mod.rs":"c8d18b725c62c2f1a3c5e42d875e1a3b167c13a1bd6ae3d35f35a6ec29402f81","src/unix/bsd/netbsdlike/openbsdlike/openbsd/aarch64.rs":"ee0057fb97a5e16e46e0f8e4a215f6141b68ea75dd6cb5d53166bee2431082e2","src/unix/bsd/netbsdlike/openbsdlike/openbsd/mod.rs":"a3fb2cfc0e100c860dff1674a90693d57e66b7f12861155ceb42c2de372454bd","src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86.rs":"1201371a662cb3515ebb42676cdca9199da7bf4d7c8f90b56f00db03a9fc61f7","src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86_64.rs":"26ef6f50740fad5bb722e0f30025c369c287b2204489682319f7b24fce6de98d","src/unix/haiku/b32.rs":"69ae47fc52c6880e85416b4744500d5655c9ec6131cb737f3b649fceaadce15a","src/unix/haiku/b64.rs":"73e64db09275a8da8d50a13cce2cfa2b136036ddf3a930d2939f337fc995900b","src/unix/haiku/mod.rs":"b451e320e5c98d6b2e7fcb804e2be6669783510011ebd8dea27d64acbf955774","src/unix/hermit/aarch64.rs":"86048676e335944c37a63d0083d0f368ae10ceccefeed9debb3bbe08777fc682","src/unix/hermit/mod.rs":"d97797fe66dd43c61f6f895596f6a57145b4c9ef61edd93c8ff9b497a2d28411","src/unix/hermit/x86_64.rs":"ab832b7524e5fb15c49ff7431165ab1a37dc4667ae0b58e8306f4c539bfa110c","src/unix/mod.rs":"f9a63de7c9566cdaa970daeb3828887f7b2d8bf090da86be1a15c32288ae3da3","src/unix/newlib/aarch64/mod.rs":"c408a990f22fb4292a824f38367e9b517e6e6f8623328397ee631cc88b3d1f7d","src/unix/newlib/align.rs":"04e9b1ac6ca4af24fe5170385249fd64039ebf7f4817c5ceed3a303f3bc8a4aa","src/unix/newlib/arm/mod.rs":"2b6dba2e697ab9b4f4bc4dd5f28057249e9b596d1cb395a9322ec87605c4a5c4","src/unix/newlib/mod.rs":"e73d1b49662581382c91b3d4615d21812df58bf5477a3eba5c1df8a4c00a1c43","src/unix/newlib/no_align.rs":"7123dcec13604a11b7765c380ff3a4d0da19c39f4b03919de7857723c0cf1502","src/unix/no_align.rs":"c06e95373b9088266e0b14bba0954eef95f93fb2b01d951855e382d22de78e53","src/unix/notbsd/android/b32/arm.rs":"3625a32c7e58cfe683a53486fbe3d42d4e28f00bea31e19cb46ed2bb0b6a140b","src/unix/notbsd/android/b32/mod.rs":"05a714a785fa94a5131af3d59612ce1e9a5823b3327eb2a23de8ad0ce125c377","src/unix/notbsd/android/b32/x86.rs":"ae2b7f1d6278caddc007749bb1d09ca33f7593478a0fd7fe98b457dae86c7814","src/unix/notbsd/android/b64/aarch64.rs":"63d65629d79371814910f691672ef593d20244ee09be26f1ebe07ee6212d0163","src/unix/notbsd/android/b64/mod.rs":"d3bcb20e70d29a450577c09706bb520fab09d0cb3102755736867bf8a957319c","src/unix/notbsd/android/b64/x86_64.rs":"5547aef8dcbaa5a932559f34606fd8d89f6c9c15173d2b1412c12d39b3c1045f","src/unix/notbsd/android/mod.rs":"87dcb5bb8edf9ca2a7e7715f28c44c1330f15419d6d4f9422a81a61b6cf27a8c","src/unix/notbsd/emscripten/align.rs":"dee06bccb5f1a58bd498468f204b8f1d8f2c2a536c595d31e730330a79af7ea5","src/unix/notbsd/emscripten/mod.rs":"42947782f571b56cc1b1c1f4364bb35519bcc44ab8aca53bb13bfd46904de1e0","src/unix/notbsd/emscripten/no_align.rs":"f3960b1d6ede1f8f9d51407a3de5337d44dd5d954e1a4c2bf0ea11e76f2629da","src/unix/notbsd/linux/align.rs":"f2520d03b411519161eaaf043f1948b3279509a3f272b2958bca1d1aeda0434d","src/unix/notbsd/linux/mips/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/notbsd/linux/mips/mips32.rs":"96153abc38b10309e64cb49b1a1e4107be70dbc40bc54ba0372a4573b098b514","src/unix/notbsd/linux/mips/mips64.rs":"9bd96aa81cb0f536c3607d0a2906f4be7a44c3f89e40d5955a898835f04f0e15","src/unix/notbsd/linux/mips/mod.rs":"9a67a2f4043907a50a43569c06ffb4890aefa8db1c26a8737c6bb4bd3e39d90e","src/unix/notbsd/linux/mips/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/notbsd/linux/mod.rs":"895c6d0c1ee5436592e35b4dd87ea361ab81b750d45250b0ff850ac1cef4750d","src/unix/notbsd/linux/musl/b32/arm.rs":"fdf170e03812072785ec531f1ae810d0c4feb9b29d0c316681b9f7affe1262c0","src/unix/notbsd/linux/musl/b32/mips.rs":"afa4981d93f29b3fb0083a73ce1323f7dce1392f90d5cf1966b1fae10d510033","src/unix/notbsd/linux/musl/b32/mod.rs":"540928f168f145c136f9dd729ffa12b9d1838d9fe664fc642365d17d7fae648f","src/unix/notbsd/linux/musl/b32/powerpc.rs":"16c615770a96f155540511f58b5a8070c9c7a43e12bdfed83996690e7558bcb5","src/unix/notbsd/linux/musl/b32/x86.rs":"adf8bb67b47995760aab14f04ae671ebd8ecca5579e90314612f46cb79b30cc2","src/unix/notbsd/linux/musl/b64/aarch64.rs":"d98643408c2837387988f78adc95c90ad21196a6f8f879e3d33d7e8ccf612640","src/unix/notbsd/linux/musl/b64/mod.rs":"d9285cd705e2e92552a08c9aa69b810e7e1bd0e9da6edf069c678af285579661","src/unix/notbsd/linux/musl/b64/powerpc64.rs":"544d8a7f6d6d84143df8a4c3537c9a3a36bf3d338d7a1c15689b94492498d8d7","src/unix/notbsd/linux/musl/b64/x86_64.rs":"19197260a6d06ee521a5aa40a1860b7be33176d0f52bc92d56165fc42729cbd5","src/unix/notbsd/linux/musl/mod.rs":"13d766411fa206b987567e7c802dfe7585e6b7f002fe13ec0fbc810e522b7e2d","src/unix/notbsd/linux/no_align.rs":"7a1cc536b26c22019d7dab6b6db3a8c9edbb753d3f37a7985c30d8894c2c6b06","src/unix/notbsd/linux/other/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/notbsd/linux/other/b32/arm.rs":"d9892f7350b2978335f734f1cd2d7fed60f0f2e66aa05bee3f69549c031f8b14","src/unix/notbsd/linux/other/b32/mod.rs":"26211878c6481861e11393625620edaa0700cac41f55f0118c0f0bd42c1b7520","src/unix/notbsd/linux/other/b32/powerpc.rs":"253fcd2f9978525285be1903cc08f3fec2dc3b12d1660a33e2995b4f6b810d1c","src/unix/notbsd/linux/other/b32/x86.rs":"fea38039a1908ddeb90672b8ef246c743eec6758663a79aea401e21ef40a736d","src/unix/notbsd/linux/other/b64/aarch64.rs":"1124ab5e974718b94fa40ae0f1772fb1c537910ef3e018b7c6c94a38b83dd742","src/unix/notbsd/linux/other/b64/mod.rs":"63e1a3fdf5f4d1b9820934ab344c91aed5e458e7e05908535d2e942d51a08bf8","src/unix/notbsd/linux/other/b64/not_x32.rs":"fa8636fb93eab230ed53bdec0a06f5b81d6d982cc0800103563c8c1eefcdb2d9","src/unix/notbsd/linux/other/b64/powerpc64.rs":"a771d982ed8a9458e1f2f039f959b5075b22443159875ba5612eebba96661c24","src/unix/notbsd/linux/other/b64/sparc64.rs":"0caffe5924886f3aed187531dfe78189b3df40adb96782ec4b471647ff83e9b1","src/unix/notbsd/linux/other/b64/x32.rs":"06a26c5120ced30fc015c220799b67c4401be2f13fc6c7361bebd3d37ff4982d","src/unix/notbsd/linux/other/b64/x86_64.rs":"017cb7cf2810bc633e21879a8951a2c10031c500648e5eb4accc6c88b58ecaa3","src/unix/notbsd/linux/other/mod.rs":"a980e9e3853f8e24498d6cd185c38097710757654480ca460f6378ffeeddf5ef","src/unix/notbsd/linux/other/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/notbsd/linux/s390x/align.rs":"a7bdcb18a37a2d91e64d5fad83ea3edc78f5412adb28f77ab077dbb26dd08b2d","src/unix/notbsd/linux/s390x/mod.rs":"b01d158eefce4c31f377b63964d253f9934f7468af35a24474a163ad3725796a","src/unix/notbsd/linux/s390x/no_align.rs":"4a18e3875698c85229599225ac3401a2a40da87e77b2ad4ef47c6fcd5a24ed30","src/unix/notbsd/mod.rs":"5cfdcf78b70b4e4ef4a3733cac364a0bc2512dee798f897a8db7d78d4dd194a6","src/unix/solarish/compat.rs":"8db2a43eafbd3504e9eb9e8f18416c57d947798871bd45be3e2fb9946e292610","src/unix/solarish/mod.rs":"c6a740dac9af99321f48d5c9e86c6a4f5dcc611c413263881764f7121c1f7e9d","src/unix/uclibc/align.rs":"5607180357a9e3d87163e478116b45c7ece391d8366d65ff856cdf3e849452d7","src/unix/uclibc/arm/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/uclibc/arm/mod.rs":"66d54a7028a422fe331028441d1b1f18cf34bb2deff2a9e5220384b6e10dcc40","src/unix/uclibc/arm/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/uclibc/mips/mips32/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/uclibc/mips/mips32/mod.rs":"d1a1af63b583b170d5c94b46a04589a11b9d4f8dc658ab8c74302bae656d0e85","src/unix/uclibc/mips/mips32/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/uclibc/mips/mips64/align.rs":"a7bdcb18a37a2d91e64d5fad83ea3edc78f5412adb28f77ab077dbb26dd08b2d","src/unix/uclibc/mips/mips64/mod.rs":"03f3bad1c681e6fde4a8ed999ce1d38313166c17d35eded66bd6b4f8387efeb7","src/unix/uclibc/mips/mips64/no_align.rs":"bf11b59caa173a6d94d86f42a8de9c5682f798647fba3a17169214b59ab467fe","src/unix/uclibc/mips/mod.rs":"2d76e6cfeb2b7f7c59231a6e099f1aed811a45659e62153aaf00c220b9488a9d","src/unix/uclibc/mod.rs":"924f95073f77047b1f72de3d933852d1df13b19906a63c5974a64032f1bb772c","src/unix/uclibc/no_align.rs":"3f28637046524618adaa1012e26cb7ffe94b9396e6b518cccdc69d59f274d709","src/unix/uclibc/x86_64/align.rs":"26e48fc79dbdeee4408ae8e071aa90e1be34ccdf0c135689b805aa4abd568e5e","src/unix/uclibc/x86_64/l4re.rs":"bb31053d6403091e11f95ac2203982f279f8b984a19adf30796878c45fdd8c25","src/unix/uclibc/x86_64/mod.rs":"df78de7e0234192c0559b9820c0034a24d72a0820d361f9aad05a9eac36e80ff","src/unix/uclibc/x86_64/no_align.rs":"b308f7b110caf7405b57186882cfc4804caae49a8287f8ab612ec8548467f2f4","src/unix/uclibc/x86_64/other.rs":"42c3f71e58cabba373f6a55a623f3c31b85049eb64824c09c2b082b3b2d6a0a8","src/wasi.rs":"84e88b124249816db0976cda78515af3ee3eedacbcd69ae388dc2a6bc757dcd4","src/windows/gnu.rs":"4d9033162cc6f7d245256c7b165c1ec18a741771fd9b99a55b421e8d14978599","src/windows/mod.rs":"2761f3f80c8af5c04e685af8ac3a2bc8c7d6de91cbad9b96a3a6dae67457a891","src/windows/msvc.rs":"8f46cf66883c794175609a3b2bafaa094d0ba63eb6720ef1b84b175603f1074f"},"package":"bedcc7a809076656486ffe045abeeac163da1b558e963a31e29fbfbeba916917"} +-{"files":{"CONTRIBUTING.md":"abc79e7f6c3eee37e21baca32847b6709c973f4995b32892e80deb56b73c9ac5","Cargo.toml":"4f566bfdc168610f37b79d8671c1f9c6f084e0b6cfd40083eed544273e4ab1af","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"35582cfa483e7676b25ae4a07064a19443f4942f5e60e43b91632fcd6ae95156","build.rs":"e9b7364366a5b4caa9daa436ab8a3469532fe63d5fae4d3b2e5ff59d32ff3f3a","rustfmt.toml":"8a654d5787585ca8f2c20580737336fc327f411a07b0dbd4870adf6e9bdf624f","src/cloudabi/aarch64.rs":"b8550bf1fd7344972aa4db29441486f39f31482d0327534981dbb75959c29114","src/cloudabi/arm.rs":"c197e2781c2839808bd6fcef219a29705b27b992d3ef920e9cf6ac96e2022bbf","src/cloudabi/mod.rs":"037c1a3160ae3bc336f6f7135476704e7f5e834e4039fa02b37f03b507118945","src/cloudabi/x86.rs":"33eb97f272d2201f3838ae74d444583c7de8f67856852ca375293b20bbd05636","src/cloudabi/x86_64.rs":"400d85d4fe39e26cf2e6ece9ee31c75fe9e88c4bcf4d836ca9f765c05c9c5be3","src/fuchsia/aarch64.rs":"40dce617877e606e92353491e1913711b1ecfa510bb983156f4a8460f490419e","src/fuchsia/align.rs":"9ca6271f2cbb0e6ca3b48ff6898ecee31c89b3c8388ae20be63e457aabad13a5","src/fuchsia/mod.rs":"db1936ed9e5ac6bd1c04329cbf12feb6842e2a00ca528ff8ccaf7c3b0a5ebe52","src/fuchsia/no_align.rs":"56868534e4ed3f94a27ed39c42f01210c8ecfdbafd4e27679860fbc65a2ae8de","src/fuchsia/x86_64.rs":"911d1249370cf1b0b7b38960cae28af1276f0f614cfcbf5174dbaa38be3dff1d","src/hermit/aarch64.rs":"86048676e335944c37a63d0083d0f368ae10ceccefeed9debb3bbe08777fc682","src/hermit/mod.rs":"9d764e53df81416a5182b71a26402d2071fc0c15160103b6670b6b268fc356da","src/hermit/x86_64.rs":"ab832b7524e5fb15c49ff7431165ab1a37dc4667ae0b58e8306f4c539bfa110c","src/lib.rs":"c9a1ddaaae192d0a40eea37b8402eb506a895711bcf493a7af5a9dfc88fac733","src/macros.rs":"8232e284068d34336713535595fad3c910093346be32e72bde3d3d03327ec6b8","src/redox/align.rs":"2cdc7c826ef7ae61f5171c5ae8c445a743d86f1a7f2d9d7e4ceeec56d6874f65","src/redox/mod.rs":"34f132e794dc25bbb0e3c08b7f87e4508ce62e0aac00acf39dcdb0f246d7dfc0","src/redox/net.rs":"351960c3a3ad9b296fe43533cac429434e0872c8cca5ad5047dce79d82e009ee","src/redox/no_align.rs":"c06e95373b9088266e0b14bba0954eef95f93fb2b01d951855e382d22de78e53","src/sgx.rs":"7ff2fbf3e5ad1c880014d68e012f4381a9b9140d13089193b9fba07a7f27c352","src/switch.rs":"fe1414ca053b73cf8a5f54448e807abe81c776c6ac0dfe47ea7772c8140f50b6","src/unix/align.rs":"2cdc7c826ef7ae61f5171c5ae8c445a743d86f1a7f2d9d7e4ceeec56d6874f65","src/unix/bsd/apple/b32.rs":"0095a17e49fa423cab8644c722a375b88f5c0cf56fa456b549738d98131bb2f9","src/unix/bsd/apple/b64.rs":"99fbd3e6d2c969080631e23f58deffa51cb3f42b7a08395b49556f19bb40d4e1","src/unix/bsd/apple/mod.rs":"d67234bd36d2d2ab84716f597af4245cb01fc92fee362a331ae4e0a4eb723faa","src/unix/bsd/freebsdlike/dragonfly/mod.rs":"2cb0a5d10a3c5721d10209ad7ddc59f6756b2c1d4bc89450988053efad788eb6","src/unix/bsd/freebsdlike/freebsd/aarch64.rs":"4dcd712c0dd5470171746071a176391f937de7865dd0792173284992d9e3f2c7","src/unix/bsd/freebsdlike/freebsd/arm.rs":"84cf36223f0229cb383036563a4902731543e89b37e4dfe2f450cced566d8545","src/unix/bsd/freebsdlike/freebsd/mod.rs":"0752dc1097fd5e94aabfe7b6d4ead2b94e5c0540e2cd3c8efee883bba13e1a0c","src/unix/bsd/freebsdlike/freebsd/powerpc64.rs":"9873f41843cbf066f6ffab8eeb63115095f81ce9fa8f337b95ec871e40c6565d","src/unix/bsd/freebsdlike/freebsd/x86.rs":"716cb67cd0aea66d4a8e40470d32b55cbfafddf75edd34a90f70d518c8c75457","src/unix/bsd/freebsdlike/freebsd/x86_64.rs":"dd3d8a546730f09b1ef0dfeeb20244eef01d1b4028799b28b3a0c33ae05d5002","src/unix/bsd/freebsdlike/mod.rs":"96a4baa8d7145ff29a9269437ce1fd538a18683488d85a677da78e17e070efc0","src/unix/bsd/mod.rs":"c59685127d6f238b9e9c967424c29da51668ab240e4a88962ab058e4498766b3","src/unix/bsd/netbsdlike/mod.rs":"3b32758ba7a5a133b045521c88e74f51d3718e9051f15ed66122d29267a51138","src/unix/bsd/netbsdlike/netbsd/aarch64.rs":"b38fc046f9a40fea28bd26328b96629f4d5d63d7524936bd6af1865d401a8716","src/unix/bsd/netbsdlike/netbsd/arm.rs":"58cdbb70b0d6f536551f0f3bb3725d2d75c4690db12c26c034e7d6ec4a924452","src/unix/bsd/netbsdlike/netbsd/mod.rs":"75adb8d6ee202d50487913c245e1a880447582f45e1ef6339743305a13fb5719","src/unix/bsd/netbsdlike/netbsd/powerpc.rs":"ee7ff5d89d0ed22f531237b5059aa669df93a3b5c489fa641465ace8d405bf41","src/unix/bsd/netbsdlike/netbsd/sparc64.rs":"9489f4b3e4566f43bb12dfb92238960613dac7f6a45cc13068a8d152b902d7d9","src/unix/bsd/netbsdlike/netbsd/x86.rs":"20692320e36bfe028d1a34d16fe12ca77aa909cb02bda167376f98f1a09aefe7","src/unix/bsd/netbsdlike/netbsd/x86_64.rs":"135509edeaf3fb3f102d89d51ff1a8f82323497336a8dc7e1f0f23b5c2434b73","src/unix/bsd/netbsdlike/openbsdlike/bitrig/mod.rs":"51dd68ca3c3eab0f1fe496b0dc12ad8b85f8cf964af0c2c95ab9834ad03938a8","src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86.rs":"bd251a102bed65d5cb3459275f6ec3310fe5803ff4c9651212115548f86256d0","src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86_64.rs":"6e6f15e81597d85d83ca0eeb154e4f8b8e7f9cbb6a9cfa176601f78642ef94f9","src/unix/bsd/netbsdlike/openbsdlike/mod.rs":"c8d18b725c62c2f1a3c5e42d875e1a3b167c13a1bd6ae3d35f35a6ec29402f81","src/unix/bsd/netbsdlike/openbsdlike/openbsd/aarch64.rs":"ee0057fb97a5e16e46e0f8e4a215f6141b68ea75dd6cb5d53166bee2431082e2","src/unix/bsd/netbsdlike/openbsdlike/openbsd/mod.rs":"a3fb2cfc0e100c860dff1674a90693d57e66b7f12861155ceb42c2de372454bd","src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86.rs":"1201371a662cb3515ebb42676cdca9199da7bf4d7c8f90b56f00db03a9fc61f7","src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86_64.rs":"26ef6f50740fad5bb722e0f30025c369c287b2204489682319f7b24fce6de98d","src/unix/haiku/b32.rs":"69ae47fc52c6880e85416b4744500d5655c9ec6131cb737f3b649fceaadce15a","src/unix/haiku/b64.rs":"73e64db09275a8da8d50a13cce2cfa2b136036ddf3a930d2939f337fc995900b","src/unix/haiku/mod.rs":"f3edcb2c6c0f8c68daebb1a17490684eae64a488570d1140bee1c2b384e25677","src/unix/hermit/aarch64.rs":"86048676e335944c37a63d0083d0f368ae10ceccefeed9debb3bbe08777fc682","src/unix/hermit/mod.rs":"d97797fe66dd43c61f6f895596f6a57145b4c9ef61edd93c8ff9b497a2d28411","src/unix/hermit/x86_64.rs":"ab832b7524e5fb15c49ff7431165ab1a37dc4667ae0b58e8306f4c539bfa110c","src/unix/mod.rs":"22a5ba8f3d954d4e0c51fde9369ff5e43db891771681d4d6a7b5b640244e2ed5","src/unix/newlib/aarch64/mod.rs":"c408a990f22fb4292a824f38367e9b517e6e6f8623328397ee631cc88b3d1f7d","src/unix/newlib/align.rs":"04e9b1ac6ca4af24fe5170385249fd64039ebf7f4817c5ceed3a303f3bc8a4aa","src/unix/newlib/arm/mod.rs":"2b6dba2e697ab9b4f4bc4dd5f28057249e9b596d1cb395a9322ec87605c4a5c4","src/unix/newlib/mod.rs":"fb1c25abbcbc82fbb4842e442c9ead2710ccc597f1cce65ac12ad6f4d1f64856","src/unix/newlib/no_align.rs":"7123dcec13604a11b7765c380ff3a4d0da19c39f4b03919de7857723c0cf1502","src/unix/no_align.rs":"c06e95373b9088266e0b14bba0954eef95f93fb2b01d951855e382d22de78e53","src/unix/notbsd/android/b32/arm.rs":"3625a32c7e58cfe683a53486fbe3d42d4e28f00bea31e19cb46ed2bb0b6a140b","src/unix/notbsd/android/b32/mod.rs":"05a714a785fa94a5131af3d59612ce1e9a5823b3327eb2a23de8ad0ce125c377","src/unix/notbsd/android/b32/x86.rs":"ae2b7f1d6278caddc007749bb1d09ca33f7593478a0fd7fe98b457dae86c7814","src/unix/notbsd/android/b64/aarch64.rs":"63d65629d79371814910f691672ef593d20244ee09be26f1ebe07ee6212d0163","src/unix/notbsd/android/b64/mod.rs":"d3bcb20e70d29a450577c09706bb520fab09d0cb3102755736867bf8a957319c","src/unix/notbsd/android/b64/x86_64.rs":"5547aef8dcbaa5a932559f34606fd8d89f6c9c15173d2b1412c12d39b3c1045f","src/unix/notbsd/android/mod.rs":"220b041d7142abb9e54004b8a5468be9afe8ad87c87e1d76f0a05f9671697bca","src/unix/notbsd/emscripten/align.rs":"dee06bccb5f1a58bd498468f204b8f1d8f2c2a536c595d31e730330a79af7ea5","src/unix/notbsd/emscripten/mod.rs":"42947782f571b56cc1b1c1f4364bb35519bcc44ab8aca53bb13bfd46904de1e0","src/unix/notbsd/emscripten/no_align.rs":"f3960b1d6ede1f8f9d51407a3de5337d44dd5d954e1a4c2bf0ea11e76f2629da","src/unix/notbsd/linux/align.rs":"f2520d03b411519161eaaf043f1948b3279509a3f272b2958bca1d1aeda0434d","src/unix/notbsd/linux/mips/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/notbsd/linux/mips/mips32.rs":"96153abc38b10309e64cb49b1a1e4107be70dbc40bc54ba0372a4573b098b514","src/unix/notbsd/linux/mips/mips64.rs":"9bd96aa81cb0f536c3607d0a2906f4be7a44c3f89e40d5955a898835f04f0e15","src/unix/notbsd/linux/mips/mod.rs":"9a67a2f4043907a50a43569c06ffb4890aefa8db1c26a8737c6bb4bd3e39d90e","src/unix/notbsd/linux/mips/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/notbsd/linux/mod.rs":"e3531ef28589e4dfd9861f5bd0ba175200dedb69d48f20842baeb129fd8761e1","src/unix/notbsd/linux/musl/b32/arm.rs":"fdf170e03812072785ec531f1ae810d0c4feb9b29d0c316681b9f7affe1262c0","src/unix/notbsd/linux/musl/b32/mips.rs":"afa4981d93f29b3fb0083a73ce1323f7dce1392f90d5cf1966b1fae10d510033","src/unix/notbsd/linux/musl/b32/mod.rs":"540928f168f145c136f9dd729ffa12b9d1838d9fe664fc642365d17d7fae648f","src/unix/notbsd/linux/musl/b32/powerpc.rs":"16c615770a96f155540511f58b5a8070c9c7a43e12bdfed83996690e7558bcb5","src/unix/notbsd/linux/musl/b32/x86.rs":"adf8bb67b47995760aab14f04ae671ebd8ecca5579e90314612f46cb79b30cc2","src/unix/notbsd/linux/musl/b64/aarch64.rs":"d98643408c2837387988f78adc95c90ad21196a6f8f879e3d33d7e8ccf612640","src/unix/notbsd/linux/musl/b64/mod.rs":"d9285cd705e2e92552a08c9aa69b810e7e1bd0e9da6edf069c678af285579661","src/unix/notbsd/linux/musl/b64/powerpc64.rs":"544d8a7f6d6d84143df8a4c3537c9a3a36bf3d338d7a1c15689b94492498d8d7","src/unix/notbsd/linux/musl/b64/x86_64.rs":"19197260a6d06ee521a5aa40a1860b7be33176d0f52bc92d56165fc42729cbd5","src/unix/notbsd/linux/musl/mod.rs":"13d766411fa206b987567e7c802dfe7585e6b7f002fe13ec0fbc810e522b7e2d","src/unix/notbsd/linux/no_align.rs":"7a1cc536b26c22019d7dab6b6db3a8c9edbb753d3f37a7985c30d8894c2c6b06","src/unix/notbsd/linux/other/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/notbsd/linux/other/b32/arm.rs":"d9892f7350b2978335f734f1cd2d7fed60f0f2e66aa05bee3f69549c031f8b14","src/unix/notbsd/linux/other/b32/mod.rs":"26211878c6481861e11393625620edaa0700cac41f55f0118c0f0bd42c1b7520","src/unix/notbsd/linux/other/b32/powerpc.rs":"253fcd2f9978525285be1903cc08f3fec2dc3b12d1660a33e2995b4f6b810d1c","src/unix/notbsd/linux/other/b32/x86.rs":"fea38039a1908ddeb90672b8ef246c743eec6758663a79aea401e21ef40a736d","src/unix/notbsd/linux/other/b64/aarch64.rs":"1124ab5e974718b94fa40ae0f1772fb1c537910ef3e018b7c6c94a38b83dd742","src/unix/notbsd/linux/other/b64/mod.rs":"63e1a3fdf5f4d1b9820934ab344c91aed5e458e7e05908535d2e942d51a08bf8","src/unix/notbsd/linux/other/b64/not_x32.rs":"fa8636fb93eab230ed53bdec0a06f5b81d6d982cc0800103563c8c1eefcdb2d9","src/unix/notbsd/linux/other/b64/powerpc64.rs":"a771d982ed8a9458e1f2f039f959b5075b22443159875ba5612eebba96661c24","src/unix/notbsd/linux/other/b64/sparc64.rs":"0caffe5924886f3aed187531dfe78189b3df40adb96782ec4b471647ff83e9b1","src/unix/notbsd/linux/other/b64/x32.rs":"06a26c5120ced30fc015c220799b67c4401be2f13fc6c7361bebd3d37ff4982d","src/unix/notbsd/linux/other/b64/x86_64.rs":"017cb7cf2810bc633e21879a8951a2c10031c500648e5eb4accc6c88b58ecaa3","src/unix/notbsd/linux/other/mod.rs":"86d6c4f5a01b4da8cf9bbfa7f6fedbeda1c9b1c0528244ce9033a647cd0567d5","src/unix/notbsd/linux/other/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/notbsd/linux/s390x/align.rs":"a7bdcb18a37a2d91e64d5fad83ea3edc78f5412adb28f77ab077dbb26dd08b2d","src/unix/notbsd/linux/s390x/mod.rs":"b01d158eefce4c31f377b63964d253f9934f7468af35a24474a163ad3725796a","src/unix/notbsd/linux/s390x/no_align.rs":"4a18e3875698c85229599225ac3401a2a40da87e77b2ad4ef47c6fcd5a24ed30","src/unix/notbsd/mod.rs":"8aa3fc4d3879b6897871c55c4cb70ff7a63c399d2409a729cc788f21f987452e","src/unix/solarish/compat.rs":"8db2a43eafbd3504e9eb9e8f18416c57d947798871bd45be3e2fb9946e292610","src/unix/solarish/mod.rs":"0c6d148d84f2fa9feb86b464d30af9c52322553bf321ae4fe27184d274ccbe21","src/unix/uclibc/align.rs":"5607180357a9e3d87163e478116b45c7ece391d8366d65ff856cdf3e849452d7","src/unix/uclibc/arm/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/uclibc/arm/mod.rs":"66d54a7028a422fe331028441d1b1f18cf34bb2deff2a9e5220384b6e10dcc40","src/unix/uclibc/arm/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/uclibc/mips/mips32/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/uclibc/mips/mips32/mod.rs":"d1a1af63b583b170d5c94b46a04589a11b9d4f8dc658ab8c74302bae656d0e85","src/unix/uclibc/mips/mips32/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/uclibc/mips/mips64/align.rs":"a7bdcb18a37a2d91e64d5fad83ea3edc78f5412adb28f77ab077dbb26dd08b2d","src/unix/uclibc/mips/mips64/mod.rs":"03f3bad1c681e6fde4a8ed999ce1d38313166c17d35eded66bd6b4f8387efeb7","src/unix/uclibc/mips/mips64/no_align.rs":"bf11b59caa173a6d94d86f42a8de9c5682f798647fba3a17169214b59ab467fe","src/unix/uclibc/mips/mod.rs":"2d76e6cfeb2b7f7c59231a6e099f1aed811a45659e62153aaf00c220b9488a9d","src/unix/uclibc/mod.rs":"d7c2b44735fe8a892fb05ab888de8311fc1f7a86f3aef818b7ff04fae70447fa","src/unix/uclibc/no_align.rs":"3f28637046524618adaa1012e26cb7ffe94b9396e6b518cccdc69d59f274d709","src/unix/uclibc/x86_64/align.rs":"26e48fc79dbdeee4408ae8e071aa90e1be34ccdf0c135689b805aa4abd568e5e","src/unix/uclibc/x86_64/l4re.rs":"bb31053d6403091e11f95ac2203982f279f8b984a19adf30796878c45fdd8c25","src/unix/uclibc/x86_64/mod.rs":"df78de7e0234192c0559b9820c0034a24d72a0820d361f9aad05a9eac36e80ff","src/unix/uclibc/x86_64/no_align.rs":"b308f7b110caf7405b57186882cfc4804caae49a8287f8ab612ec8548467f2f4","src/unix/uclibc/x86_64/other.rs":"42c3f71e58cabba373f6a55a623f3c31b85049eb64824c09c2b082b3b2d6a0a8","src/wasi.rs":"e322bdc14bf7f8c34de8fc4ea52fd6279bbc9d6c205efa8b9b8925e8b12c4b6c","src/windows/gnu.rs":"4d9033162cc6f7d245256c7b165c1ec18a741771fd9b99a55b421e8d14978599","src/windows/mod.rs":"2761f3f80c8af5c04e685af8ac3a2bc8c7d6de91cbad9b96a3a6dae67457a891","src/windows/msvc.rs":"8f46cf66883c794175609a3b2bafaa094d0ba63eb6720ef1b84b175603f1074f"},"package":"c6785aa7dd976f5fbf3b71cfd9cd49d7f783c1ff565a858d71031c6c313aa5c6"} \ No newline at end of file -+{"files":{"CONTRIBUTING.md":"abc79e7f6c3eee37e21baca32847b6709c973f4995b32892e80deb56b73c9ac5","Cargo.toml":"c150fb3c5d9159cce669ff588684190f7b177d3aec39c543625a714d6630b9e5","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"35582cfa483e7676b25ae4a07064a19443f4942f5e60e43b91632fcd6ae95156","build.rs":"e9b7364366a5b4caa9daa436ab8a3469532fe63d5fae4d3b2e5ff59d32ff3f3a","rustfmt.toml":"8a654d5787585ca8f2c20580737336fc327f411a07b0dbd4870adf6e9bdf624f","src/cloudabi/aarch64.rs":"b8550bf1fd7344972aa4db29441486f39f31482d0327534981dbb75959c29114","src/cloudabi/arm.rs":"c197e2781c2839808bd6fcef219a29705b27b992d3ef920e9cf6ac96e2022bbf","src/cloudabi/mod.rs":"037c1a3160ae3bc336f6f7135476704e7f5e834e4039fa02b37f03b507118945","src/cloudabi/x86.rs":"33eb97f272d2201f3838ae74d444583c7de8f67856852ca375293b20bbd05636","src/cloudabi/x86_64.rs":"400d85d4fe39e26cf2e6ece9ee31c75fe9e88c4bcf4d836ca9f765c05c9c5be3","src/fuchsia/aarch64.rs":"40dce617877e606e92353491e1913711b1ecfa510bb983156f4a8460f490419e","src/fuchsia/align.rs":"9ca6271f2cbb0e6ca3b48ff6898ecee31c89b3c8388ae20be63e457aabad13a5","src/fuchsia/mod.rs":"fcadc9203451d5c04c36044f8b4cda7f64815c180446e87dbd02fbf7e6fda0f2","src/fuchsia/no_align.rs":"56868534e4ed3f94a27ed39c42f01210c8ecfdbafd4e27679860fbc65a2ae8de","src/fuchsia/x86_64.rs":"911d1249370cf1b0b7b38960cae28af1276f0f614cfcbf5174dbaa38be3dff1d","src/hermit/aarch64.rs":"86048676e335944c37a63d0083d0f368ae10ceccefeed9debb3bbe08777fc682","src/hermit/mod.rs":"9d764e53df81416a5182b71a26402d2071fc0c15160103b6670b6b268fc356da","src/hermit/x86_64.rs":"ab832b7524e5fb15c49ff7431165ab1a37dc4667ae0b58e8306f4c539bfa110c","src/lib.rs":"7e80726ac2e4fe5d1354950e93055120b5e3babc339f0315bf34bc7eb8f4c937","src/macros.rs":"8232e284068d34336713535595fad3c910093346be32e72bde3d3d03327ec6b8","src/redox/align.rs":"2cdc7c826ef7ae61f5171c5ae8c445a743d86f1a7f2d9d7e4ceeec56d6874f65","src/redox/mod.rs":"34f132e794dc25bbb0e3c08b7f87e4508ce62e0aac00acf39dcdb0f246d7dfc0","src/redox/net.rs":"351960c3a3ad9b296fe43533cac429434e0872c8cca5ad5047dce79d82e009ee","src/redox/no_align.rs":"c06e95373b9088266e0b14bba0954eef95f93fb2b01d951855e382d22de78e53","src/sgx.rs":"7ff2fbf3e5ad1c880014d68e012f4381a9b9140d13089193b9fba07a7f27c352","src/switch.rs":"fe1414ca053b73cf8a5f54448e807abe81c776c6ac0dfe47ea7772c8140f50b6","src/unix/align.rs":"2cdc7c826ef7ae61f5171c5ae8c445a743d86f1a7f2d9d7e4ceeec56d6874f65","src/unix/bsd/apple/b32.rs":"0095a17e49fa423cab8644c722a375b88f5c0cf56fa456b549738d98131bb2f9","src/unix/bsd/apple/b64.rs":"99fbd3e6d2c969080631e23f58deffa51cb3f42b7a08395b49556f19bb40d4e1","src/unix/bsd/apple/mod.rs":"e1959b482dc3c1703eb032b5d6e269c434326dc3eae9f99bb88d51c732cd3df0","src/unix/bsd/freebsdlike/dragonfly/mod.rs":"2cb0a5d10a3c5721d10209ad7ddc59f6756b2c1d4bc89450988053efad788eb6","src/unix/bsd/freebsdlike/freebsd/aarch64.rs":"4dcd712c0dd5470171746071a176391f937de7865dd0792173284992d9e3f2c7","src/unix/bsd/freebsdlike/freebsd/arm.rs":"84cf36223f0229cb383036563a4902731543e89b37e4dfe2f450cced566d8545","src/unix/bsd/freebsdlike/freebsd/mod.rs":"0752dc1097fd5e94aabfe7b6d4ead2b94e5c0540e2cd3c8efee883bba13e1a0c","src/unix/bsd/freebsdlike/freebsd/powerpc64.rs":"9873f41843cbf066f6ffab8eeb63115095f81ce9fa8f337b95ec871e40c6565d","src/unix/bsd/freebsdlike/freebsd/x86.rs":"716cb67cd0aea66d4a8e40470d32b55cbfafddf75edd34a90f70d518c8c75457","src/unix/bsd/freebsdlike/freebsd/x86_64.rs":"dd3d8a546730f09b1ef0dfeeb20244eef01d1b4028799b28b3a0c33ae05d5002","src/unix/bsd/freebsdlike/mod.rs":"2938bb8b0a0f1d66912bdb4bac3e59863bd90787fe49e1d3a522098acfdb2b7a","src/unix/bsd/mod.rs":"0e92970853a9efbb51a17b9cb8009eb4e9a04cbf12d0e315659d240812c1e760","src/unix/bsd/netbsdlike/mod.rs":"77b85ecd2187df55466663f6af624416d9c99922065c6fbd0438d5b7063db89c","src/unix/bsd/netbsdlike/netbsd/aarch64.rs":"b38fc046f9a40fea28bd26328b96629f4d5d63d7524936bd6af1865d401a8716","src/unix/bsd/netbsdlike/netbsd/arm.rs":"58cdbb70b0d6f536551f0f3bb3725d2d75c4690db12c26c034e7d6ec4a924452","src/unix/bsd/netbsdlike/netbsd/mod.rs":"75adb8d6ee202d50487913c245e1a880447582f45e1ef6339743305a13fb5719","src/unix/bsd/netbsdlike/netbsd/powerpc.rs":"ee7ff5d89d0ed22f531237b5059aa669df93a3b5c489fa641465ace8d405bf41","src/unix/bsd/netbsdlike/netbsd/sparc64.rs":"9489f4b3e4566f43bb12dfb92238960613dac7f6a45cc13068a8d152b902d7d9","src/unix/bsd/netbsdlike/netbsd/x86.rs":"20692320e36bfe028d1a34d16fe12ca77aa909cb02bda167376f98f1a09aefe7","src/unix/bsd/netbsdlike/netbsd/x86_64.rs":"135509edeaf3fb3f102d89d51ff1a8f82323497336a8dc7e1f0f23b5c2434b73","src/unix/bsd/netbsdlike/openbsdlike/bitrig/mod.rs":"51dd68ca3c3eab0f1fe496b0dc12ad8b85f8cf964af0c2c95ab9834ad03938a8","src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86.rs":"bd251a102bed65d5cb3459275f6ec3310fe5803ff4c9651212115548f86256d0","src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86_64.rs":"6e6f15e81597d85d83ca0eeb154e4f8b8e7f9cbb6a9cfa176601f78642ef94f9","src/unix/bsd/netbsdlike/openbsdlike/mod.rs":"c8d18b725c62c2f1a3c5e42d875e1a3b167c13a1bd6ae3d35f35a6ec29402f81","src/unix/bsd/netbsdlike/openbsdlike/openbsd/aarch64.rs":"ee0057fb97a5e16e46e0f8e4a215f6141b68ea75dd6cb5d53166bee2431082e2","src/unix/bsd/netbsdlike/openbsdlike/openbsd/mod.rs":"a3fb2cfc0e100c860dff1674a90693d57e66b7f12861155ceb42c2de372454bd","src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86.rs":"1201371a662cb3515ebb42676cdca9199da7bf4d7c8f90b56f00db03a9fc61f7","src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86_64.rs":"26ef6f50740fad5bb722e0f30025c369c287b2204489682319f7b24fce6de98d","src/unix/haiku/b32.rs":"69ae47fc52c6880e85416b4744500d5655c9ec6131cb737f3b649fceaadce15a","src/unix/haiku/b64.rs":"73e64db09275a8da8d50a13cce2cfa2b136036ddf3a930d2939f337fc995900b","src/unix/haiku/mod.rs":"b451e320e5c98d6b2e7fcb804e2be6669783510011ebd8dea27d64acbf955774","src/unix/hermit/aarch64.rs":"86048676e335944c37a63d0083d0f368ae10ceccefeed9debb3bbe08777fc682","src/unix/hermit/mod.rs":"d97797fe66dd43c61f6f895596f6a57145b4c9ef61edd93c8ff9b497a2d28411","src/unix/hermit/x86_64.rs":"ab832b7524e5fb15c49ff7431165ab1a37dc4667ae0b58e8306f4c539bfa110c","src/unix/mod.rs":"ca64d5483b17632ac0b1366edaa715f64b1aed696a7e038a7e49b726a22f871f","src/unix/newlib/aarch64/mod.rs":"c408a990f22fb4292a824f38367e9b517e6e6f8623328397ee631cc88b3d1f7d","src/unix/newlib/align.rs":"04e9b1ac6ca4af24fe5170385249fd64039ebf7f4817c5ceed3a303f3bc8a4aa","src/unix/newlib/arm/mod.rs":"2b6dba2e697ab9b4f4bc4dd5f28057249e9b596d1cb395a9322ec87605c4a5c4","src/unix/newlib/mod.rs":"e73d1b49662581382c91b3d4615d21812df58bf5477a3eba5c1df8a4c00a1c43","src/unix/newlib/no_align.rs":"7123dcec13604a11b7765c380ff3a4d0da19c39f4b03919de7857723c0cf1502","src/unix/no_align.rs":"c06e95373b9088266e0b14bba0954eef95f93fb2b01d951855e382d22de78e53","src/unix/notbsd/android/b32/arm.rs":"3625a32c7e58cfe683a53486fbe3d42d4e28f00bea31e19cb46ed2bb0b6a140b","src/unix/notbsd/android/b32/mod.rs":"05a714a785fa94a5131af3d59612ce1e9a5823b3327eb2a23de8ad0ce125c377","src/unix/notbsd/android/b32/x86.rs":"ae2b7f1d6278caddc007749bb1d09ca33f7593478a0fd7fe98b457dae86c7814","src/unix/notbsd/android/b64/aarch64.rs":"63d65629d79371814910f691672ef593d20244ee09be26f1ebe07ee6212d0163","src/unix/notbsd/android/b64/mod.rs":"d3bcb20e70d29a450577c09706bb520fab09d0cb3102755736867bf8a957319c","src/unix/notbsd/android/b64/x86_64.rs":"5547aef8dcbaa5a932559f34606fd8d89f6c9c15173d2b1412c12d39b3c1045f","src/unix/notbsd/android/mod.rs":"87dcb5bb8edf9ca2a7e7715f28c44c1330f15419d6d4f9422a81a61b6cf27a8c","src/unix/notbsd/emscripten/align.rs":"dee06bccb5f1a58bd498468f204b8f1d8f2c2a536c595d31e730330a79af7ea5","src/unix/notbsd/emscripten/mod.rs":"42947782f571b56cc1b1c1f4364bb35519bcc44ab8aca53bb13bfd46904de1e0","src/unix/notbsd/emscripten/no_align.rs":"f3960b1d6ede1f8f9d51407a3de5337d44dd5d954e1a4c2bf0ea11e76f2629da","src/unix/notbsd/linux/align.rs":"f2520d03b411519161eaaf043f1948b3279509a3f272b2958bca1d1aeda0434d","src/unix/notbsd/linux/mips/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/notbsd/linux/mips/mips32.rs":"96153abc38b10309e64cb49b1a1e4107be70dbc40bc54ba0372a4573b098b514","src/unix/notbsd/linux/mips/mips64.rs":"9bd96aa81cb0f536c3607d0a2906f4be7a44c3f89e40d5955a898835f04f0e15","src/unix/notbsd/linux/mips/mod.rs":"9a67a2f4043907a50a43569c06ffb4890aefa8db1c26a8737c6bb4bd3e39d90e","src/unix/notbsd/linux/mips/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/notbsd/linux/mod.rs":"895c6d0c1ee5436592e35b4dd87ea361ab81b750d45250b0ff850ac1cef4750d","src/unix/notbsd/linux/musl/b32/arm.rs":"fdf170e03812072785ec531f1ae810d0c4feb9b29d0c316681b9f7affe1262c0","src/unix/notbsd/linux/musl/b32/mips.rs":"afa4981d93f29b3fb0083a73ce1323f7dce1392f90d5cf1966b1fae10d510033","src/unix/notbsd/linux/musl/b32/mod.rs":"540928f168f145c136f9dd729ffa12b9d1838d9fe664fc642365d17d7fae648f","src/unix/notbsd/linux/musl/b32/powerpc.rs":"16c615770a96f155540511f58b5a8070c9c7a43e12bdfed83996690e7558bcb5","src/unix/notbsd/linux/musl/b32/x86.rs":"adf8bb67b47995760aab14f04ae671ebd8ecca5579e90314612f46cb79b30cc2","src/unix/notbsd/linux/musl/b64/aarch64.rs":"d98643408c2837387988f78adc95c90ad21196a6f8f879e3d33d7e8ccf612640","src/unix/notbsd/linux/musl/b64/mod.rs":"d9285cd705e2e92552a08c9aa69b810e7e1bd0e9da6edf069c678af285579661","src/unix/notbsd/linux/musl/b64/powerpc64.rs":"544d8a7f6d6d84143df8a4c3537c9a3a36bf3d338d7a1c15689b94492498d8d7","src/unix/notbsd/linux/musl/b64/x86_64.rs":"19197260a6d06ee521a5aa40a1860b7be33176d0f52bc92d56165fc42729cbd5","src/unix/notbsd/linux/musl/mod.rs":"13d766411fa206b987567e7c802dfe7585e6b7f002fe13ec0fbc810e522b7e2d","src/unix/notbsd/linux/no_align.rs":"7a1cc536b26c22019d7dab6b6db3a8c9edbb753d3f37a7985c30d8894c2c6b06","src/unix/notbsd/linux/other/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/notbsd/linux/other/b32/arm.rs":"d9892f7350b2978335f734f1cd2d7fed60f0f2e66aa05bee3f69549c031f8b14","src/unix/notbsd/linux/other/b32/mod.rs":"26211878c6481861e11393625620edaa0700cac41f55f0118c0f0bd42c1b7520","src/unix/notbsd/linux/other/b32/powerpc.rs":"253fcd2f9978525285be1903cc08f3fec2dc3b12d1660a33e2995b4f6b810d1c","src/unix/notbsd/linux/other/b32/x86.rs":"fea38039a1908ddeb90672b8ef246c743eec6758663a79aea401e21ef40a736d","src/unix/notbsd/linux/other/b64/aarch64.rs":"1124ab5e974718b94fa40ae0f1772fb1c537910ef3e018b7c6c94a38b83dd742","src/unix/notbsd/linux/other/b64/mod.rs":"63e1a3fdf5f4d1b9820934ab344c91aed5e458e7e05908535d2e942d51a08bf8","src/unix/notbsd/linux/other/b64/not_x32.rs":"fa8636fb93eab230ed53bdec0a06f5b81d6d982cc0800103563c8c1eefcdb2d9","src/unix/notbsd/linux/other/b64/powerpc64.rs":"a771d982ed8a9458e1f2f039f959b5075b22443159875ba5612eebba96661c24","src/unix/notbsd/linux/other/b64/sparc64.rs":"0caffe5924886f3aed187531dfe78189b3df40adb96782ec4b471647ff83e9b1","src/unix/notbsd/linux/other/b64/x32.rs":"06a26c5120ced30fc015c220799b67c4401be2f13fc6c7361bebd3d37ff4982d","src/unix/notbsd/linux/other/b64/x86_64.rs":"017cb7cf2810bc633e21879a8951a2c10031c500648e5eb4accc6c88b58ecaa3","src/unix/notbsd/linux/other/mod.rs":"a980e9e3853f8e24498d6cd185c38097710757654480ca460f6378ffeeddf5ef","src/unix/notbsd/linux/other/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/notbsd/linux/s390x/align.rs":"a7bdcb18a37a2d91e64d5fad83ea3edc78f5412adb28f77ab077dbb26dd08b2d","src/unix/notbsd/linux/s390x/mod.rs":"b01d158eefce4c31f377b63964d253f9934f7468af35a24474a163ad3725796a","src/unix/notbsd/linux/s390x/no_align.rs":"4a18e3875698c85229599225ac3401a2a40da87e77b2ad4ef47c6fcd5a24ed30","src/unix/notbsd/mod.rs":"5cfdcf78b70b4e4ef4a3733cac364a0bc2512dee798f897a8db7d78d4dd194a6","src/unix/solarish/compat.rs":"8db2a43eafbd3504e9eb9e8f18416c57d947798871bd45be3e2fb9946e292610","src/unix/solarish/mod.rs":"c6a740dac9af99321f48d5c9e86c6a4f5dcc611c413263881764f7121c1f7e9d","src/unix/uclibc/align.rs":"5607180357a9e3d87163e478116b45c7ece391d8366d65ff856cdf3e849452d7","src/unix/uclibc/arm/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/uclibc/arm/mod.rs":"66d54a7028a422fe331028441d1b1f18cf34bb2deff2a9e5220384b6e10dcc40","src/unix/uclibc/arm/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/uclibc/mips/mips32/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/uclibc/mips/mips32/mod.rs":"d1a1af63b583b170d5c94b46a04589a11b9d4f8dc658ab8c74302bae656d0e85","src/unix/uclibc/mips/mips32/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/uclibc/mips/mips64/align.rs":"a7bdcb18a37a2d91e64d5fad83ea3edc78f5412adb28f77ab077dbb26dd08b2d","src/unix/uclibc/mips/mips64/mod.rs":"03f3bad1c681e6fde4a8ed999ce1d38313166c17d35eded66bd6b4f8387efeb7","src/unix/uclibc/mips/mips64/no_align.rs":"bf11b59caa173a6d94d86f42a8de9c5682f798647fba3a17169214b59ab467fe","src/unix/uclibc/mips/mod.rs":"2d76e6cfeb2b7f7c59231a6e099f1aed811a45659e62153aaf00c220b9488a9d","src/unix/uclibc/mod.rs":"924f95073f77047b1f72de3d933852d1df13b19906a63c5974a64032f1bb772c","src/unix/uclibc/no_align.rs":"3f28637046524618adaa1012e26cb7ffe94b9396e6b518cccdc69d59f274d709","src/unix/uclibc/x86_64/align.rs":"26e48fc79dbdeee4408ae8e071aa90e1be34ccdf0c135689b805aa4abd568e5e","src/unix/uclibc/x86_64/l4re.rs":"bb31053d6403091e11f95ac2203982f279f8b984a19adf30796878c45fdd8c25","src/unix/uclibc/x86_64/mod.rs":"df78de7e0234192c0559b9820c0034a24d72a0820d361f9aad05a9eac36e80ff","src/unix/uclibc/x86_64/no_align.rs":"b308f7b110caf7405b57186882cfc4804caae49a8287f8ab612ec8548467f2f4","src/unix/uclibc/x86_64/other.rs":"42c3f71e58cabba373f6a55a623f3c31b85049eb64824c09c2b082b3b2d6a0a8","src/wasi.rs":"84e88b124249816db0976cda78515af3ee3eedacbcd69ae388dc2a6bc757dcd4","src/windows/gnu.rs":"4d9033162cc6f7d245256c7b165c1ec18a741771fd9b99a55b421e8d14978599","src/windows/mod.rs":"2761f3f80c8af5c04e685af8ac3a2bc8c7d6de91cbad9b96a3a6dae67457a891","src/windows/msvc.rs":"8f46cf66883c794175609a3b2bafaa094d0ba63eb6720ef1b84b175603f1074f"},"package":"bedcc7a809076656486ffe045abeeac163da1b558e963a31e29fbfbeba916917"} ++{"files":{"CONTRIBUTING.md":"abc79e7f6c3eee37e21baca32847b6709c973f4995b32892e80deb56b73c9ac5","Cargo.toml":"4f566bfdc168610f37b79d8671c1f9c6f084e0b6cfd40083eed544273e4ab1af","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"35582cfa483e7676b25ae4a07064a19443f4942f5e60e43b91632fcd6ae95156","build.rs":"e9b7364366a5b4caa9daa436ab8a3469532fe63d5fae4d3b2e5ff59d32ff3f3a","rustfmt.toml":"8a654d5787585ca8f2c20580737336fc327f411a07b0dbd4870adf6e9bdf624f","src/cloudabi/aarch64.rs":"b8550bf1fd7344972aa4db29441486f39f31482d0327534981dbb75959c29114","src/cloudabi/arm.rs":"c197e2781c2839808bd6fcef219a29705b27b992d3ef920e9cf6ac96e2022bbf","src/cloudabi/mod.rs":"037c1a3160ae3bc336f6f7135476704e7f5e834e4039fa02b37f03b507118945","src/cloudabi/x86.rs":"33eb97f272d2201f3838ae74d444583c7de8f67856852ca375293b20bbd05636","src/cloudabi/x86_64.rs":"400d85d4fe39e26cf2e6ece9ee31c75fe9e88c4bcf4d836ca9f765c05c9c5be3","src/fuchsia/aarch64.rs":"40dce617877e606e92353491e1913711b1ecfa510bb983156f4a8460f490419e","src/fuchsia/align.rs":"9ca6271f2cbb0e6ca3b48ff6898ecee31c89b3c8388ae20be63e457aabad13a5","src/fuchsia/mod.rs":"db1936ed9e5ac6bd1c04329cbf12feb6842e2a00ca528ff8ccaf7c3b0a5ebe52","src/fuchsia/no_align.rs":"56868534e4ed3f94a27ed39c42f01210c8ecfdbafd4e27679860fbc65a2ae8de","src/fuchsia/x86_64.rs":"911d1249370cf1b0b7b38960cae28af1276f0f614cfcbf5174dbaa38be3dff1d","src/hermit/aarch64.rs":"86048676e335944c37a63d0083d0f368ae10ceccefeed9debb3bbe08777fc682","src/hermit/mod.rs":"9d764e53df81416a5182b71a26402d2071fc0c15160103b6670b6b268fc356da","src/hermit/x86_64.rs":"ab832b7524e5fb15c49ff7431165ab1a37dc4667ae0b58e8306f4c539bfa110c","src/lib.rs":"07bb3130ec198a6413db4dd3da2d3e5d1ab69584c274bc151302707e255c4386","src/macros.rs":"8232e284068d34336713535595fad3c910093346be32e72bde3d3d03327ec6b8","src/redox/align.rs":"2cdc7c826ef7ae61f5171c5ae8c445a743d86f1a7f2d9d7e4ceeec56d6874f65","src/redox/mod.rs":"34f132e794dc25bbb0e3c08b7f87e4508ce62e0aac00acf39dcdb0f246d7dfc0","src/redox/net.rs":"351960c3a3ad9b296fe43533cac429434e0872c8cca5ad5047dce79d82e009ee","src/redox/no_align.rs":"c06e95373b9088266e0b14bba0954eef95f93fb2b01d951855e382d22de78e53","src/sgx.rs":"7ff2fbf3e5ad1c880014d68e012f4381a9b9140d13089193b9fba07a7f27c352","src/switch.rs":"fe1414ca053b73cf8a5f54448e807abe81c776c6ac0dfe47ea7772c8140f50b6","src/unix/align.rs":"2cdc7c826ef7ae61f5171c5ae8c445a743d86f1a7f2d9d7e4ceeec56d6874f65","src/unix/bsd/apple/b32.rs":"0095a17e49fa423cab8644c722a375b88f5c0cf56fa456b549738d98131bb2f9","src/unix/bsd/apple/b64.rs":"99fbd3e6d2c969080631e23f58deffa51cb3f42b7a08395b49556f19bb40d4e1","src/unix/bsd/apple/mod.rs":"d67234bd36d2d2ab84716f597af4245cb01fc92fee362a331ae4e0a4eb723faa","src/unix/bsd/freebsdlike/dragonfly/mod.rs":"2cb0a5d10a3c5721d10209ad7ddc59f6756b2c1d4bc89450988053efad788eb6","src/unix/bsd/freebsdlike/freebsd/aarch64.rs":"4dcd712c0dd5470171746071a176391f937de7865dd0792173284992d9e3f2c7","src/unix/bsd/freebsdlike/freebsd/arm.rs":"84cf36223f0229cb383036563a4902731543e89b37e4dfe2f450cced566d8545","src/unix/bsd/freebsdlike/freebsd/mod.rs":"0752dc1097fd5e94aabfe7b6d4ead2b94e5c0540e2cd3c8efee883bba13e1a0c","src/unix/bsd/freebsdlike/freebsd/powerpc64.rs":"9873f41843cbf066f6ffab8eeb63115095f81ce9fa8f337b95ec871e40c6565d","src/unix/bsd/freebsdlike/freebsd/x86.rs":"716cb67cd0aea66d4a8e40470d32b55cbfafddf75edd34a90f70d518c8c75457","src/unix/bsd/freebsdlike/freebsd/x86_64.rs":"dd3d8a546730f09b1ef0dfeeb20244eef01d1b4028799b28b3a0c33ae05d5002","src/unix/bsd/freebsdlike/mod.rs":"96a4baa8d7145ff29a9269437ce1fd538a18683488d85a677da78e17e070efc0","src/unix/bsd/mod.rs":"c59685127d6f238b9e9c967424c29da51668ab240e4a88962ab058e4498766b3","src/unix/bsd/netbsdlike/mod.rs":"3b32758ba7a5a133b045521c88e74f51d3718e9051f15ed66122d29267a51138","src/unix/bsd/netbsdlike/netbsd/aarch64.rs":"b38fc046f9a40fea28bd26328b96629f4d5d63d7524936bd6af1865d401a8716","src/unix/bsd/netbsdlike/netbsd/arm.rs":"58cdbb70b0d6f536551f0f3bb3725d2d75c4690db12c26c034e7d6ec4a924452","src/unix/bsd/netbsdlike/netbsd/mod.rs":"75adb8d6ee202d50487913c245e1a880447582f45e1ef6339743305a13fb5719","src/unix/bsd/netbsdlike/netbsd/powerpc.rs":"ee7ff5d89d0ed22f531237b5059aa669df93a3b5c489fa641465ace8d405bf41","src/unix/bsd/netbsdlike/netbsd/sparc64.rs":"9489f4b3e4566f43bb12dfb92238960613dac7f6a45cc13068a8d152b902d7d9","src/unix/bsd/netbsdlike/netbsd/x86.rs":"20692320e36bfe028d1a34d16fe12ca77aa909cb02bda167376f98f1a09aefe7","src/unix/bsd/netbsdlike/netbsd/x86_64.rs":"135509edeaf3fb3f102d89d51ff1a8f82323497336a8dc7e1f0f23b5c2434b73","src/unix/bsd/netbsdlike/openbsdlike/bitrig/mod.rs":"51dd68ca3c3eab0f1fe496b0dc12ad8b85f8cf964af0c2c95ab9834ad03938a8","src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86.rs":"bd251a102bed65d5cb3459275f6ec3310fe5803ff4c9651212115548f86256d0","src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86_64.rs":"6e6f15e81597d85d83ca0eeb154e4f8b8e7f9cbb6a9cfa176601f78642ef94f9","src/unix/bsd/netbsdlike/openbsdlike/mod.rs":"c8d18b725c62c2f1a3c5e42d875e1a3b167c13a1bd6ae3d35f35a6ec29402f81","src/unix/bsd/netbsdlike/openbsdlike/openbsd/aarch64.rs":"ee0057fb97a5e16e46e0f8e4a215f6141b68ea75dd6cb5d53166bee2431082e2","src/unix/bsd/netbsdlike/openbsdlike/openbsd/mod.rs":"a3fb2cfc0e100c860dff1674a90693d57e66b7f12861155ceb42c2de372454bd","src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86.rs":"1201371a662cb3515ebb42676cdca9199da7bf4d7c8f90b56f00db03a9fc61f7","src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86_64.rs":"26ef6f50740fad5bb722e0f30025c369c287b2204489682319f7b24fce6de98d","src/unix/haiku/b32.rs":"69ae47fc52c6880e85416b4744500d5655c9ec6131cb737f3b649fceaadce15a","src/unix/haiku/b64.rs":"73e64db09275a8da8d50a13cce2cfa2b136036ddf3a930d2939f337fc995900b","src/unix/haiku/mod.rs":"f3edcb2c6c0f8c68daebb1a17490684eae64a488570d1140bee1c2b384e25677","src/unix/hermit/aarch64.rs":"86048676e335944c37a63d0083d0f368ae10ceccefeed9debb3bbe08777fc682","src/unix/hermit/mod.rs":"d97797fe66dd43c61f6f895596f6a57145b4c9ef61edd93c8ff9b497a2d28411","src/unix/hermit/x86_64.rs":"ab832b7524e5fb15c49ff7431165ab1a37dc4667ae0b58e8306f4c539bfa110c","src/unix/mod.rs":"7229044b53c8a5cb1500a9ee4df550e97c6a9a04b680d1cccc1ca3009040699c","src/unix/newlib/aarch64/mod.rs":"c408a990f22fb4292a824f38367e9b517e6e6f8623328397ee631cc88b3d1f7d","src/unix/newlib/align.rs":"04e9b1ac6ca4af24fe5170385249fd64039ebf7f4817c5ceed3a303f3bc8a4aa","src/unix/newlib/arm/mod.rs":"2b6dba2e697ab9b4f4bc4dd5f28057249e9b596d1cb395a9322ec87605c4a5c4","src/unix/newlib/mod.rs":"fb1c25abbcbc82fbb4842e442c9ead2710ccc597f1cce65ac12ad6f4d1f64856","src/unix/newlib/no_align.rs":"7123dcec13604a11b7765c380ff3a4d0da19c39f4b03919de7857723c0cf1502","src/unix/no_align.rs":"c06e95373b9088266e0b14bba0954eef95f93fb2b01d951855e382d22de78e53","src/unix/notbsd/android/b32/arm.rs":"3625a32c7e58cfe683a53486fbe3d42d4e28f00bea31e19cb46ed2bb0b6a140b","src/unix/notbsd/android/b32/mod.rs":"05a714a785fa94a5131af3d59612ce1e9a5823b3327eb2a23de8ad0ce125c377","src/unix/notbsd/android/b32/x86.rs":"ae2b7f1d6278caddc007749bb1d09ca33f7593478a0fd7fe98b457dae86c7814","src/unix/notbsd/android/b64/aarch64.rs":"63d65629d79371814910f691672ef593d20244ee09be26f1ebe07ee6212d0163","src/unix/notbsd/android/b64/mod.rs":"d3bcb20e70d29a450577c09706bb520fab09d0cb3102755736867bf8a957319c","src/unix/notbsd/android/b64/x86_64.rs":"5547aef8dcbaa5a932559f34606fd8d89f6c9c15173d2b1412c12d39b3c1045f","src/unix/notbsd/android/mod.rs":"220b041d7142abb9e54004b8a5468be9afe8ad87c87e1d76f0a05f9671697bca","src/unix/notbsd/emscripten/align.rs":"dee06bccb5f1a58bd498468f204b8f1d8f2c2a536c595d31e730330a79af7ea5","src/unix/notbsd/emscripten/mod.rs":"42947782f571b56cc1b1c1f4364bb35519bcc44ab8aca53bb13bfd46904de1e0","src/unix/notbsd/emscripten/no_align.rs":"f3960b1d6ede1f8f9d51407a3de5337d44dd5d954e1a4c2bf0ea11e76f2629da","src/unix/notbsd/linux/align.rs":"f2520d03b411519161eaaf043f1948b3279509a3f272b2958bca1d1aeda0434d","src/unix/notbsd/linux/mips/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/notbsd/linux/mips/mips32.rs":"96153abc38b10309e64cb49b1a1e4107be70dbc40bc54ba0372a4573b098b514","src/unix/notbsd/linux/mips/mips64.rs":"9bd96aa81cb0f536c3607d0a2906f4be7a44c3f89e40d5955a898835f04f0e15","src/unix/notbsd/linux/mips/mod.rs":"9a67a2f4043907a50a43569c06ffb4890aefa8db1c26a8737c6bb4bd3e39d90e","src/unix/notbsd/linux/mips/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/notbsd/linux/mod.rs":"e3531ef28589e4dfd9861f5bd0ba175200dedb69d48f20842baeb129fd8761e1","src/unix/notbsd/linux/musl/b32/arm.rs":"fdf170e03812072785ec531f1ae810d0c4feb9b29d0c316681b9f7affe1262c0","src/unix/notbsd/linux/musl/b32/mips.rs":"afa4981d93f29b3fb0083a73ce1323f7dce1392f90d5cf1966b1fae10d510033","src/unix/notbsd/linux/musl/b32/mod.rs":"540928f168f145c136f9dd729ffa12b9d1838d9fe664fc642365d17d7fae648f","src/unix/notbsd/linux/musl/b32/powerpc.rs":"16c615770a96f155540511f58b5a8070c9c7a43e12bdfed83996690e7558bcb5","src/unix/notbsd/linux/musl/b32/x86.rs":"adf8bb67b47995760aab14f04ae671ebd8ecca5579e90314612f46cb79b30cc2","src/unix/notbsd/linux/musl/b64/aarch64.rs":"d98643408c2837387988f78adc95c90ad21196a6f8f879e3d33d7e8ccf612640","src/unix/notbsd/linux/musl/b64/mod.rs":"d9285cd705e2e92552a08c9aa69b810e7e1bd0e9da6edf069c678af285579661","src/unix/notbsd/linux/musl/b64/powerpc64.rs":"544d8a7f6d6d84143df8a4c3537c9a3a36bf3d338d7a1c15689b94492498d8d7","src/unix/notbsd/linux/musl/b64/x86_64.rs":"19197260a6d06ee521a5aa40a1860b7be33176d0f52bc92d56165fc42729cbd5","src/unix/notbsd/linux/musl/mod.rs":"13d766411fa206b987567e7c802dfe7585e6b7f002fe13ec0fbc810e522b7e2d","src/unix/notbsd/linux/no_align.rs":"7a1cc536b26c22019d7dab6b6db3a8c9edbb753d3f37a7985c30d8894c2c6b06","src/unix/notbsd/linux/other/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/notbsd/linux/other/b32/arm.rs":"d9892f7350b2978335f734f1cd2d7fed60f0f2e66aa05bee3f69549c031f8b14","src/unix/notbsd/linux/other/b32/mod.rs":"26211878c6481861e11393625620edaa0700cac41f55f0118c0f0bd42c1b7520","src/unix/notbsd/linux/other/b32/powerpc.rs":"253fcd2f9978525285be1903cc08f3fec2dc3b12d1660a33e2995b4f6b810d1c","src/unix/notbsd/linux/other/b32/x86.rs":"fea38039a1908ddeb90672b8ef246c743eec6758663a79aea401e21ef40a736d","src/unix/notbsd/linux/other/b64/aarch64.rs":"1124ab5e974718b94fa40ae0f1772fb1c537910ef3e018b7c6c94a38b83dd742","src/unix/notbsd/linux/other/b64/mod.rs":"63e1a3fdf5f4d1b9820934ab344c91aed5e458e7e05908535d2e942d51a08bf8","src/unix/notbsd/linux/other/b64/not_x32.rs":"fa8636fb93eab230ed53bdec0a06f5b81d6d982cc0800103563c8c1eefcdb2d9","src/unix/notbsd/linux/other/b64/powerpc64.rs":"a771d982ed8a9458e1f2f039f959b5075b22443159875ba5612eebba96661c24","src/unix/notbsd/linux/other/b64/sparc64.rs":"0caffe5924886f3aed187531dfe78189b3df40adb96782ec4b471647ff83e9b1","src/unix/notbsd/linux/other/b64/x32.rs":"06a26c5120ced30fc015c220799b67c4401be2f13fc6c7361bebd3d37ff4982d","src/unix/notbsd/linux/other/b64/x86_64.rs":"017cb7cf2810bc633e21879a8951a2c10031c500648e5eb4accc6c88b58ecaa3","src/unix/notbsd/linux/other/mod.rs":"86d6c4f5a01b4da8cf9bbfa7f6fedbeda1c9b1c0528244ce9033a647cd0567d5","src/unix/notbsd/linux/other/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/notbsd/linux/s390x/align.rs":"a7bdcb18a37a2d91e64d5fad83ea3edc78f5412adb28f77ab077dbb26dd08b2d","src/unix/notbsd/linux/s390x/mod.rs":"b01d158eefce4c31f377b63964d253f9934f7468af35a24474a163ad3725796a","src/unix/notbsd/linux/s390x/no_align.rs":"4a18e3875698c85229599225ac3401a2a40da87e77b2ad4ef47c6fcd5a24ed30","src/unix/notbsd/mod.rs":"8aa3fc4d3879b6897871c55c4cb70ff7a63c399d2409a729cc788f21f987452e","src/unix/solarish/compat.rs":"8db2a43eafbd3504e9eb9e8f18416c57d947798871bd45be3e2fb9946e292610","src/unix/solarish/mod.rs":"0c6d148d84f2fa9feb86b464d30af9c52322553bf321ae4fe27184d274ccbe21","src/unix/uclibc/align.rs":"5607180357a9e3d87163e478116b45c7ece391d8366d65ff856cdf3e849452d7","src/unix/uclibc/arm/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/uclibc/arm/mod.rs":"66d54a7028a422fe331028441d1b1f18cf34bb2deff2a9e5220384b6e10dcc40","src/unix/uclibc/arm/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/uclibc/mips/mips32/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/uclibc/mips/mips32/mod.rs":"d1a1af63b583b170d5c94b46a04589a11b9d4f8dc658ab8c74302bae656d0e85","src/unix/uclibc/mips/mips32/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/uclibc/mips/mips64/align.rs":"a7bdcb18a37a2d91e64d5fad83ea3edc78f5412adb28f77ab077dbb26dd08b2d","src/unix/uclibc/mips/mips64/mod.rs":"03f3bad1c681e6fde4a8ed999ce1d38313166c17d35eded66bd6b4f8387efeb7","src/unix/uclibc/mips/mips64/no_align.rs":"bf11b59caa173a6d94d86f42a8de9c5682f798647fba3a17169214b59ab467fe","src/unix/uclibc/mips/mod.rs":"2d76e6cfeb2b7f7c59231a6e099f1aed811a45659e62153aaf00c220b9488a9d","src/unix/uclibc/mod.rs":"d7c2b44735fe8a892fb05ab888de8311fc1f7a86f3aef818b7ff04fae70447fa","src/unix/uclibc/no_align.rs":"3f28637046524618adaa1012e26cb7ffe94b9396e6b518cccdc69d59f274d709","src/unix/uclibc/x86_64/align.rs":"26e48fc79dbdeee4408ae8e071aa90e1be34ccdf0c135689b805aa4abd568e5e","src/unix/uclibc/x86_64/l4re.rs":"bb31053d6403091e11f95ac2203982f279f8b984a19adf30796878c45fdd8c25","src/unix/uclibc/x86_64/mod.rs":"df78de7e0234192c0559b9820c0034a24d72a0820d361f9aad05a9eac36e80ff","src/unix/uclibc/x86_64/no_align.rs":"b308f7b110caf7405b57186882cfc4804caae49a8287f8ab612ec8548467f2f4","src/unix/uclibc/x86_64/other.rs":"42c3f71e58cabba373f6a55a623f3c31b85049eb64824c09c2b082b3b2d6a0a8","src/wasi.rs":"e322bdc14bf7f8c34de8fc4ea52fd6279bbc9d6c205efa8b9b8925e8b12c4b6c","src/windows/gnu.rs":"4d9033162cc6f7d245256c7b165c1ec18a741771fd9b99a55b421e8d14978599","src/windows/mod.rs":"2761f3f80c8af5c04e685af8ac3a2bc8c7d6de91cbad9b96a3a6dae67457a891","src/windows/msvc.rs":"8f46cf66883c794175609a3b2bafaa094d0ba63eb6720ef1b84b175603f1074f"},"package":"c6785aa7dd976f5fbf3b71cfd9cd49d7f783c1ff565a858d71031c6c313aa5c6"} diff --git a/user/rust/APKBUILD b/user/rust/APKBUILD index 393f2ce98..36715a07c 100644 --- a/user/rust/APKBUILD +++ b/user/rust/APKBUILD @@ -3,9 +3,9 @@ # Contributor: Jeizsm # Maintainer: Samuel Holland pkgname=rust -pkgver=1.35.0 -_bootcargover=0.35.0 -_bootver=1.34.2 +pkgver=1.36.0 +_bootcargover=0.36.0 +_bootver=1.35.0 _llvmver=8 pkgrel=0 pkgdesc="The Rust Programming Language" @@ -50,13 +50,12 @@ source="https://static.rust-lang.org/dist/rustc-$pkgver-src.tar.xz 0004-Require-static-native-libraries-when-linking-static-.patch 0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch 0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch - 0007-runtest-Fix-proc-macro-tests-on-musl-hosts.patch - 0008-test-use-extern-for-plugins-Don-t-assume-multilib.patch - 0009-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch - 0010-Ignore-broken-and-non-applicable-tests.patch - 0011-Link-stage-2-tools-dynamically-to-libstd.patch - 0012-Move-debugger-scripts-to-usr-share-rust.patch - 0013-Add-foxkit-target-specs.patch + 0007-test-use-extern-for-plugins-Don-t-assume-multilib.patch + 0008-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch + 0009-Ignore-broken-and-non-applicable-tests.patch + 0010-Link-stage-2-tools-dynamically-to-libstd.patch + 0011-Move-debugger-scripts-to-usr-share-rust.patch + 0012-Add-foxkit-target-specs.patch 0030-libc-linkage.patch 0031-typenum-pmmx.patch 0040-rls-atomics.patch @@ -288,23 +287,22 @@ _mv() { mkdir -p "$dest" mv "$@" } -sha512sums="477c10b780bd54776be7ecbda0ab970416253e4a87c3e701825a7d07bcbcd91601b8e61129c5d04d4259e89c2e81e87cdbdee853375a8de5c9cf8372be2c9129 rustc-1.35.0-src.tar.xz -042b4c8a45cc803a202517dd376a2eb2daca50e1da43e96c32b07270afbdce4daa7091c3f11479f908e92d1031c1503a27ac37c007c1fa24743a82abcf765a29 cargo-0.35.0-powerpc-foxkit-linux-musl.tar.xz -a25de7843a512b79d214066cb2f01c4e414ae17c053314c103261e3ac805700dcb2ebc6aa28801cb74dcb6211cc57181d3c266d2b8988e2d8835df4b409929bb rust-std-1.34.2-powerpc-foxkit-linux-musl.tar.xz -9988037ebe219a30faf5740e479c34b464feabd37c192a2a37330f04d67dfed8f8a26439cdf8de4e255fa4fb17959bee7e78d5f6de040522131fdc70ccce8af1 rustc-1.34.2-powerpc-foxkit-linux-musl.tar.xz -dbc74b875e9fab4fdcb815dea4ef855a59361215c291ea11013587340f9e3cabece4b6cc94a0e118e862b47f9ee27447e385c2c524bcb8847a3d775ae2f76fb3 0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch -456c247b50936a2594024b5cec493e8ddbc3159196ce2cc8ae5134f1c3ac2f0928ae3ffe4f3f4154fcc2bf596846b6b3b39005ad76d51076796a9d3988f1df62 0002-Fix-LLVM-build.patch -d20a03a06315c114c61eedfd1b536169d64bd428beb352a4d04abb0358f0b1a75a1c1108e2429c80f715536bd67ef16597f47bd61e75f0e1ddd9681b43197763 0003-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch -a6a413a0e2435697fb66b6a11e4d9da8365b2c2d51d10eccbcac32fba09579199dc8bcd13fff1fd74212d1724292db5607827b2c546d2c06122e6f1fb70d8c16 0004-Require-static-native-libraries-when-linking-static-.patch -2bf5696f493c8b11da77f27348498338ca0f094f69f357077d5507b1f96b6066fa86b711c5c30737d82f217a7eb1afc8a4ce9d25f0491830a800a034607e0c6a 0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch -fedd9f54ae8d0780091dadac2364595abfc7ef13ac21a3489b91de5ad29efa477179f42ef59cb9a2e0264e15f88164f72843fc176180cd72e54052f3b305703c 0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch -19e17358f738c982bb7a393e0b12173de8b79f905a677fdc5c183d54219b58a1618607e993cfe12d3eb69a2cb25a0b7b52313eb8e60a91ec9d37bb5b0c140b43 0007-runtest-Fix-proc-macro-tests-on-musl-hosts.patch -0c943ddb3fbacfa47adfa43e8ec41137d0e9c719e59af3ff1e3e1a2a6576c8eeed2b1db77f3f6f252eea273f9f1320c573ecde22e56800dbffac3e2ef18862f3 0008-test-use-extern-for-plugins-Don-t-assume-multilib.patch -22429c5dbbfda30cc2f08ed5591124fc8346d63d6ef200607be3d051e2524fdaf8a32264bef4e99f9186b22c05c805bf82e7c6d6d814a602dcefd9d4d8d708fd 0009-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch -ec851207a03d4b3bf2711e2db677170f520217f19de9f4f9817e62b5f9d10573eb468ced5e13c540bb5cda8c7006b259a0a0241cfa70e1f6f08386e656c86b79 0010-Ignore-broken-and-non-applicable-tests.patch -2a459b55386a4e3419b22efe1c5b5b37d75e2d1a11db4670ee5217ad5404df055eb6510378c74f5ff5662e940155c58d094f41b5738021f608c807f94a498e94 0011-Link-stage-2-tools-dynamically-to-libstd.patch -9e698d01cdb535beb364827d2a0bc87b543db65973c88a7fa64e8e19c671d1cf4cc4c8756018bff261a7581df102c8180599c434b347463a63c5ab2f575ad4c2 0012-Move-debugger-scripts-to-usr-share-rust.patch -a403a032180ee7d3c0d034d97b8de175426d8dd3368ebfcab5ad9c7202f9a0ca0197a72adc1eff13f422ecaed9c0a7e4cd22daf85061159ddaa12c335fd00914 0013-Add-foxkit-target-specs.patch -6c3aaa27adbe361cb354c9a7139b9da949f4acba81af6107e5972fa5c32fa47a972b5ad4567b9b54f4383650dbb3a3c590dfe6f23a5af16d7ff4ad3fb334e997 0030-libc-linkage.patch +sha512sums="1adbb3b67d599f926dc19258e2596cb3b990e152e75e71645637098526207aa5632d7915fd5b67c7a045f63860cc7be3d28be014ad6141a342adc16b2fe8a879 rustc-1.36.0-src.tar.xz +c42ee71cdfacd27d468a0349c5e5b14c5e9701b3f54f22361ec6d9c5255ed6d0eac49e2d64254e3d62e8eba1292427ed07be3cc22b7b784471d079c37a60f0ca cargo-0.36.0-powerpc64-foxkit-linux-musl.tar.xz +772e58df18018dc32185181ffd4eebd5c83809d28bff849944573dbe05eee77c99d874f0a8d40222e6dc69679e8cb7d50230b81111dea6e05dce7e3ce5c7c8fa rust-std-1.35.0-powerpc64-foxkit-linux-musl.tar.xz +ca5430f5c86a1df7f52058dc7ae53e557b0572a88b6288757a2702a979412971da78861c40ab11f4cf0cfa0406a9f19e1329dc2624f47b2b14dadfd094b0a745 rustc-1.35.0-powerpc64-foxkit-linux-musl.tar.xz +b9847c12db94e80879c382aa33dd3fc170536c901bac0cdc2ff507e4daa8a89116be9ff67139e130b990e8a46a0aa9db1a90b2aac34e73b7a45845974109cd3c 0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch +2685cb1991de921731f4908265a2de91724ce7811c99ef9d81d018be1b4c320ff181f078b59ed170ab72234463cf3688b06d96ac158f57b4f923ee30255b304d 0002-Fix-LLVM-build.patch +d31ae4f2a2fa016907d0c141a14ba2e3e38f87155ad030249b7eec64cd5238784a5321aa0612c54e14ed746607aa6058acc275efddbb750e92008566858b3361 0003-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch +0836b0332013c2798fb1c4aecea61315dcbd62799ec37343f2b5aa9373347d3c50af83dc2a331ddcf4c2527851ca22cb58da0600fb5c593e02b0de72f05c7e34 0004-Require-static-native-libraries-when-linking-static-.patch +bb4180012c1e3156b1ead0fd3bacc1d2cb924eb362e3437b887ec19241e6576274649e218f958d474c132b9ad70567bc3b94d21c12062a6469d1f2236671a885 0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch +712b8e8e0aa640bdf81a3a5f92cf06a7c2cebee472ab9f7da6347c0dc5cc2d7c39e49b5351c436d19371060459080c777ec95edcb4a0d3f7bea85fa2ec700f4b 0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch +009632d5c0e783f58b4fe1f01846cad2a605da47ef29de7d728c6f08280db3532c0b7ac5a9ac0d356c795107638cd8c2c388a87969bab5e77ef7d8d71cd638d0 0007-test-use-extern-for-plugins-Don-t-assume-multilib.patch +1f04218ff5005d7ad35bb507baaf6d01f50941c809c1fbb6716ba2e35370fe9d5f50e56021cfbf036bb4336b0b1f7e98678e60e2f5fefa9d0078d7d9ffab63b8 0008-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch +f67e238168a19564e7002fd24fc22a93a44f6d84d762324bbb9218bcb348d695df58ef6046c2dd7fcee68bf1f36ea2395d216ee73b4218dcdc075b0d815cd095 0009-Ignore-broken-and-non-applicable-tests.patch +90a9f6c25879a297b248ec8ee406382cd55ead4b7695635c3a0f5eb9e1d9145df0d727c4c644ebb053b64fa784e917fa56a9ec4d3c026d1ab3751ed4bed50ec5 0010-Link-stage-2-tools-dynamically-to-libstd.patch +0964cd36a14c252f24c9d896ad88f864394ebeca4cd03138c7ca82978dcbbd707b7306320c68afd799b6db153a0425e4f0d863c17ced482cfccbbaf99c836188 0011-Move-debugger-scripts-to-usr-share-rust.patch +333775512fd401acd27e5efe5e626e93193ef75986e51fca8987b0cc2b10e7ac41634305c7845410f333c93d5ac86af0f2763d221e8b2ab6061db5c792a3aa32 0012-Add-foxkit-target-specs.patch +7642e95d7f5e5d167a2f3e1300fc63f7bf34b6c0667b4e43e7c2378acd8c293f82d7c5651dfb75b03d717c0c5c369911f595dc641a629024e615d443244e6da1 0030-libc-linkage.patch 0cb12e9165d198c1e04b258454dbaf5459e192ad24d64c9fa132ebe0f1bcd5da3550eae8dfdaa792fa809b505af62964ecf0219dc4373420ee8ad3e111539a09 0031-typenum-pmmx.patch ab35bacf45ef5e46be110a8d27867fd4d5deb23cd5cbe8dc7f1da2177469945f9254f2a7915ee4fc430468a4421623429f0a01eb9eba14e047384efe3d3ec152 0040-rls-atomics.patch" -- cgit v1.2.3-70-g09d2 From bdb273539df454bdd85dcfb37f7c0135d33477f8 Mon Sep 17 00:00:00 2001 From: Samuel Holland Date: Tue, 3 Sep 2019 02:20:51 +0000 Subject: user/rust: Bump to 1.37.0 Signed-off-by: Samuel Holland --- .../0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch | 8 +- user/rust/0002-Fix-LLVM-build.patch | 8 +- ...tdoc-to-work-when-cross-compiling-on-musl.patch | 4 +- ...tic-native-libraries-when-linking-static-.patch | 10 +- ...-nostdlib-and-musl_root-from-musl-targets.patch | 68 +++++----- ...-Prefer-libgcc_eh-over-libunwind-for-musl.patch | 8 +- ...07-Fix-C-aggregate-passing-ABI-on-powerpc.patch | 93 +++++++++++++ ...-extern-for-plugins-Don-t-assume-multilib.patch | 30 ----- ...8-Fix-zero-sized-aggregate-ABI-on-powerpc.patch | 62 +++++++++ ...t-crates-are-unstable-Fix-test-when-rpath.patch | 25 ---- ...09-Ignore-broken-and-non-applicable-tests.patch | 118 ---------------- ...9-compiletest-Match-suffixed-environments.patch | 48 +++++++ ...-Link-stage-2-tools-dynamically-to-libstd.patch | 27 ---- ...test-c-variadic-Fix-patterns-on-powerpc64.patch | 73 ++++++++++ ...1-Move-debugger-scripts-to-usr-share-rust.patch | 53 -------- ...-extern-for-plugins-Don-t-assume-multilib.patch | 30 +++++ user/rust/0012-Add-foxkit-target-specs.patch | 148 --------------------- ...t-crates-are-unstable-Fix-test-when-rpath.patch | 25 ++++ ...13-Ignore-broken-and-non-applicable-tests.patch | 118 ++++++++++++++++ ...-Link-stage-2-tools-dynamically-to-libstd.patch | 27 ++++ ...5-Move-debugger-scripts-to-usr-share-rust.patch | 53 ++++++++ user/rust/0016-Add-foxkit-target-specs.patch | 148 +++++++++++++++++++++ user/rust/APKBUILD | 117 ++++++++++------ 23 files changed, 805 insertions(+), 496 deletions(-) create mode 100644 user/rust/0007-Fix-C-aggregate-passing-ABI-on-powerpc.patch delete mode 100644 user/rust/0007-test-use-extern-for-plugins-Don-t-assume-multilib.patch create mode 100644 user/rust/0008-Fix-zero-sized-aggregate-ABI-on-powerpc.patch delete mode 100644 user/rust/0008-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch delete mode 100644 user/rust/0009-Ignore-broken-and-non-applicable-tests.patch create mode 100644 user/rust/0009-compiletest-Match-suffixed-environments.patch delete mode 100644 user/rust/0010-Link-stage-2-tools-dynamically-to-libstd.patch create mode 100644 user/rust/0010-test-c-variadic-Fix-patterns-on-powerpc64.patch delete mode 100644 user/rust/0011-Move-debugger-scripts-to-usr-share-rust.patch create mode 100644 user/rust/0011-test-use-extern-for-plugins-Don-t-assume-multilib.patch delete mode 100644 user/rust/0012-Add-foxkit-target-specs.patch create mode 100644 user/rust/0012-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch create mode 100644 user/rust/0013-Ignore-broken-and-non-applicable-tests.patch create mode 100644 user/rust/0014-Link-stage-2-tools-dynamically-to-libstd.patch create mode 100644 user/rust/0015-Move-debugger-scripts-to-usr-share-rust.patch create mode 100644 user/rust/0016-Add-foxkit-target-specs.patch (limited to 'user') diff --git a/user/rust/0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch b/user/rust/0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch index 7bd3daed7..492dbf7ec 100644 --- a/user/rust/0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch +++ b/user/rust/0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch @@ -1,17 +1,17 @@ -From 3ee2eb230aa2414a7cf5e55cba365edbd20e25b4 Mon Sep 17 00:00:00 2001 +From c5fd39c8da01cdb0fea0e323937abcf4895b7511 Mon Sep 17 00:00:00 2001 From: Samuel Holland Date: Wed, 10 Jan 2018 13:36:41 -0600 -Subject: [PATCH 01/12] Don't pass CFLAGS to the C++ compiler +Subject: [PATCH 01/16] Don't pass CFLAGS to the C++ compiler --- src/bootstrap/builder.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs -index 51663e93169..af4b471921c 100644 +index 2e9df48d000..f5ced5b16ed 100644 --- a/src/bootstrap/builder.rs +++ b/src/bootstrap/builder.rs -@@ -1116,8 +1116,7 @@ impl<'a> Builder<'a> { +@@ -1138,8 +1138,7 @@ impl<'a> Builder<'a> { if let Ok(cxx) = self.cxx(target) { let cxx = ccacheify(&cxx); cargo diff --git a/user/rust/0002-Fix-LLVM-build.patch b/user/rust/0002-Fix-LLVM-build.patch index 7209c3c75..83091f46b 100644 --- a/user/rust/0002-Fix-LLVM-build.patch +++ b/user/rust/0002-Fix-LLVM-build.patch @@ -1,17 +1,17 @@ -From 93c87d4cf5ef70813b8e909cdc04527b1f5d7555 Mon Sep 17 00:00:00 2001 +From 0a19456e2445def4cfe99dd02cf8292c1db5d4d4 Mon Sep 17 00:00:00 2001 From: Samuel Holland Date: Fri, 8 Sep 2017 00:04:29 -0500 -Subject: [PATCH 02/12] Fix LLVM build +Subject: [PATCH 02/16] Fix LLVM build --- src/bootstrap/lib.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/bootstrap/lib.rs b/src/bootstrap/lib.rs -index ca4489655ca..7618a6e6df5 100644 +index 4d297fa918a..867df81d972 100644 --- a/src/bootstrap/lib.rs +++ b/src/bootstrap/lib.rs -@@ -774,7 +774,8 @@ impl Build { +@@ -769,7 +769,8 @@ impl Build { // cc-rs because the build scripts will determine that for themselves. let mut base = self.cc[&target].args().iter() .map(|s| s.to_string_lossy().into_owned()) diff --git a/user/rust/0003-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch b/user/rust/0003-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch index e9f879cbb..cf07c76d2 100644 --- a/user/rust/0003-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch +++ b/user/rust/0003-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch @@ -1,7 +1,7 @@ -From 09d94e416d0dbc2e5f0e873fd7e72acdf2c7e178 Mon Sep 17 00:00:00 2001 +From 2200debf48b6ef4c87e258cf8a968a89903f8723 Mon Sep 17 00:00:00 2001 From: Samuel Holland Date: Sat, 2 Dec 2017 17:25:44 -0600 -Subject: [PATCH 03/12] Allow rustdoc to work when cross-compiling on musl +Subject: [PATCH 03/16] Allow rustdoc to work when cross-compiling on musl musl can't handle foreign-architecture libraries in LD_LIBRARY_PATH. --- diff --git a/user/rust/0004-Require-static-native-libraries-when-linking-static-.patch b/user/rust/0004-Require-static-native-libraries-when-linking-static-.patch index e8fada6be..854cd61e6 100644 --- a/user/rust/0004-Require-static-native-libraries-when-linking-static-.patch +++ b/user/rust/0004-Require-static-native-libraries-when-linking-static-.patch @@ -1,7 +1,7 @@ -From 41de62cd1f5e6326987cd9ec625b8ed06efa3041 Mon Sep 17 00:00:00 2001 +From 10bd267ac2621267e1f537a5a7df34cb87354cd3 Mon Sep 17 00:00:00 2001 From: Samuel Holland Date: Fri, 8 Sep 2017 00:05:18 -0500 -Subject: [PATCH 04/12] Require static native libraries when linking static +Subject: [PATCH 04/16] Require static native libraries when linking static executables On ELF targets like Linux, gcc/ld will create a dynamically-linked @@ -16,10 +16,10 @@ Fixes #54243 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/src/librustc_codegen_ssa/back/link.rs b/src/librustc_codegen_ssa/back/link.rs -index d5a56f6a09e..bb06d80d814 100644 +index e3d297e7862..974e8c0239b 100644 --- a/src/librustc_codegen_ssa/back/link.rs +++ b/src/librustc_codegen_ssa/back/link.rs -@@ -1548,9 +1548,7 @@ fn add_upstream_rust_crates<'a, B: ArchiveBuilder<'a>>(cmd: &mut dyn Linker, +@@ -1571,9 +1571,7 @@ fn add_upstream_rust_crates<'a, B: ArchiveBuilder<'a>>(cmd: &mut dyn Linker, } } @@ -30,7 +30,7 @@ index d5a56f6a09e..bb06d80d814 100644 // // 1. The upstream crate is an rlib. In this case we *must* link in the // native dependency because the rlib is just an archive. -@@ -1593,7 +1591,19 @@ pub fn add_upstream_native_libraries(cmd: &mut dyn Linker, +@@ -1616,7 +1614,19 @@ pub fn add_upstream_native_libraries(cmd: &mut dyn Linker, continue } match lib.kind { diff --git a/user/rust/0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch b/user/rust/0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch index 8dfb217b5..2df7a6654 100644 --- a/user/rust/0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch +++ b/user/rust/0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch @@ -1,7 +1,7 @@ -From dc5862fa6adcd35e46b0a3ab160f5577535b4b76 Mon Sep 17 00:00:00 2001 +From e8ef432c23ea9fb70b28bea07042b33f1050569b Mon Sep 17 00:00:00 2001 From: Samuel Holland Date: Fri, 8 Sep 2017 22:11:14 -0500 -Subject: [PATCH 05/12] Remove -nostdlib and musl_root from musl targets +Subject: [PATCH 05/16] Remove -nostdlib and musl_root from musl targets --- config.toml.example | 6 ---- @@ -20,10 +20,10 @@ Subject: [PATCH 05/12] Remove -nostdlib and musl_root from musl targets 13 files changed, 4 insertions(+), 152 deletions(-) diff --git a/config.toml.example b/config.toml.example -index 556625b531d..3c6f1872822 100644 +index c14adf8ce33..8ec8d2bbbb7 100644 --- a/config.toml.example +++ b/config.toml.example -@@ -474,12 +474,6 @@ +@@ -479,12 +479,6 @@ # only use static libraries. If unset, the target's default linkage is used. #crt-static = false @@ -37,10 +37,10 @@ index 556625b531d..3c6f1872822 100644 #wasi-root = "..." diff --git a/src/bootstrap/bin/rustc.rs b/src/bootstrap/bin/rustc.rs -index 821c37dc235..906af787f4a 100644 +index 595deb07ec8..c077dc1581e 100644 --- a/src/bootstrap/bin/rustc.rs +++ b/src/bootstrap/bin/rustc.rs -@@ -122,16 +122,6 @@ fn main() { +@@ -145,16 +145,6 @@ fn main() { cmd.arg("-Cprefer-dynamic"); } @@ -58,7 +58,7 @@ index 821c37dc235..906af787f4a 100644 let mut root = OsString::from("native="); root.push(&s); diff --git a/src/bootstrap/cc_detect.rs b/src/bootstrap/cc_detect.rs -index dfc243b7054..848d1d4b2b3 100644 +index 400375cd201..0394ab7a8a7 100644 --- a/src/bootstrap/cc_detect.rs +++ b/src/bootstrap/cc_detect.rs @@ -84,7 +84,7 @@ pub fn find(build: &mut Build) { @@ -70,16 +70,16 @@ index dfc243b7054..848d1d4b2b3 100644 } let compiler = cfg.get_compiler(); -@@ -113,7 +113,7 @@ pub fn find(build: &mut Build) { - if let Some(cxx) = config.and_then(|c| c.cxx.as_ref()) { +@@ -107,7 +107,7 @@ pub fn find(build: &mut Build) { cfg.compiler(cxx); + true + } else if build.hosts.contains(&target) || build.build == target { +- set_compiler(&mut cfg, Language::CPlusPlus, target, config, build); ++ set_compiler(&mut cfg, Language::CPlusPlus, target, config); + true } else { -- set_compiler(&mut cfg, Language::CPlusPlus, host, config, build); -+ set_compiler(&mut cfg, Language::CPlusPlus, host, config); - } - let compiler = cfg.get_compiler(); - build.verbose(&format!("CXX_{} = {:?}", host, compiler.path())); -@@ -124,8 +124,7 @@ pub fn find(build: &mut Build) { + false +@@ -134,8 +134,7 @@ pub fn find(build: &mut Build) { fn set_compiler(cfg: &mut cc::Build, compiler: Language, target: Interned, @@ -89,7 +89,7 @@ index dfc243b7054..848d1d4b2b3 100644 match &*target { // When compiling for android we may have the NDK configured in the // config.toml in which case we look there. Otherwise the default -@@ -165,26 +164,6 @@ fn set_compiler(cfg: &mut cc::Build, +@@ -175,26 +174,6 @@ fn set_compiler(cfg: &mut cc::Build, } } @@ -117,10 +117,10 @@ index dfc243b7054..848d1d4b2b3 100644 } } diff --git a/src/bootstrap/compile.rs b/src/bootstrap/compile.rs -index e1cdd226fd6..05442c6c612 100644 +index 576267e6948..8e5de3907f6 100644 --- a/src/bootstrap/compile.rs +++ b/src/bootstrap/compile.rs -@@ -115,20 +115,7 @@ impl Step for Std { +@@ -116,20 +116,7 @@ impl Step for Std { fn copy_third_party_objects(builder: &Builder<'_>, compiler: &Compiler, target: Interned) { let libdir = builder.sysroot_libdir(*compiler, target); @@ -142,7 +142,7 @@ index e1cdd226fd6..05442c6c612 100644 for &obj in &["crt1.o"] { builder.copy( &builder.wasi_root(target).unwrap().join("lib/wasm32-wasi").join(obj), -@@ -191,12 +178,6 @@ pub fn std_cargo(builder: &Builder<'_>, +@@ -219,12 +206,6 @@ pub fn std_cargo(builder: &Builder<'_>, .arg("--manifest-path") .arg(builder.src.join("src/libstd/Cargo.toml")); @@ -156,10 +156,10 @@ index e1cdd226fd6..05442c6c612 100644 if let Some(p) = builder.wasi_root(target) { cargo.env("WASI_ROOT", p); diff --git a/src/bootstrap/config.rs b/src/bootstrap/config.rs -index b1d009a6740..cc567839f47 100644 +index 66f504ea924..5bb211501b1 100644 --- a/src/bootstrap/config.rs +++ b/src/bootstrap/config.rs -@@ -135,8 +135,6 @@ pub struct Config { +@@ -133,8 +133,6 @@ pub struct Config { pub print_step_timings: bool, pub missing_tools: bool, @@ -168,7 +168,7 @@ index b1d009a6740..cc567839f47 100644 pub prefix: Option, pub sysconfdir: Option, pub datadir: Option, -@@ -171,7 +169,6 @@ pub struct Target { +@@ -169,7 +167,6 @@ pub struct Target { pub linker: Option, pub ndk: Option, pub crt_static: Option, @@ -176,15 +176,15 @@ index b1d009a6740..cc567839f47 100644 pub wasi_root: Option, pub qemu_rootfs: Option, pub no_std: bool, -@@ -308,7 +305,6 @@ struct Rust { +@@ -307,7 +304,6 @@ struct Rust { backtrace: Option, default_linker: Option, channel: Option, - musl_root: Option, rpath: Option, optimize_tests: Option, - debuginfo_tests: Option, -@@ -348,7 +344,6 @@ struct TomlTarget { + codegen_tests: Option, +@@ -346,7 +342,6 @@ struct TomlTarget { linker: Option, android_ndk: Option, crt_static: Option, @@ -192,7 +192,7 @@ index b1d009a6740..cc567839f47 100644 wasi_root: Option, qemu_rootfs: Option, } -@@ -568,7 +563,6 @@ impl Config { +@@ -569,7 +564,6 @@ impl Config { set(&mut config.llvm_tools_enabled, rust.llvm_tools); config.rustc_parallel = rust.parallel_compiler.unwrap_or(false); config.rustc_default_linker = rust.default_linker.clone(); @@ -200,7 +200,7 @@ index b1d009a6740..cc567839f47 100644 config.save_toolstates = rust.save_toolstates.clone().map(PathBuf::from); set(&mut config.deny_warnings, rust.deny_warnings.or(flags.warnings)); set(&mut config.backtrace_on_ice, rust.backtrace_on_ice); -@@ -611,7 +605,6 @@ impl Config { +@@ -607,7 +601,6 @@ impl Config { target.ranlib = cfg.ranlib.clone().map(PathBuf::from); target.linker = cfg.linker.clone().map(PathBuf::from); target.crt_static = cfg.crt_static.clone(); @@ -209,7 +209,7 @@ index b1d009a6740..cc567839f47 100644 target.qemu_rootfs = cfg.qemu_rootfs.clone().map(PathBuf::from); diff --git a/src/bootstrap/configure.py b/src/bootstrap/configure.py -index ade8afee7c1..f9ccf7aed5c 100755 +index 907983d43ad..e91f6fcbe4b 100755 --- a/src/bootstrap/configure.py +++ b/src/bootstrap/configure.py @@ -111,28 +111,6 @@ v("aarch64-linux-android-ndk", "target.aarch64-linux-android.android-ndk", @@ -242,10 +242,10 @@ index ade8afee7c1..f9ccf7aed5c 100755 "rootfs in qemu testing, you probably don't want to use this") v("qemu-aarch64-rootfs", "target.aarch64-unknown-linux-gnu.qemu-rootfs", diff --git a/src/bootstrap/lib.rs b/src/bootstrap/lib.rs -index 7618a6e6df5..49cdb526e44 100644 +index 867df81d972..4fb57aa6db6 100644 --- a/src/bootstrap/lib.rs +++ b/src/bootstrap/lib.rs -@@ -852,14 +852,6 @@ impl Build { +@@ -847,14 +847,6 @@ impl Build { } } @@ -313,10 +313,10 @@ index ba2d32a9296..412c37fdd12 100644 --disable-docs diff --git a/src/ci/docker/dist-various-1/Dockerfile b/src/ci/docker/dist-various-1/Dockerfile -index a722a418391..44e6728de79 100644 +index 5ab4be328a9..f3b622e6037 100644 --- a/src/ci/docker/dist-various-1/Dockerfile +++ b/src/ci/docker/dist-various-1/Dockerfile -@@ -132,13 +132,6 @@ ENV CC_mipsel_unknown_linux_musl=mipsel-openwrt-linux-gcc \ +@@ -131,13 +131,6 @@ ENV CC_mipsel_unknown_linux_musl=mipsel-openwrt-linux-gcc \ CXX_thumbv7neon_unknown_linux_gnueabihf=arm-linux-gnueabihf-g++ ENV RUST_CONFIGURE_ARGS \ @@ -343,10 +343,10 @@ index 385eefde846..81d4f7737e8 100644 --disable-docs \ --set target.x86_64-unknown-linux-musl.crt-static=false \ diff --git a/src/ci/docker/test-various/Dockerfile b/src/ci/docker/test-various/Dockerfile -index 611a24a69bd..99c2b866b1d 100644 +index c45b1a9a0f1..440796ff3ec 100644 --- a/src/ci/docker/test-various/Dockerfile +++ b/src/ci/docker/test-various/Dockerfile -@@ -31,7 +31,6 @@ COPY scripts/sccache.sh /scripts/ +@@ -27,7 +27,6 @@ COPY scripts/sccache.sh /scripts/ RUN sh /scripts/sccache.sh ENV RUST_CONFIGURE_ARGS \ diff --git a/user/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch b/user/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch index 901c52c7e..2f1094448 100644 --- a/user/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch +++ b/user/rust/0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch @@ -1,17 +1,17 @@ -From e0556e5cdd456e37e61e4ca1f5ef9862a2c6d3ae Mon Sep 17 00:00:00 2001 +From 1eb558f246269606c6d8d73824ef6b44fa10764e Mon Sep 17 00:00:00 2001 From: Samuel Holland Date: Sat, 9 Sep 2017 00:14:16 -0500 -Subject: [PATCH 06/12] Prefer libgcc_eh over libunwind for musl +Subject: [PATCH 06/16] Prefer libgcc_eh over libunwind for musl --- src/libunwind/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libunwind/lib.rs b/src/libunwind/lib.rs -index 0ccffea3170..935175dd8d1 100644 +index 9182e349b19..0377fbb58fc 100644 --- a/src/libunwind/lib.rs +++ b/src/libunwind/lib.rs -@@ -26,6 +26,6 @@ cfg_if! { +@@ -23,6 +23,6 @@ cfg_if::cfg_if! { } #[cfg(target_env = "musl")] diff --git a/user/rust/0007-Fix-C-aggregate-passing-ABI-on-powerpc.patch b/user/rust/0007-Fix-C-aggregate-passing-ABI-on-powerpc.patch new file mode 100644 index 000000000..05b91456f --- /dev/null +++ b/user/rust/0007-Fix-C-aggregate-passing-ABI-on-powerpc.patch @@ -0,0 +1,93 @@ +From c9a914f48652de22832a40ef9639ff8d57c57f31 Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Wed, 4 Sep 2019 20:40:18 -0500 +Subject: [PATCH 07/16] Fix C aggregate-passing ABI on powerpc + +The existing code (which looks like it was copied from MIPS) passes +aggregates by value in registers. This is wrong. According to the SVR4 +powerpc psABI, all aggregates are passed indirectly. +--- + src/librustc_target/abi/call/mod.rs | 2 +- + src/librustc_target/abi/call/powerpc.rs | 41 ++++++------------------- + 2 files changed, 11 insertions(+), 32 deletions(-) + +diff --git a/src/librustc_target/abi/call/mod.rs b/src/librustc_target/abi/call/mod.rs +index fbbd120f934..f4d98177072 100644 +--- a/src/librustc_target/abi/call/mod.rs ++++ b/src/librustc_target/abi/call/mod.rs +@@ -562,7 +562,7 @@ impl<'a, Ty> FnType<'a, Ty> { + "arm" => arm::compute_abi_info(cx, self), + "mips" => mips::compute_abi_info(cx, self), + "mips64" => mips64::compute_abi_info(cx, self), +- "powerpc" => powerpc::compute_abi_info(cx, self), ++ "powerpc" => powerpc::compute_abi_info(self), + "powerpc64" => powerpc64::compute_abi_info(cx, self), + "s390x" => s390x::compute_abi_info(cx, self), + "asmjs" => asmjs::compute_abi_info(cx, self), +diff --git a/src/librustc_target/abi/call/powerpc.rs b/src/librustc_target/abi/call/powerpc.rs +index d496abf8e8b..f20defd6f5b 100644 +--- a/src/librustc_target/abi/call/powerpc.rs ++++ b/src/librustc_target/abi/call/powerpc.rs +@@ -1,49 +1,28 @@ +-use crate::abi::call::{ArgType, FnType, Reg, Uniform}; +-use crate::abi::{HasDataLayout, LayoutOf, Size, TyLayoutMethods}; ++use crate::abi::call::{ArgType, FnType}; + +-fn classify_ret_ty<'a, Ty, C>(cx: &C, ret: &mut ArgType<'_, Ty>, offset: &mut Size) +- where Ty: TyLayoutMethods<'a, C>, C: LayoutOf + HasDataLayout +-{ +- if !ret.layout.is_aggregate() { +- ret.extend_integer_width_to(32); +- } else { ++fn classify_ret_ty(ret: &mut ArgType<'_, Ty>) { ++ if ret.layout.is_aggregate() { + ret.make_indirect(); +- *offset += cx.data_layout().pointer_size; ++ } else { ++ ret.extend_integer_width_to(32); + } + } + +-fn classify_arg_ty<'a, Ty, C>(cx: &C, arg: &mut ArgType<'_, Ty>, offset: &mut Size) +- where Ty: TyLayoutMethods<'a, C>, C: LayoutOf + HasDataLayout +-{ +- let dl = cx.data_layout(); +- let size = arg.layout.size; +- let align = arg.layout.align.max(dl.i32_align).min(dl.i64_align).abi; +- ++fn classify_arg_ty(arg: &mut ArgType<'_, Ty>) { + if arg.layout.is_aggregate() { +- arg.cast_to(Uniform { +- unit: Reg::i32(), +- total: size +- }); +- if !offset.is_aligned(align) { +- arg.pad_with(Reg::i32()); +- } ++ arg.make_indirect(); + } else { + arg.extend_integer_width_to(32); + } +- +- *offset = offset.align_to(align) + size.align_to(align); + } + +-pub fn compute_abi_info<'a, Ty, C>(cx: &C, fty: &mut FnType<'_, Ty>) +- where Ty: TyLayoutMethods<'a, C>, C: LayoutOf + HasDataLayout +-{ +- let mut offset = Size::ZERO; ++pub fn compute_abi_info(fty: &mut FnType<'_, Ty>) { + if !fty.ret.is_ignore() { +- classify_ret_ty(cx, &mut fty.ret, &mut offset); ++ classify_ret_ty(&mut fty.ret); + } + + for arg in &mut fty.args { + if arg.is_ignore() { continue; } +- classify_arg_ty(cx, arg, &mut offset); ++ classify_arg_ty(arg); + } + } +-- +2.21.0 + diff --git a/user/rust/0007-test-use-extern-for-plugins-Don-t-assume-multilib.patch b/user/rust/0007-test-use-extern-for-plugins-Don-t-assume-multilib.patch deleted file mode 100644 index 0655d8ac1..000000000 --- a/user/rust/0007-test-use-extern-for-plugins-Don-t-assume-multilib.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 27dcf49a9a5a27c39b6f66837060bfa5d03ced50 Mon Sep 17 00:00:00 2001 -From: Samuel Holland -Date: Sat, 6 Oct 2018 04:01:48 +0000 -Subject: [PATCH 07/12] test/use-extern-for-plugins: Don't assume multilib - ---- - src/test/run-make-fulldeps/use-extern-for-plugins/Makefile | 7 +------ - 1 file changed, 1 insertion(+), 6 deletions(-) - -diff --git a/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile b/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile -index 838b1a2719b..94fa9f6d067 100644 ---- a/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile -+++ b/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile -@@ -4,12 +4,7 @@ - # ignore-openbsd - # ignore-sunos - --HOST := $(shell $(RUSTC) -vV | grep 'host:' | sed 's/host: //') --ifeq ($(findstring i686,$(HOST)),i686) --TARGET := $(subst i686,x86_64,$(HOST)) --else --TARGET := $(subst x86_64,i686,$(HOST)) --endif -+TARGET := $(shell $(RUSTC) -vV | grep 'host:' | sed 's/host: //') - - all: - $(RUSTC) foo.rs -C extra-filename=-host --- -2.21.0 - diff --git a/user/rust/0008-Fix-zero-sized-aggregate-ABI-on-powerpc.patch b/user/rust/0008-Fix-zero-sized-aggregate-ABI-on-powerpc.patch new file mode 100644 index 000000000..c3da394a7 --- /dev/null +++ b/user/rust/0008-Fix-zero-sized-aggregate-ABI-on-powerpc.patch @@ -0,0 +1,62 @@ +From f67f0ab40f1328e04916512b9af858ca1b7faa24 Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Wed, 4 Sep 2019 20:44:30 -0500 +Subject: [PATCH 08/16] Fix zero-sized aggregate ABI on powerpc + +For targets that pass zero-sized aggregates indirectly (generally +those that pass all aggregates indirectly), we must allocate a register +for passing the address of the ZST. Clean up the existing cases and add +powerpc, which requires this as well. + +While there are not currently musl targets for s390x or sparc64, they +would have the same ABI as gnu targets, so remove the env == "gnu" check +in the Linux case. + +Ideally, since it is a property of the C ABI, the `!rust_abi` case would +be handled entirely in `adjust_c_abi`. However, that would require +updating each implementation of `compute_abi_info` to handle ZSTs. +--- + src/librustc/ty/layout.rs | 20 +++++++++----------- + 1 file changed, 9 insertions(+), 11 deletions(-) + +diff --git a/src/librustc/ty/layout.rs b/src/librustc/ty/layout.rs +index 4af26e19b37..163db9778e5 100644 +--- a/src/librustc/ty/layout.rs ++++ b/src/librustc/ty/layout.rs +@@ -2667,12 +2667,11 @@ where + }; + + let target = &cx.tcx().sess.target.target; +- let win_x64_gnu = +- target.target_os == "windows" && target.arch == "x86_64" && target.target_env == "gnu"; +- let linux_s390x = +- target.target_os == "linux" && target.arch == "s390x" && target.target_env == "gnu"; +- let linux_sparc64 = +- target.target_os == "linux" && target.arch == "sparc64" && target.target_env == "gnu"; ++ let indirect_zst = match target.arch.as_ref() { ++ "powerpc" | "s390x" | "sparc64" => true, ++ "x86_64" => target.target_os == "windows" && target.target_env == "gnu", ++ _ => false, ++ }; + let rust_abi = match sig.abi { + RustIntrinsic | PlatformIntrinsic | Rust | RustCall => true, + _ => false, +@@ -2742,11 +2741,10 @@ where + let is_return = arg_idx.is_none(); + let mut arg = mk_arg_type(ty, arg_idx); + if arg.layout.is_zst() { +- // For some forsaken reason, x86_64-pc-windows-gnu +- // doesn't ignore zero-sized struct arguments. +- // The same is true for s390x-unknown-linux-gnu +- // and sparc64-unknown-linux-gnu. +- if is_return || rust_abi || (!win_x64_gnu && !linux_s390x && !linux_sparc64) { ++ // FIXME: The C ABI case should be handled in adjust_for_cabi. ++ // Zero-sized struct arguments cannot be ignored in the C ABI ++ // if they are passed indirectly. ++ if is_return || rust_abi || !indirect_zst { + arg.mode = PassMode::Ignore(IgnoreMode::Zst); + } + } +-- +2.21.0 + diff --git a/user/rust/0008-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch b/user/rust/0008-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch deleted file mode 100644 index 7b23b662d..000000000 --- a/user/rust/0008-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 2b5385b0c6db9cf02d467b23df89596d33557adf Mon Sep 17 00:00:00 2001 -From: Samuel Holland -Date: Mon, 17 Sep 2018 01:32:20 +0000 -Subject: [PATCH 08/12] test/sysroot-crates-are-unstable: Fix test when rpath - is disabled - -Without this environment var, the test can't run rustc to find -the sysroot path. ---- - .../run-make-fulldeps/sysroot-crates-are-unstable/Makefile | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -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 a35174b3c2a..9e770706857 100644 ---- a/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile -+++ b/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile -@@ -1,2 +1,4 @@ -+-include ../tools.mk -+ - all: -- python2.7 test.py -+ env '$(HOST_RPATH_ENV)' python2.7 test.py --- -2.21.0 - diff --git a/user/rust/0009-Ignore-broken-and-non-applicable-tests.patch b/user/rust/0009-Ignore-broken-and-non-applicable-tests.patch deleted file mode 100644 index c56f943c8..000000000 --- a/user/rust/0009-Ignore-broken-and-non-applicable-tests.patch +++ /dev/null @@ -1,118 +0,0 @@ -From 9af5f127b0809c1cadef639f96907d5908d1aec3 Mon Sep 17 00:00:00 2001 -From: Samuel Holland -Date: Sun, 16 Sep 2018 16:38:48 +0000 -Subject: [PATCH 09/12] 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 -simd-intrinsic-generic-select.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/linker-output-non-utf8/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/run-pass/env-funky-keys.rs | 1 + - src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs | 2 ++ - src/test/run-pass/simd/simd-intrinsic-generic-select.rs | 2 ++ - 8 files changed, 14 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/linker-output-non-utf8/Makefile b/src/test/run-make-fulldeps/linker-output-non-utf8/Makefile -index b47ce17ec8b..59c44fcf438 100644 ---- a/src/test/run-make-fulldeps/linker-output-non-utf8/Makefile -+++ b/src/test/run-make-fulldeps/linker-output-non-utf8/Makefile -@@ -13,6 +13,8 @@ - # This also does not work on Apple APFS due to the filesystem requiring - # valid UTF-8 paths. - -+# ignore-musl -+ - # The zzz it to allow humans to tab complete or glob this thing. - bad_dir := $(TMPDIR)/zzz$$'\xff' - -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,3 +1,5 @@ -+# ignore-test -+ - -include ../tools.mk - - all: -diff --git a/src/test/run-pass/env-funky-keys.rs b/src/test/run-pass/env-funky-keys.rs -index 3b236e2b3af..7284d25de48 100644 ---- a/src/test/run-pass/env-funky-keys.rs -+++ b/src/test/run-pass/env-funky-keys.rs -@@ -1,5 +1,6 @@ - // Ignore this test on Android, because it segfaults there. - -+// ignore-test - // ignore-android - // ignore-windows - // ignore-cloudabi no execve -diff --git a/src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs b/src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs -index b28f742a92e..3ee4ccce731 100644 ---- a/src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs -+++ b/src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs -@@ -2,6 +2,8 @@ - #![allow(non_camel_case_types)] - - // ignore-emscripten -+// ignore-powerpc -+// ignore-powerpc64 - - // Test that the simd_bitmask intrinsic produces correct results. - -diff --git a/src/test/run-pass/simd/simd-intrinsic-generic-select.rs b/src/test/run-pass/simd/simd-intrinsic-generic-select.rs -index f79b140494e..39080c8c90d 100644 ---- a/src/test/run-pass/simd/simd-intrinsic-generic-select.rs -+++ b/src/test/run-pass/simd/simd-intrinsic-generic-select.rs -@@ -2,6 +2,8 @@ - #![allow(non_camel_case_types)] - - // ignore-emscripten -+// ignore-powerpc -+// ignore-powerpc64 - - // Test that the simd_select intrinsics produces correct results. - --- -2.21.0 - diff --git a/user/rust/0009-compiletest-Match-suffixed-environments.patch b/user/rust/0009-compiletest-Match-suffixed-environments.patch new file mode 100644 index 000000000..9ca4d9900 --- /dev/null +++ b/user/rust/0009-compiletest-Match-suffixed-environments.patch @@ -0,0 +1,48 @@ +From 0b28aa018f3f64913101495ce9806d356230856e Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Mon, 2 Sep 2019 22:10:10 -0500 +Subject: [PATCH 09/16] compiletest: Match suffixed environments + +--- + src/tools/compiletest/src/header.rs | 2 +- + src/tools/compiletest/src/util.rs | 8 ++++++-- + 2 files changed, 7 insertions(+), 3 deletions(-) + +diff --git a/src/tools/compiletest/src/header.rs b/src/tools/compiletest/src/header.rs +index 52f777db2da..4bf3c1a8527 100644 +--- a/src/tools/compiletest/src/header.rs ++++ b/src/tools/compiletest/src/header.rs +@@ -820,10 +820,10 @@ impl Config { + + if name == "test" || + util::matches_os(&self.target, name) || // target ++ util::matches_env(&self.target, name) || // env + name == util::get_arch(&self.target) || // architecture + name == util::get_pointer_width(&self.target) || // pointer width + name == self.stage_id.split('-').next().unwrap() || // stage +- Some(name) == util::get_env(&self.target) || // env + (self.target != self.host && name == "cross-compile") || + match self.compare_mode { + Some(CompareMode::Nll) => name == "compare-mode-nll", +diff --git a/src/tools/compiletest/src/util.rs b/src/tools/compiletest/src/util.rs +index 8caf5ca00f5..d23f4edc55d 100644 +--- a/src/tools/compiletest/src/util.rs ++++ b/src/tools/compiletest/src/util.rs +@@ -101,8 +101,12 @@ pub fn get_arch(triple: &str) -> &'static str { + panic!("Cannot determine Architecture from triple"); + } + +-pub fn get_env(triple: &str) -> Option<&str> { +- triple.split('-').nth(3) ++pub fn matches_env(triple: &str, name: &str) -> bool { ++ if let Some(env) = triple.split('-').nth(3) { ++ env.starts_with(name) ++ } else { ++ false ++ } + } + + pub fn get_pointer_width(triple: &str) -> &'static str { +-- +2.21.0 + diff --git a/user/rust/0010-Link-stage-2-tools-dynamically-to-libstd.patch b/user/rust/0010-Link-stage-2-tools-dynamically-to-libstd.patch deleted file mode 100644 index ab31ba75f..000000000 --- a/user/rust/0010-Link-stage-2-tools-dynamically-to-libstd.patch +++ /dev/null @@ -1,27 +0,0 @@ -From cef4e3d7019c07115f1a4ee66987a4e0ecf8505f Mon Sep 17 00:00:00 2001 -From: Samuel Holland -Date: Mon, 24 Sep 2018 23:42:23 +0000 -Subject: [PATCH 10/12] Link stage 2 tools dynamically to libstd - ---- - src/bootstrap/tool.rs | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/src/bootstrap/tool.rs b/src/bootstrap/tool.rs -index edcd68d010e..b5acf43bba7 100644 ---- a/src/bootstrap/tool.rs -+++ b/src/bootstrap/tool.rs -@@ -209,7 +209,9 @@ pub fn prepare_tool_cargo( - - // We don't want to build tools dynamically as they'll be running across - // stages and such and it's just easier if they're not dynamically linked. -- cargo.env("RUSTC_NO_PREFER_DYNAMIC", "1"); -+ if compiler.stage < 2 { -+ cargo.env("RUSTC_NO_PREFER_DYNAMIC", "1"); -+ } - - if source_type == SourceType::Submodule { - cargo.env("RUSTC_EXTERNAL_TOOL", "1"); --- -2.21.0 - diff --git a/user/rust/0010-test-c-variadic-Fix-patterns-on-powerpc64.patch b/user/rust/0010-test-c-variadic-Fix-patterns-on-powerpc64.patch new file mode 100644 index 000000000..2e2111edb --- /dev/null +++ b/user/rust/0010-test-c-variadic-Fix-patterns-on-powerpc64.patch @@ -0,0 +1,73 @@ +From e6a01c436377109808cac2d49ec30968a02b561d Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Mon, 2 Sep 2019 22:09:15 -0500 +Subject: [PATCH 10/16] test/c-variadic: Fix patterns on powerpc64 + +--- + src/test/codegen/c-variadic.rs | 22 +++++++++++----------- + 1 file changed, 11 insertions(+), 11 deletions(-) + +diff --git a/src/test/codegen/c-variadic.rs b/src/test/codegen/c-variadic.rs +index bb90a9653f5..6ef77ca483f 100644 +--- a/src/test/codegen/c-variadic.rs ++++ b/src/test/codegen/c-variadic.rs +@@ -14,13 +14,13 @@ extern "C" { + #[unwind(aborts)] // FIXME(#58794) + pub unsafe extern "C" fn use_foreign_c_variadic_0() { + // Ensure that we correctly call foreign C-variadic functions. +- // CHECK: invoke void (i32, ...) @foreign_c_variadic_0(i32 0) ++ // CHECK: invoke void (i32, ...) @foreign_c_variadic_0([[PARAM:i32( signext)?]] 0) + foreign_c_variadic_0(0); +- // CHECK: invoke void (i32, ...) @foreign_c_variadic_0(i32 0, i32 42) ++ // CHECK: invoke void (i32, ...) @foreign_c_variadic_0([[PARAM]] 0, [[PARAM]] 42) + foreign_c_variadic_0(0, 42i32); +- // CHECK: invoke void (i32, ...) @foreign_c_variadic_0(i32 0, i32 42, i32 1024) ++ // CHECK: invoke void (i32, ...) @foreign_c_variadic_0([[PARAM]] 0, [[PARAM]] 42, [[PARAM]] 1024) + foreign_c_variadic_0(0, 42i32, 1024i32); +- // CHECK: invoke void (i32, ...) @foreign_c_variadic_0(i32 0, i32 42, i32 1024, i32 0) ++ // CHECK: invoke void (i32, ...) @foreign_c_variadic_0([[PARAM]] 0, [[PARAM]] 42, [[PARAM]] 1024, [[PARAM]] 0) + foreign_c_variadic_0(0, 42i32, 1024i32, 0i32); + } + +@@ -34,18 +34,18 @@ pub unsafe extern "C" fn use_foreign_c_variadic_1_0(ap: VaList) { + + #[unwind(aborts)] // FIXME(#58794) + pub unsafe extern "C" fn use_foreign_c_variadic_1_1(ap: VaList) { +- // CHECK: invoke void ({{.*}}*, ...) @foreign_c_variadic_1({{.*}} %ap, i32 42) ++ // CHECK: invoke void ({{.*}}*, ...) @foreign_c_variadic_1({{.*}} %ap, [[PARAM]] 42) + foreign_c_variadic_1(ap, 42i32); + } + #[unwind(aborts)] // FIXME(#58794) + pub unsafe extern "C" fn use_foreign_c_variadic_1_2(ap: VaList) { +- // CHECK: invoke void ({{.*}}*, ...) @foreign_c_variadic_1({{.*}} %ap, i32 2, i32 42) ++ // CHECK: invoke void ({{.*}}*, ...) @foreign_c_variadic_1({{.*}} %ap, [[PARAM]] 2, [[PARAM]] 42) + foreign_c_variadic_1(ap, 2i32, 42i32); + } + + #[unwind(aborts)] // FIXME(#58794) + pub unsafe extern "C" fn use_foreign_c_variadic_1_3(ap: VaList) { +- // CHECK: invoke void ({{.*}}*, ...) @foreign_c_variadic_1({{.*}} %ap, i32 2, i32 42, i32 0) ++ // CHECK: invoke void ({{.*}}*, ...) @foreign_c_variadic_1({{.*}} %ap, [[PARAM]] 2, [[PARAM]] 42, [[PARAM]] 0) + foreign_c_variadic_1(ap, 2i32, 42i32, 0i32); + } + +@@ -64,12 +64,12 @@ pub unsafe extern "C" fn c_variadic(n: i32, mut ap: ...) -> i32 { + // Ensure that we generate the correct `call` signature when calling a Rust + // defined C-variadic. + pub unsafe fn test_c_variadic_call() { +- // CHECK: call i32 (i32, ...) @c_variadic(i32 0) ++ // CHECK: call [[RET:(signext )?i32]] (i32, ...) @c_variadic([[PARAM]] 0) + c_variadic(0); +- // CHECK: call i32 (i32, ...) @c_variadic(i32 0, i32 42) ++ // CHECK: call [[RET]] (i32, ...) @c_variadic([[PARAM]] 0, [[PARAM]] 42) + c_variadic(0, 42i32); +- // CHECK: call i32 (i32, ...) @c_variadic(i32 0, i32 42, i32 1024) ++ // CHECK: call [[RET]] (i32, ...) @c_variadic([[PARAM]] 0, [[PARAM]] 42, [[PARAM]] 1024) + c_variadic(0, 42i32, 1024i32); +- // CHECK: call i32 (i32, ...) @c_variadic(i32 0, i32 42, i32 1024, i32 0) ++ // CHECK: call [[RET]] (i32, ...) @c_variadic([[PARAM]] 0, [[PARAM]] 42, [[PARAM]] 1024, [[PARAM]] 0) + c_variadic(0, 42i32, 1024i32, 0i32); + } +-- +2.21.0 + diff --git a/user/rust/0011-Move-debugger-scripts-to-usr-share-rust.patch b/user/rust/0011-Move-debugger-scripts-to-usr-share-rust.patch deleted file mode 100644 index 375eb7545..000000000 --- a/user/rust/0011-Move-debugger-scripts-to-usr-share-rust.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 06a3f0608f996cc2791041a3f9a72f224223de43 Mon Sep 17 00:00:00 2001 -From: Samuel Holland -Date: Mon, 17 Sep 2018 02:09:10 +0000 -Subject: [PATCH 11/12] Move debugger scripts to /usr/share/rust - ---- - src/bootstrap/dist.rs | 2 +- - src/etc/rust-gdb | 2 +- - src/etc/rust-lldb | 2 +- - 3 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/src/bootstrap/dist.rs b/src/bootstrap/dist.rs -index b0616ff6691..7a1225a9346 100644 ---- a/src/bootstrap/dist.rs -+++ b/src/bootstrap/dist.rs -@@ -597,7 +597,7 @@ impl Step for DebuggerScripts { - fn run(self, builder: &Builder<'_>) { - let host = self.host; - let sysroot = self.sysroot; -- let dst = sysroot.join("lib/rustlib/etc"); -+ let dst = sysroot.join("share/rust"); - t!(fs::create_dir_all(&dst)); - let cp_debugger_script = |file: &str| { - builder.install(&builder.src.join("src/etc/").join(file), &dst, 0o644); -diff --git a/src/etc/rust-gdb b/src/etc/rust-gdb -index 23ba93da8e5..dc51b16c572 100755 ---- a/src/etc/rust-gdb -+++ b/src/etc/rust-gdb -@@ -4,7 +4,7 @@ set -e - - # Find out where the pretty printer Python module is - RUSTC_SYSROOT=`rustc --print=sysroot` --GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/lib/rustlib/etc" -+GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/share/rust" - - # Run GDB with the additional arguments that load the pretty printers - # Set the environment variable `RUST_GDB` to overwrite the call to a -diff --git a/src/etc/rust-lldb b/src/etc/rust-lldb -index 424302d495f..460e1192100 100755 ---- a/src/etc/rust-lldb -+++ b/src/etc/rust-lldb -@@ -26,7 +26,7 @@ display the contents of local variables!" - fi - - # Prepare commands that will be loaded before any file on the command line has been loaded --script_import="command script import \"$RUSTC_SYSROOT/lib/rustlib/etc/lldb_rust_formatters.py\"" -+script_import="command script import \"$RUSTC_SYSROOT/share/rust/lldb_rust_formatters.py\"" - category_definition="type summary add --no-value --python-function lldb_rust_formatters.print_val -x \".*\" --category Rust" - category_enable="type category enable Rust" - --- -2.21.0 - diff --git a/user/rust/0011-test-use-extern-for-plugins-Don-t-assume-multilib.patch b/user/rust/0011-test-use-extern-for-plugins-Don-t-assume-multilib.patch new file mode 100644 index 000000000..002d84024 --- /dev/null +++ b/user/rust/0011-test-use-extern-for-plugins-Don-t-assume-multilib.patch @@ -0,0 +1,30 @@ +From f0fce1130ffe6b5a7666979aedd956becc4d7c25 Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Sat, 6 Oct 2018 04:01:48 +0000 +Subject: [PATCH 11/16] test/use-extern-for-plugins: Don't assume multilib + +--- + src/test/run-make-fulldeps/use-extern-for-plugins/Makefile | 7 +------ + 1 file changed, 1 insertion(+), 6 deletions(-) + +diff --git a/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile b/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile +index 838b1a2719b..94fa9f6d067 100644 +--- a/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile ++++ b/src/test/run-make-fulldeps/use-extern-for-plugins/Makefile +@@ -4,12 +4,7 @@ + # ignore-openbsd + # ignore-sunos + +-HOST := $(shell $(RUSTC) -vV | grep 'host:' | sed 's/host: //') +-ifeq ($(findstring i686,$(HOST)),i686) +-TARGET := $(subst i686,x86_64,$(HOST)) +-else +-TARGET := $(subst x86_64,i686,$(HOST)) +-endif ++TARGET := $(shell $(RUSTC) -vV | grep 'host:' | sed 's/host: //') + + all: + $(RUSTC) foo.rs -C extra-filename=-host +-- +2.21.0 + diff --git a/user/rust/0012-Add-foxkit-target-specs.patch b/user/rust/0012-Add-foxkit-target-specs.patch deleted file mode 100644 index 119722688..000000000 --- a/user/rust/0012-Add-foxkit-target-specs.patch +++ /dev/null @@ -1,148 +0,0 @@ -From 5b43a025fae81fa1356e3331bff8cba8e3f58013 Mon Sep 17 00:00:00 2001 -From: Samuel Holland -Date: Mon, 17 Sep 2018 02:29:06 +0000 -Subject: [PATCH 12/12] 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 844edbb946a..2d7746c871c 100644 ---- a/src/librustc_target/spec/mod.rs -+++ b/src/librustc_target/spec/mod.rs -@@ -328,6 +328,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 - diff --git a/user/rust/0012-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch b/user/rust/0012-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch new file mode 100644 index 000000000..6123af837 --- /dev/null +++ b/user/rust/0012-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch @@ -0,0 +1,25 @@ +From 93835653d45142c17adcf3087d2a8e512053bccf Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Mon, 17 Sep 2018 01:32:20 +0000 +Subject: [PATCH 12/16] test/sysroot-crates-are-unstable: Fix test when rpath + is disabled + +Without this environment var, the test can't run rustc to find +the sysroot path. +--- + .../run-make-fulldeps/sysroot-crates-are-unstable/Makefile | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +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 a35174b3c2a..9e770706857 100644 +--- a/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile ++++ b/src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile +@@ -1,2 +1,4 @@ ++-include ../tools.mk ++ + all: +- python2.7 test.py ++ env '$(HOST_RPATH_ENV)' python2.7 test.py +-- +2.21.0 + diff --git a/user/rust/0013-Ignore-broken-and-non-applicable-tests.patch b/user/rust/0013-Ignore-broken-and-non-applicable-tests.patch new file mode 100644 index 000000000..dc0f7adb3 --- /dev/null +++ b/user/rust/0013-Ignore-broken-and-non-applicable-tests.patch @@ -0,0 +1,118 @@ +From 8eb87a7b794e649003bc8f4bed6c6d6739f65e43 Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Sun, 16 Sep 2018 16:38:48 +0000 +Subject: [PATCH 13/16] 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 +simd-intrinsic-generic-select.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/linker-output-non-utf8/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/run-pass/env-funky-keys.rs | 1 + + src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs | 2 ++ + src/test/run-pass/simd/simd-intrinsic-generic-select.rs | 2 ++ + 8 files changed, 14 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/linker-output-non-utf8/Makefile b/src/test/run-make-fulldeps/linker-output-non-utf8/Makefile +index b47ce17ec8b..59c44fcf438 100644 +--- a/src/test/run-make-fulldeps/linker-output-non-utf8/Makefile ++++ b/src/test/run-make-fulldeps/linker-output-non-utf8/Makefile +@@ -13,6 +13,8 @@ + # This also does not work on Apple APFS due to the filesystem requiring + # valid UTF-8 paths. + ++# ignore-musl ++ + # The zzz it to allow humans to tab complete or glob this thing. + bad_dir := $(TMPDIR)/zzz$$'\xff' + +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,3 +1,5 @@ ++# ignore-test ++ + -include ../tools.mk + + all: +diff --git a/src/test/run-pass/env-funky-keys.rs b/src/test/run-pass/env-funky-keys.rs +index 3b236e2b3af..7284d25de48 100644 +--- a/src/test/run-pass/env-funky-keys.rs ++++ b/src/test/run-pass/env-funky-keys.rs +@@ -1,5 +1,6 @@ + // Ignore this test on Android, because it segfaults there. + ++// ignore-test + // ignore-android + // ignore-windows + // ignore-cloudabi no execve +diff --git a/src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs b/src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs +index b28f742a92e..3ee4ccce731 100644 +--- a/src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs ++++ b/src/test/run-pass/simd/simd-intrinsic-generic-bitmask.rs +@@ -2,6 +2,8 @@ + #![allow(non_camel_case_types)] + + // ignore-emscripten ++// ignore-powerpc ++// ignore-powerpc64 + + // Test that the simd_bitmask intrinsic produces correct results. + +diff --git a/src/test/run-pass/simd/simd-intrinsic-generic-select.rs b/src/test/run-pass/simd/simd-intrinsic-generic-select.rs +index f79b140494e..39080c8c90d 100644 +--- a/src/test/run-pass/simd/simd-intrinsic-generic-select.rs ++++ b/src/test/run-pass/simd/simd-intrinsic-generic-select.rs +@@ -2,6 +2,8 @@ + #![allow(non_camel_case_types)] + + // ignore-emscripten ++// ignore-powerpc ++// ignore-powerpc64 + + // Test that the simd_select intrinsics produces correct results. + +-- +2.21.0 + diff --git a/user/rust/0014-Link-stage-2-tools-dynamically-to-libstd.patch b/user/rust/0014-Link-stage-2-tools-dynamically-to-libstd.patch new file mode 100644 index 000000000..47e9173a9 --- /dev/null +++ b/user/rust/0014-Link-stage-2-tools-dynamically-to-libstd.patch @@ -0,0 +1,27 @@ +From 8e160daedd1a8c928024db648c2f851cddbbd000 Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Mon, 24 Sep 2018 23:42:23 +0000 +Subject: [PATCH 14/16] Link stage 2 tools dynamically to libstd + +--- + src/bootstrap/tool.rs | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/src/bootstrap/tool.rs b/src/bootstrap/tool.rs +index bd77f7a91d9..70477b44032 100644 +--- a/src/bootstrap/tool.rs ++++ b/src/bootstrap/tool.rs +@@ -210,7 +210,9 @@ pub fn prepare_tool_cargo( + + // We don't want to build tools dynamically as they'll be running across + // stages and such and it's just easier if they're not dynamically linked. +- cargo.env("RUSTC_NO_PREFER_DYNAMIC", "1"); ++ if compiler.stage < 2 { ++ cargo.env("RUSTC_NO_PREFER_DYNAMIC", "1"); ++ } + + if source_type == SourceType::Submodule { + cargo.env("RUSTC_EXTERNAL_TOOL", "1"); +-- +2.21.0 + diff --git a/user/rust/0015-Move-debugger-scripts-to-usr-share-rust.patch b/user/rust/0015-Move-debugger-scripts-to-usr-share-rust.patch new file mode 100644 index 000000000..ed30dfd15 --- /dev/null +++ b/user/rust/0015-Move-debugger-scripts-to-usr-share-rust.patch @@ -0,0 +1,53 @@ +From 1d81148c7b7c048cb1c586ece96bd326ae0f72ec Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Mon, 17 Sep 2018 02:09:10 +0000 +Subject: [PATCH 15/16] Move debugger scripts to /usr/share/rust + +--- + src/bootstrap/dist.rs | 2 +- + src/etc/rust-gdb | 2 +- + src/etc/rust-lldb | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/src/bootstrap/dist.rs b/src/bootstrap/dist.rs +index 45bc77ec97d..9e82352ef65 100644 +--- a/src/bootstrap/dist.rs ++++ b/src/bootstrap/dist.rs +@@ -593,7 +593,7 @@ impl Step for DebuggerScripts { + fn run(self, builder: &Builder<'_>) { + let host = self.host; + let sysroot = self.sysroot; +- let dst = sysroot.join("lib/rustlib/etc"); ++ let dst = sysroot.join("share/rust"); + t!(fs::create_dir_all(&dst)); + let cp_debugger_script = |file: &str| { + builder.install(&builder.src.join("src/etc/").join(file), &dst, 0o644); +diff --git a/src/etc/rust-gdb b/src/etc/rust-gdb +index 23ba93da8e5..dc51b16c572 100755 +--- a/src/etc/rust-gdb ++++ b/src/etc/rust-gdb +@@ -4,7 +4,7 @@ set -e + + # Find out where the pretty printer Python module is + RUSTC_SYSROOT=`rustc --print=sysroot` +-GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/lib/rustlib/etc" ++GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/share/rust" + + # Run GDB with the additional arguments that load the pretty printers + # Set the environment variable `RUST_GDB` to overwrite the call to a +diff --git a/src/etc/rust-lldb b/src/etc/rust-lldb +index 0eb99423df5..f069300dafe 100755 +--- a/src/etc/rust-lldb ++++ b/src/etc/rust-lldb +@@ -26,7 +26,7 @@ display the contents of local variables!" + fi + + # Prepare commands that will be loaded before any file on the command line has been loaded +-script_import="command script import \"$RUSTC_SYSROOT/lib/rustlib/etc/lldb_rust_formatters.py\"" ++script_import="command script import \"$RUSTC_SYSROOT/share/rust/lldb_rust_formatters.py\"" + category_definition="type summary add --no-value --python-function lldb_rust_formatters.print_val -x \".*\" --category Rust" + category_enable="type category enable Rust" + +-- +2.21.0 + diff --git a/user/rust/0016-Add-foxkit-target-specs.patch b/user/rust/0016-Add-foxkit-target-specs.patch new file mode 100644 index 000000000..2b60ca937 --- /dev/null +++ b/user/rust/0016-Add-foxkit-target-specs.patch @@ -0,0 +1,148 @@ +From e31b3c5f24306f0e643c38692e4679707bea8bb8 Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Mon, 17 Sep 2018 02:29:06 +0000 +Subject: [PATCH 16/16] 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 75821aba470..fad73c0fc0e 100644 +--- a/src/librustc_target/spec/mod.rs ++++ b/src/librustc_target/spec/mod.rs +@@ -328,6 +328,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 + diff --git a/user/rust/APKBUILD b/user/rust/APKBUILD index 36715a07c..50608079b 100644 --- a/user/rust/APKBUILD +++ b/user/rust/APKBUILD @@ -3,9 +3,9 @@ # Contributor: Jeizsm # Maintainer: Samuel Holland pkgname=rust -pkgver=1.36.0 -_bootcargover=0.36.0 -_bootver=1.35.0 +pkgver=1.37.0 +_bootcargover=0.37.0 +_bootver=1.36.0 _llvmver=8 pkgrel=0 pkgdesc="The Rust Programming Language" @@ -23,6 +23,7 @@ makedepends=" python3 zlib-dev " +provides="$pkgname-bootstrap=$pkgver-r$pkgrel" subpackages=" $pkgname-dbg $pkgname-stdlib @@ -37,6 +38,7 @@ subpackages=" cargo-doc:_cargo_doc:noarch cargo-bash-completion:_cargo_bashcomp:noarch cargo-zsh-completion:_cargo_zshcomp:noarch + miri rls rustfmt " @@ -50,12 +52,16 @@ source="https://static.rust-lang.org/dist/rustc-$pkgver-src.tar.xz 0004-Require-static-native-libraries-when-linking-static-.patch 0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch 0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch - 0007-test-use-extern-for-plugins-Don-t-assume-multilib.patch - 0008-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch - 0009-Ignore-broken-and-non-applicable-tests.patch - 0010-Link-stage-2-tools-dynamically-to-libstd.patch - 0011-Move-debugger-scripts-to-usr-share-rust.patch - 0012-Add-foxkit-target-specs.patch + 0007-Fix-C-aggregate-passing-ABI-on-powerpc.patch + 0008-Fix-zero-sized-aggregate-ABI-on-powerpc.patch + 0009-compiletest-Match-suffixed-environments.patch + 0010-test-c-variadic-Fix-patterns-on-powerpc64.patch + 0011-test-use-extern-for-plugins-Don-t-assume-multilib.patch + 0012-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch + 0013-Ignore-broken-and-non-applicable-tests.patch + 0014-Link-stage-2-tools-dynamically-to-libstd.patch + 0015-Move-debugger-scripts-to-usr-share-rust.patch + 0016-Add-foxkit-target-specs.patch 0030-libc-linkage.patch 0031-typenum-pmmx.patch 0040-rls-atomics.patch @@ -64,8 +70,6 @@ builddir="$srcdir/rustc-$pkgver-src" _rlibdir="/usr/lib/rustlib/$CTARGET/lib" prepare() { - cd "$builddir" - default_prepare $srcdir/cargo-$_bootcargover-$CBUILD/install.sh \ @@ -83,8 +87,6 @@ prepare() { } build() { - cd "$builddir" - cat > config.toml <<- EOF [build] build = "$CBUILD" @@ -102,31 +104,39 @@ build() { prefix = "/usr" [rust] codegen-units = 1 - debuginfo = true - debuginfo-lines = true - debuginfo-only-std = true - debuginfo-tools = true + codegen-units-std = 1 + debug-assertions = false + debuginfo-level = 2 + debuginfo-level-rustc = 0 + debuginfo-level-tests = 0 backtrace = true + incremental = false + parallel-compiler = false channel = "stable" rpath = false + verbose-tests = true + dist-src = false jemalloc = false + llvm-libunwind = false [target.$CTARGET] cc = "$CTARGET-gcc" cxx = "$CTARGET-g++" linker = "$CTARGET-gcc" llvm-config = "/usr/lib/llvm$_llvmver/bin/llvm-config" crt-static = false + [dist] + src-tarball = false EOF LIBGIT2_SYS_USE_PKG_CONFIG=1 \ LLVM_LINK_SHARED=1 \ RUST_BACKTRACE=1 \ - python3 x.py build -j ${JOBS:-2} + python3 x.py dist -j ${JOBS:-2} } check() { - cd "$builddir" - + LIBGIT2_SYS_USE_PKG_CONFIG=1 \ + LLVM_LINK_SHARED=1 \ RUST_BACKTRACE=1 \ python3 x.py test -j ${JOBS:-2} --no-doc --no-fail-fast \ src/test/codegen \ @@ -148,17 +158,26 @@ check() { } package() { - cd "$builddir" + cd "$builddir"/build/dist - DESTDIR="$pkgdir" python3 x.py install + tar xf rust-$pkgver-$CTARGET.tar.gz + rust-$pkgver-$CTARGET/install.sh \ + --destdir="$pkgdir" \ + --prefix=/usr \ + --sysconfdir="$pkgdir"/etc \ + --disable-ldconfig + tar xf rust-src-$pkgver.tar.gz + rust-src-$pkgver/install.sh \ + --destdir="$pkgdir" \ + --prefix=/usr \ + --disable-ldconfig rm "$pkgdir"/usr/lib/*.so \ "$pkgdir"/usr/lib/rustlib/components \ "$pkgdir"/usr/lib/rustlib/install.log \ "$pkgdir"/usr/lib/rustlib/manifest-* \ "$pkgdir"/usr/lib/rustlib/rust-installer-version \ - "$pkgdir"/usr/lib/rustlib/uninstall.sh \ - "$pkgdir"/usr/share/doc/rust/*.old + "$pkgdir"/usr/lib/rustlib/uninstall.sh } stdlib() { @@ -186,7 +205,7 @@ gdb() { _mv "$pkgdir"/usr/bin/rust-gdb "$subpkgdir"/usr/bin _mv "$pkgdir"/usr/bin/rust-gdbgui "$subpkgdir"/usr/bin - _mv "$pkgdir"/usr/share/rust/gdb_*.py "$subpkgdir"/usr/share/rust || true + _mv "$pkgdir"/usr/share/rust/gdb_*.py "$subpkgdir"/usr/share/rust } lldb() { @@ -196,7 +215,7 @@ lldb() { install_if="$pkgname=$pkgver-r$pkgrel lldb" _mv "$pkgdir"/usr/bin/rust-lldb "$subpkgdir"/usr/bin - _mv "$pkgdir"/usr/share/rust/lldb_*.py "$subpkgdir"/usr/share/rust || true + _mv "$pkgdir"/usr/share/rust/lldb_*.py "$subpkgdir"/usr/share/rust } src() { @@ -212,6 +231,7 @@ src() { cargo() { pkgdesc="The Rust package manager" + provides="cargo-bootstrap=$pkgver-r$pkgrel" depends="$pkgname-stdlib=$pkgver-r$pkgrel $pkgname" _mv "$pkgdir"/usr/bin/cargo "$subpkgdir"/usr/bin @@ -267,6 +287,14 @@ _cargo_doc() { "$subpkgdir"/usr/share/man/man1 } +miri() { + pkgdesc="An interpreter for Rust's mid-level intermediate representation" + license="Apache-2.0 OR MIT" + depends="$pkgname-stdlib=$pkgver-r$pkgrel" + + _mv "$pkgdir"/usr/bin/miri "$subpkgdir"/usr/bin +} + rls() { pkgdesc="The Rust language server" license="Apache-2.0 OR MIT" @@ -287,22 +315,27 @@ _mv() { mkdir -p "$dest" mv "$@" } -sha512sums="1adbb3b67d599f926dc19258e2596cb3b990e152e75e71645637098526207aa5632d7915fd5b67c7a045f63860cc7be3d28be014ad6141a342adc16b2fe8a879 rustc-1.36.0-src.tar.xz -c42ee71cdfacd27d468a0349c5e5b14c5e9701b3f54f22361ec6d9c5255ed6d0eac49e2d64254e3d62e8eba1292427ed07be3cc22b7b784471d079c37a60f0ca cargo-0.36.0-powerpc64-foxkit-linux-musl.tar.xz -772e58df18018dc32185181ffd4eebd5c83809d28bff849944573dbe05eee77c99d874f0a8d40222e6dc69679e8cb7d50230b81111dea6e05dce7e3ce5c7c8fa rust-std-1.35.0-powerpc64-foxkit-linux-musl.tar.xz -ca5430f5c86a1df7f52058dc7ae53e557b0572a88b6288757a2702a979412971da78861c40ab11f4cf0cfa0406a9f19e1329dc2624f47b2b14dadfd094b0a745 rustc-1.35.0-powerpc64-foxkit-linux-musl.tar.xz -b9847c12db94e80879c382aa33dd3fc170536c901bac0cdc2ff507e4daa8a89116be9ff67139e130b990e8a46a0aa9db1a90b2aac34e73b7a45845974109cd3c 0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch -2685cb1991de921731f4908265a2de91724ce7811c99ef9d81d018be1b4c320ff181f078b59ed170ab72234463cf3688b06d96ac158f57b4f923ee30255b304d 0002-Fix-LLVM-build.patch -d31ae4f2a2fa016907d0c141a14ba2e3e38f87155ad030249b7eec64cd5238784a5321aa0612c54e14ed746607aa6058acc275efddbb750e92008566858b3361 0003-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch -0836b0332013c2798fb1c4aecea61315dcbd62799ec37343f2b5aa9373347d3c50af83dc2a331ddcf4c2527851ca22cb58da0600fb5c593e02b0de72f05c7e34 0004-Require-static-native-libraries-when-linking-static-.patch -bb4180012c1e3156b1ead0fd3bacc1d2cb924eb362e3437b887ec19241e6576274649e218f958d474c132b9ad70567bc3b94d21c12062a6469d1f2236671a885 0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch -712b8e8e0aa640bdf81a3a5f92cf06a7c2cebee472ab9f7da6347c0dc5cc2d7c39e49b5351c436d19371060459080c777ec95edcb4a0d3f7bea85fa2ec700f4b 0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch -009632d5c0e783f58b4fe1f01846cad2a605da47ef29de7d728c6f08280db3532c0b7ac5a9ac0d356c795107638cd8c2c388a87969bab5e77ef7d8d71cd638d0 0007-test-use-extern-for-plugins-Don-t-assume-multilib.patch -1f04218ff5005d7ad35bb507baaf6d01f50941c809c1fbb6716ba2e35370fe9d5f50e56021cfbf036bb4336b0b1f7e98678e60e2f5fefa9d0078d7d9ffab63b8 0008-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch -f67e238168a19564e7002fd24fc22a93a44f6d84d762324bbb9218bcb348d695df58ef6046c2dd7fcee68bf1f36ea2395d216ee73b4218dcdc075b0d815cd095 0009-Ignore-broken-and-non-applicable-tests.patch -90a9f6c25879a297b248ec8ee406382cd55ead4b7695635c3a0f5eb9e1d9145df0d727c4c644ebb053b64fa784e917fa56a9ec4d3c026d1ab3751ed4bed50ec5 0010-Link-stage-2-tools-dynamically-to-libstd.patch -0964cd36a14c252f24c9d896ad88f864394ebeca4cd03138c7ca82978dcbbd707b7306320c68afd799b6db153a0425e4f0d863c17ced482cfccbbaf99c836188 0011-Move-debugger-scripts-to-usr-share-rust.patch -333775512fd401acd27e5efe5e626e93193ef75986e51fca8987b0cc2b10e7ac41634305c7845410f333c93d5ac86af0f2763d221e8b2ab6061db5c792a3aa32 0012-Add-foxkit-target-specs.patch + +sha512sums="bfee43f578e6d44ead950b870b9fd31087e1bd3f917611f5dce7ad56504b83185edf43e297e8d1304e9e97b9a580d1e6adf6608ab8ed6dee0dc8c5153cdbc5d4 rustc-1.37.0-src.tar.xz +ab0711dafeae76d9718a0c6aaf118f512d295c66191d96198acc3591f5412d4ee6c50ad5cc56df8f1f32a2be3c4d9bb5ead798c6b9f4089c0a624e09825dd6be cargo-0.37.0-powerpc-foxkit-linux-musl.tar.xz +aa97abeccf03d3368b60731845d23ff74fb962818b7d1e6ada2e9a647b442a1b824541402f3a883c9be6e1f8db94ca98244fc4009ff0386403c57f999bd6d263 rust-std-1.36.0-powerpc-foxkit-linux-musl.tar.xz +5078bdd341b145119ba3396892cd8f63c65fafb1b041674e350b2cc02376fd2c32799baca85e916522c34c416a6c67d9d92bf8f44abb575a1ae1fedc4726516e rustc-1.36.0-powerpc-foxkit-linux-musl.tar.xz +5b765a47a49cbab26e5093ebf6dce5b8e3463ebdb0e404b9c952fef7993fd57e9a0d9f7d301c97b76b8bd35e4ea8b72c8768aa384cd215c2a12ddd45727343f8 0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch +9b711ee16eed20a0293c1ca6d96c48db3fae5f2f60fdcb04ae2d1acfdc8036fa3b41ca799717aa14279fd7b7db0090861bceddeafd8d41f70433039e4983d9c8 0002-Fix-LLVM-build.patch +7f61bdc7c754379e1675d2f102f1f60f4c29ca2a2293d70741db46a0f29d61008d067166c7576cd0e5fa3c26e811e711e851b22f7df69974a7b53fa316c33777 0003-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch +0f1989e4db3a48fe8718002a58aaecf359bc65bf5a6dae327c062fce0b8a3176a6b70c80c72118d5fcabbc16b67b986ce67ab1fda13ca52899ca320716f3e606 0004-Require-static-native-libraries-when-linking-static-.patch +b27045eb7809438db988979843f68ddfee46a6f889b0fbaaed401b249d6e224940e9d15143e55f8b2df911a8fa24dfec81da0f064b47a86f3ed24010aee309e3 0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch +4662f036e037b99178bb24c32524211eb5fc10ac711d16f13ddb933db84811eab3149cbe943521536d00c765eade1c1df01ca7e8f4fee69fca540546c0fbe806 0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch +8742ff1c442dc2c7baad528fd6c51e202d091f24fbd7ac1350241a729a20f6f90818b76bb4de0b36b09afdeaad89b54843f08fb474e2232854cb68cd3d6a57b5 0007-Fix-C-aggregate-passing-ABI-on-powerpc.patch +8eb5c08701cfcdc14ece1c40fa2276e760283ce9228c96ff1dedb5256dcec307c3705a8e27ac1bd767184d0acfc835b9b0b4f02d5fa7ec24a75f04014e67ec61 0008-Fix-zero-sized-aggregate-ABI-on-powerpc.patch +20f794339f7a9c048dad2f39b5a3dad9293b07ba0b130354c0e74ec71088d2f2c24f6630543e8e5a41b244c8c1013249403ce8acf1fc2c2b4ab5065049f7f04e 0009-compiletest-Match-suffixed-environments.patch +d3d3250d762b482c93679cbc7a1d5ccf2eb803e271b840a5d426cf77d58d2cb53fd76baf46bfbaf7674c5ef9f18133cf0b48be08864c002171f3547aaa377bd6 0010-test-c-variadic-Fix-patterns-on-powerpc64.patch +d01d27d6f344fd30f75e7acd8f1b967eda382f7ee6387f8b0c52aa1ab083d5d86fa9d8d424c3e2b792502e75df03bacc58bd24ed4e448cfefe6bbfbb57586b06 0011-test-use-extern-for-plugins-Don-t-assume-multilib.patch +e25a4ba32b3b6fbc774c341bb3bda481a9f86917204e7c9bd69f34e2a72b4b3e58256d0619a94ce1d0f4cc17913d7216974b86fe96a776ba4260d0a01dcacaa9 0012-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch +68f7b35980c7b4b7088e28a7350c847656d4ffecbcec125ac6790a057a8a735563739f0ade8a7cf0283844cd1655114fa7ad6be106993e34b66e520aed34dd6d 0013-Ignore-broken-and-non-applicable-tests.patch +b6d4ce58e540373da797c89ed2ca3b23a8504511ee6bb6d0c52bd04273498aab10c99baf6f4633bb5a246c2612a7a538cbfed494bf901afdc6688f937234b4ac 0014-Link-stage-2-tools-dynamically-to-libstd.patch +fc10130544f7ceda378a9e7fb03a0dc4ea32a6d031061eada60af2d1c688d94f38ab31aad74f8f11b8aec2614415befa2c5e9789eeaf73b998f39b9677886155 0015-Move-debugger-scripts-to-usr-share-rust.patch +2c11c4bee3c6d10de6c2a9937bf3901f4c60dd1d9c50fcf57daa182a9b4d7b40d27632d3ef31ef083ae7903fcd49fdd41413ab8de1021f7d857884b9ac53c724 0016-Add-foxkit-target-specs.patch 7642e95d7f5e5d167a2f3e1300fc63f7bf34b6c0667b4e43e7c2378acd8c293f82d7c5651dfb75b03d717c0c5c369911f595dc641a629024e615d443244e6da1 0030-libc-linkage.patch 0cb12e9165d198c1e04b258454dbaf5459e192ad24d64c9fa132ebe0f1bcd5da3550eae8dfdaa792fa809b505af62964ecf0219dc4373420ee8ad3e111539a09 0031-typenum-pmmx.patch ab35bacf45ef5e46be110a8d27867fd4d5deb23cd5cbe8dc7f1da2177469945f9254f2a7915ee4fc430468a4421623429f0a01eb9eba14e047384efe3d3ec152 0040-rls-atomics.patch" -- cgit v1.2.3-70-g09d2