Enable static_position_independent_executables on all gnu targets - #158510
Conversation
|
These commits modify compiler targets. |
|
r? @adwinwhite rustbot has assigned @adwinwhite. Use Why was this reviewer chosen?The reviewer was selected based on:
|
|
probably r? codegen |
static_position_executables on all gnu and musl targetsstatic_position_independent_executables on all gnu and musl targets
|
I think we should do this, but I suspect this will be disruptive for some uncommon use cases. @bors r+ rollup=iffy (anything that touches linkage might perturb a more obscure target) |
Enable `static_position_independent_executables` on all gnu and musl targets Both musl and glibc have supported static PIE for a while, so there's no reason to ever build a non-PIE executable with a modern toolchain.
…uwer Rollup of 17 pull requests Successful merges: - #158510 (Enable `static_position_independent_executables` on all gnu and musl targets) - #158541 (Move `std::io::Write` to `core::io`) - #158899 (Fix `unaligned_volatile_store` by removing `MemFlags::UNALIGNED`) - #155429 (Support `u128`/`i128` c-variadic arguments) - #156370 (Reject linked dylib EII default overrides) - #157153 (allow `Allocator`s to be used as `#[global_allocator]`s) - #158535 (Support `#[track_caller]` on EII declarations) - #158617 (allow mGCA const arguments to fall back to anon consts) - #158645 (Fix splat ICEs and ban it in closures) - #158988 (Redo `TokenStreamIter`) - #158347 (Improve generic parameters handling for #[diagnostic::on_const]) - #158722 (delegation: do not always inherit `ConstArgHasType` predicates) - #158739 (view-types: HIR lowering) - #158883 (tests: fix enum-match.rs to handle LLVM 23) - #158886 (Add documentation for the `no_std` attribute) - #158951 (Merge three `MaxUniverse`s into one) - #158961 (Reapply "LLVM 23: Run AssignGUIDPass in some places")
Enable `static_position_independent_executables` on all gnu and musl targets Both musl and glibc have supported static PIE for a while, so there's no reason to ever build a non-PIE executable with a modern toolchain.
Enable `static_position_independent_executables` on all gnu and musl targets Both musl and glibc have supported static PIE for a while, so there's no reason to ever build a non-PIE executable with a modern toolchain.
Enable `static_position_independent_executables` on all gnu and musl targets Both musl and glibc have supported static PIE for a while, so there's no reason to ever build a non-PIE executable with a modern toolchain.
…uwer Rollup of 21 pull requests Successful merges: - #150946 (intrinsics: Add a fallback for non-const libm float functions) - #158510 (Enable `static_position_independent_executables` on all gnu and musl targets) - #158541 (Move `std::io::Write` to `core::io`) - #158899 (Fix `unaligned_volatile_store` by removing `MemFlags::UNALIGNED`) - #155429 (Support `u128`/`i128` c-variadic arguments) - #156370 (Reject linked dylib EII default overrides) - #156508 (Infer all anonymous lifetimes in assoc consts as `'static`) - #158617 (allow mGCA const arguments to fall back to anon consts) - #158645 (Fix splat ICEs and ban it in closures) - #158859 (Improve `-Zls` diagnostic message on `.rs` files) - #158988 (Redo `TokenStreamIter`) - #158347 (Improve generic parameters handling for #[diagnostic::on_const]) - #158722 (delegation: do not always inherit `ConstArgHasType` predicates) - #158739 (view-types: HIR lowering) - #158883 (tests: fix enum-match.rs to handle LLVM 23) - #158886 (Add documentation for the `no_std` attribute) - #158940 (Implement feature `char_to_u32`) - #158951 (Merge three `MaxUniverse`s into one) - #158961 (Reapply "LLVM 23: Run AssignGUIDPass in some places") - #158996 ([compiler] Implement `PartialOrd` via `Ord` for `Span` and newtype_indexes) - #159005 (Use `as_lang_item` instead of repeatedly matching)
Enable `static_position_independent_executables` on all gnu and musl targets Both musl and glibc have supported static PIE for a while, so there's no reason to ever build a non-PIE executable with a modern toolchain.
…uwer Rollup of 24 pull requests Successful merges: - #150946 (intrinsics: Add a fallback for non-const libm float functions) - #158510 (Enable `static_position_independent_executables` on all gnu and musl targets) - #158541 (Move `std::io::Write` to `core::io`) - #158899 (Fix `unaligned_volatile_store` by removing `MemFlags::UNALIGNED`) - #156027 (Consider captured regions for opaque type region liveness.) - #156370 (Reject linked dylib EII default overrides) - #156508 (Infer all anonymous lifetimes in assoc consts as `'static`) - #157561 (rustdoc: do not include extra stuff in span) - #158617 (allow mGCA const arguments to fall back to anon consts) - #158645 (Fix splat ICEs and ban it in closures) - #158859 (Improve `-Zls` diagnostic message on `.rs` files) - #158988 (Redo `TokenStreamIter`) - #158347 (Improve generic parameters handling for #[diagnostic::on_const]) - #158384 (Allow BackwardIncompatibleDropHint in polonius legacy) - #158722 (delegation: do not always inherit `ConstArgHasType` predicates) - #158739 (view-types: HIR lowering) - #158877 (borrowck: Keep returned `path` from `best_blame_constraint()` consistent) - #158883 (tests: fix enum-match.rs to handle LLVM 23) - #158886 (Add documentation for the `no_std` attribute) - #158940 (Implement feature `char_to_u32`) - #158951 (Merge three `MaxUniverse`s into one) - #158961 (Reapply "LLVM 23: Run AssignGUIDPass in some places") - #158995 (Use REST API in linkchecker script) - #158996 ([compiler] Implement `PartialOrd` via `Ord` for `Span` and newtype_indexes)
Enable `static_position_independent_executables` on all gnu and musl targets Both musl and glibc have supported static PIE for a while, so there's no reason to ever build a non-PIE executable with a modern toolchain.
|
This pull request was unapproved. This PR was contained in a rollup (#159045), which was unapproved. |
|
💔 Test for 55b704f failed: CI. Failed job:
|
|
This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed. Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers. |
|
It seems that the |
static_position_independent_executables on all gnu and musl targetsstatic_position_independent_executables on all gnu targets
|
@bors r+ rollup=iffy |
Enable `static_position_independent_executables` on all gnu targets Glibc has supported static PIE for a while, so there's no reason to ever build a non-PIE executable with a modern toolchain.
|
💔 I suspect this PR failed tests as part of a rollup After fixing the problem, consider running a try job for the failed job before re-approving. Link to failure: #161089 (comment) @bors try jobs=test-various |
|
This pull request was unapproved. This PR was contained in a rollup (#161089), which was unapproved. |
Enable `static_position_independent_executables` on all gnu targets try-job: test-various
This comment has been minimized.
This comment has been minimized.
|
This was not the problematic pr, sorry |
…uwer Rollup of 11 pull requests Successful merges: - #158510 (Enable `static_position_independent_executables` on all gnu targets) - #160441 (PowerPC inline ASM: Fix scalar floats being in the wrong vector lane on little endian) - #160760 (Miri: give the incremental session a chance to finish) - #160892 (Inline some hot new-solver functions) - #160821 (Updates the expect messages in library/std/src/net/udp.rs to follow the style guide) - #160997 (Add an AGENTS.md that enforces the LLM policy) - #161057 (Silence unecessary errors on `Vec<foo::Bar>` to `Vec<foo:Bar>` typo) - #161079 (bootstrap: Clean up imports related to `define_config!` and `check_ci_llvm!`) - #161080 (propagate `RerunNonErased` in `projection_may_match`) - #161085 (bootstrap: Restrict the normalization of relative paths) - #161086 (add crashtests [3/N])
Rollup merge of #158510 - Amanieu:static-pie-gnu, r=saethlin Enable `static_position_independent_executables` on all gnu targets Glibc has supported static PIE for a while, so there's no reason to ever build a non-PIE executable with a modern toolchain.
Rollup merge of #158510 - Amanieu:static-pie-gnu, r=saethlin Enable `static_position_independent_executables` on all gnu targets Glibc has supported static PIE for a while, so there's no reason to ever build a non-PIE executable with a modern toolchain.
View all comments
Glibc has supported static PIE for a while, so there's no reason to ever build a non-PIE executable with a modern toolchain.