Resolve x64 libc links through the sysroot.
Some checks failed
Tagged release / prepare-release (push) Successful in 3m1s
Tagged release / build-linux-x64 (push) Failing after 28m41s
Tagged release / build-macos (push) Has been skipped
Tagged release / build-linux-arm64 (push) Has been skipped
Tagged release / build-windows (push) Has been skipped
Tagged release / publish-release (push) Has been skipped

This commit is contained in:
Hermes Agent
2026-08-14 15:21:41 +00:00
parent 83fe50657d
commit f00dd177de
2 changed files with 5 additions and 1 deletions

View File

@@ -139,7 +139,7 @@ jobs:
CC_x86_64_unknown_linux_gnu: x86_64-linux-gnu-gcc
CXX_x86_64_unknown_linux_gnu: x86_64-linux-gnu-g++
CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER: x86_64-linux-gnu-gcc
CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS: -C link-arg=-Wl,-rpath,$ORIGIN -L native=/opt/ruds-x64-sysroot/usr/lib/x86_64-linux-gnu -L native=/opt/ruds-x64-sysroot/lib/x86_64-linux-gnu
CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS: -C link-arg=--sysroot=/opt/ruds-x64-sysroot -C link-arg=-Wl,-rpath,$ORIGIN -L native=/opt/ruds-x64-sysroot/usr/lib/x86_64-linux-gnu -L native=/opt/ruds-x64-sysroot/lib/x86_64-linux-gnu
PKG_CONFIG_ALLOW_CROSS: "1"
PKG_CONFIG_LIBDIR: /opt/ruds-x64-sysroot/usr/lib/x86_64-linux-gnu/pkgconfig:/opt/ruds-x64-sysroot/usr/lib/pkgconfig:/opt/ruds-x64-sysroot/usr/share/pkgconfig
PKG_CONFIG_SYSROOT_DIR: /opt/ruds-x64-sysroot

View File

@@ -230,6 +230,10 @@ fn tagged_releases_are_built_and_packaged_with_rust_tools() {
"foreign libraries must only be downloaded after enabling multiarch"
);
assert!(workflow.contains("PKG_CONFIG_SYSROOT_DIR: /opt/ruds-x64-sysroot"));
assert!(
workflow.contains("link-arg=--sysroot=/opt/ruds-x64-sysroot"),
"the cross-linker must resolve absolute libc linker-script paths inside the x64 sysroot"
);
let workspace_manifest = fs::read_to_string(workspace.join("Cargo.toml")).unwrap();
let core_manifest = fs::read_to_string(workspace.join("crates/bds-core/Cargo.toml")).unwrap();