Get rid of build-powerpc64le-toolchain.sh#143415
Conversation
The dist-powerpc64le-linux-musl runner never actually used the toolchain that the script produced, it instead used the one from crosstool-ng. The dist-powerpc64le-linux-gnu runner did use it, from what I can tell mainly to get a glibc 2.17 version with ppc64le support backported. Since crosstool-ng has the necessary patches, we can just use crosstool-ng to get an appropriate toolchain. While at it, use kernel 3.10 headers since that's the version documented in platform support for this target. Signed-off-by: Jens Reidel <adrian@travitia.xyz>
|
r? @marcoieni rustbot has assigned @marcoieni. Use |
|
@bors2 try |
…try>
Get rid of build-powerpc64le-toolchain.sh
The dist-powerpc64le-linux-musl runner never actually used the toolchain that the script produced, it instead used the one from crosstool-ng.
The dist-powerpc64le-linux-gnu runner did use it, from what I can tell mainly to get a glibc 2.17 version with ppc64le support backported. Since crosstool-ng has the necessary patches, we can just use crosstool-ng to get an appropriate toolchain. While at it, use kernel 3.10 headers since that's the version documented in platform support for this target.
try-job: dist-powerpc64le-linux-gnu
try-job: dist-powerpc64le-linux-musl
<!-- homu-ignore:start -->
<!--
If this PR is related to an unstable feature or an otherwise tracked effort,
please link to the relevant tracking issue here. If you don't know of a related
tracking issue or there are none, feel free to ignore this.
This PR will get automatically assigned to a reviewer. In case you would like
a specific user to review your work, you can assign it to them by using
r? <reviewer name>
-->
<!-- homu-ignore:end -->
|
Hi, thanks for this PR! It looks like a great cleanup. I'll ask for some help to review it.
Did you get this from the script? If yes, where?
How can I double check this? |
The
Not sure what your question is, I got this from reading the script. Glibc 2.17 is the documented baseline of the target. |
|
FWIW, I use a pipeline like this to check the resulting symbol versions: (and repeat for all binaries, though In the CI artifacts from your try build, everything looks good to me except for one: ... but that appears to be from the x86-64 build host, not for PPC! (probably not a new problem) |
Yep! Can confirm this on a powerpc64le-unknown-linux-gnu host that installed the toolchain via rustup: adrian@theta:~$ find ~/.rustup/ -name *objcopy*
/home/adrian/.rustup/toolchains/nightly-powerpc64le-unknown-linux-gnu/lib/rustlib/powerpc64le-unknown-linux-gnu/bin/rust-objcopy
adrian@theta:~$ file /home/adrian/.rustup/toolchains/nightly-powerpc64le-unknown-linux-gnu/lib/rustlib/powerpc64le-unknown-linux-gnu/bin/rust-objcopy
/home/adrian/.rustup/toolchains/nightly-powerpc64le-unknown-linux-gnu/lib/rustlib/powerpc64le-unknown-linux-gnu/bin/rust-objcopy: ELF 64-bit LSB pie executable, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=6507171c1208cad17b064ffbff3b348c18680367, for GNU/Linux 3.2.0, not strippedThis happens on all cross builds, actually. E.g. aarch64-unknown-linux-musl has the same issue. |
|
@bors r+ |
Rollup of 11 pull requests Successful merges: - #143130 (doc(std): clarify `NonZero<T>` usage limitation in doc comment) - #143415 (Get rid of build-powerpc64le-toolchain.sh) - #143464 (Make tests/ui/abi/debug.rs cross-compile) - #143482 (Fix short linker error output) - #143524 (Move `stable_mir` back to its own crate) - #143528 (interpret: rename StackPopCleanup) - #143551 (Dont resolve instance of root in `mir_callgraph_cyclic`) - #143558 (mbe: Refactors and function extractions in `compile_declarative_macro`) - #143563 (std: fix typo in `std::path`) - #143564 (compiler: Deduplicate `must_emit_unwind_tables()` comments) - #143577 (Disable download-rustc for library profile) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of #143415 - Gelbpunkt:cleanup-dist-ppc64le-toolchain, r=marcoieni Get rid of build-powerpc64le-toolchain.sh The dist-powerpc64le-linux-musl runner never actually used the toolchain that the script produced, it instead used the one from crosstool-ng. The dist-powerpc64le-linux-gnu runner did use it, from what I can tell mainly to get a glibc 2.17 version with ppc64le support backported. Since crosstool-ng has the necessary patches, we can just use crosstool-ng to get an appropriate toolchain. While at it, use kernel 3.10 headers since that's the version documented in platform support for this target. try-job: dist-powerpc64le-linux-gnu try-job: dist-powerpc64le-linux-musl
Rollup of 11 pull requests Successful merges: - rust-lang/rust#143130 (doc(std): clarify `NonZero<T>` usage limitation in doc comment) - rust-lang/rust#143415 (Get rid of build-powerpc64le-toolchain.sh) - rust-lang/rust#143464 (Make tests/ui/abi/debug.rs cross-compile) - rust-lang/rust#143482 (Fix short linker error output) - rust-lang/rust#143524 (Move `stable_mir` back to its own crate) - rust-lang/rust#143528 (interpret: rename StackPopCleanup) - rust-lang/rust#143551 (Dont resolve instance of root in `mir_callgraph_cyclic`) - rust-lang/rust#143558 (mbe: Refactors and function extractions in `compile_declarative_macro`) - rust-lang/rust#143563 (std: fix typo in `std::path`) - rust-lang/rust#143564 (compiler: Deduplicate `must_emit_unwind_tables()` comments) - rust-lang/rust#143577 (Disable download-rustc for library profile) r? `@ghost` `@rustbot` modify labels: rollup
Should be fixed in #145763 |
The dist-powerpc64le-linux-musl runner never actually used the toolchain that the script produced, it instead used the one from crosstool-ng.
The dist-powerpc64le-linux-gnu runner did use it, from what I can tell mainly to get a glibc 2.17 version with ppc64le support backported. Since crosstool-ng has the necessary patches, we can just use crosstool-ng to get an appropriate toolchain. While at it, use kernel 3.10 headers since that's the version documented in platform support for this target.
try-job: dist-powerpc64le-linux-gnu
try-job: dist-powerpc64le-linux-musl