From: Debian Rust Maintainers Date: Thu, 14 Jul 2022 13:17:38 +0200 Subject: d-bootstrap-rustflags Forwarded: not-needed =================================================================== --- src/bootstrap/src/core/builder/cargo.rs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/bootstrap/src/core/builder/cargo.rs b/src/bootstrap/src/core/builder/cargo.rs index a73e6cf..55e4cc4 100644 --- a/src/bootstrap/src/core/builder/cargo.rs +++ b/src/bootstrap/src/core/builder/cargo.rs @@ -627,6 +627,18 @@ impl Builder<'_> { // #[cfg(bootstrap)] as we are transition `test` to userspace cfg hostflags.arg("--check-cfg=cfg(test)"); + // Debian-specific stuff here + // set linker flags from LDFLAGS + if let Ok(ldflags) = env::var("LDFLAGS") { + for flag in ldflags.split_whitespace() { + if target.contains("windows") && flag.contains("relro") { + // relro is ELF-specific + continue; + } + rustflags.arg(&format!("-Clink-args={}", flag)); + } + } + // FIXME: It might be better to use the same value for both `RUSTFLAGS` and `RUSTDOCFLAGS`, // but this breaks CI. At the very least, stage0 `rustdoc` needs `--cfg bootstrap`. See // #71458.