community/rust: changes to add initial support for ppc64le #4549
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Patch set includes changes to libc and liblibc subdirs to support definitions for ppc64le. An initial PR was submitted to rust-lang/libc#1023 to add these changes in the long term to the libc project.
There are currently some limitations when building for ppc64le. When running with parallelism the build will intermittently stall, even with the "-j 1" parameter (looks like rustc internal job server still splits out multiple instances for rustc work). To workaround that for now taskset to cpu 0 is added. This problem will be investigated further.
Also a number of the check() tests fail on ppc64le which will also need further investigation with the rust team. For now check() had been made conditional for ppc64le.
These patches have been used to create rustc, rustc-std, and cargo binaries. For reference a github project has been setup that contains the methodology used as well as the output (tar.gz and apk files) https://github.com/mksully22/ppc64le_alpine_rust_1.26.2