-
Notifications
You must be signed in to change notification settings - Fork 13.4k
openbsd: unbreak build on native platform #96597
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Conversation
(rust-highfive has picked a reviewer for you, use r? to override) |
cc @davidtwco |
r=me with commits squashed. I guess I'm not super happy maintaining a duplicate of the in-compiler stabilization per-target list here, but for now this seems OK; it might be worth unconditionally passing the flag, though that has its own trouble. |
after rust-lang#95612, only linux and windows target are build with -Zunstable-options, but others platforms might use -Csplit-debuginfo add "openbsd" target in the list of platforms using it.
cab46b7
to
6d865f8
Compare
@bors r=davidtwco,Mark-Simulacrum |
📌 Commit 6d865f8 has been approved by |
commits has been squashed. thanks. |
…idtwco,Mark-Simulacrum openbsd: unbreak build on native platform after rust-lang#95612, only linux and windows target are build with `-Zunstable-options`, but others platforms might use `-Csplit-debuginfo` currently, without this PR, the build of rustc on OpenBSD fails with: ``` Building stage0 tool unstable-book-gen (x86_64-unknown-openbsd) running: "/data/semarie/build-rust/install_dir/beta/bin/cargo" "build" "--target" "x86_64-unknown-openbsd" "-Zbinary-dep-depinfo" "-j" "4" "-v" "--release" "--frozen" "--manifest-path" "/data/semarie/build-rust/build_dir/rustc-nightly-src/src/tools/unstable-book-gen/Cargo.toml" "--message-format" "json-render-diagnostics" error: failed to run `rustc` to learn about target-specific information Caused by: process didn't exit successfully: `/data/semarie/build-rust/build_dir/build/bootstrap/debug/rustc - --crate-name ___ --print=file-names --cfg=bootstrap -Csymbol-mangling-version=v0 -Zmacro-backtrace -Clink-args=-Wl,-z,origin '-Clink-args=-Wl,-rpath,$ORIGIN/../lib' -Csplit-debuginfo=off -Ztls-model=initial-exec --target x86_64-unknown-openbsd --crate-type bin --crate-type rlib --crate-type dylib --crate-type cdylib --crate-type staticlib --crate-type proc-macro --print=sysroot --print=cfg` (exit status: 1) --- stdout Did not run successfully: exit status: 1 "/data/semarie/build-rust/install_dir/beta/bin/rustc" "-" "--crate-name" "___" "--print=file-names" "--cfg=bootstrap" "-Csymbol-mangling-version=v0" "-Zmacro-backtrace" "-Clink-args=-Wl,-z,origin" "-Clink-args=-Wl,-rpath,$ORIGIN/../lib" "-Csplit-debuginfo=off" "-Ztls-model=initial-exec" "--target" "x86_64-unknown-openbsd" "--crate-type" "bin" "--crate-type" "rlib" "--crate-type" "dylib" "--crate-type" "cdylib" "--crate-type" "staticlib" "--crate-type" "proc-macro" "--print=sysroot" "--print=cfg" "-Wrust_2018_idioms" "-Wunused_lifetimes" "-Wsemicolon_in_expressions_from_macros" "-Dwarnings" "--sysroot" "/data/semarie/build-rust/install_dir/beta" ------------- --- stderr error: `-Csplit-debuginfo` is unstable on this platform command did not execute successfully: "/data/semarie/build-rust/install_dir/beta/bin/cargo.bin" "build" "--target" "x86_64-unknown-openbsd" "-Zbinary-dep-depinfo" "-j" "4" "-v" "--release" "--frozen" "--manifest-path" ``` I am suspecting that all unix might be affected, but I am unsure about the right conditional to use. so I only added "openbsd" target inside it as I am able to test it. rustc nightly built correctly with this PR on openbsd.
Rollup of 6 pull requests Successful merges: - rust-lang#96597 (openbsd: unbreak build on native platform) - rust-lang#96662 (Fix typo in lint levels doc) - rust-lang#96668 (Fix flaky rustdoc-ui test because it did not replace time result) - rust-lang#96679 (Quick fix for rust-lang#96223.) - rust-lang#96684 (Update `ProjectionElem::Downcast` documentation) - rust-lang#96686 (Add some TAIT-related tests) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
The exact same is needed on the other BSDs. |
…-bsd, r=Mark-Simulacrum bootstrap: bsd platform flags for split debuginfo Addresses rust-lang#96597 (comment). Bootstrap currently provides `-Zunstable-options` for OpenBSD when using split debuginfo - this commit provides it for all BSD targets. We should probably work out a better way of handling the stability of the split debuginfo flag - all options for the flag are unstable but one of them is the default for each platform already. cc `@m-ou-se` r? `@Mark-Simulacrum`
after #95612, only linux and windows target are build with
-Zunstable-options
, but others platforms might use-Csplit-debuginfo
currently, without this PR, the build of rustc on OpenBSD fails with:
I am suspecting that all unix might be affected, but I am unsure about the right conditional to use. so I only added "openbsd" target inside it as I am able to test it.
rustc nightly built correctly with this PR on openbsd.