fix: use readelf for checking static compilation

This commit is contained in:
Maxim De Clercq 2022-01-23 19:24:36 +01:00
parent 64c25ea4a1
commit 77ad4cb8f8
No known key found for this signature in database
GPG key ID: D35643779C52BA70

View file

@ -49,9 +49,9 @@ variables:
# cross-compile conduit for target # cross-compile conduit for target
- 'time ./cross/build.sh --locked --release' - 'time ./cross/build.sh --locked --release'
- 'mv "target/$TARGET/release/conduit" "conduit-$TARGET"' - 'mv "target/$TARGET/release/conduit" "conduit-$TARGET"'
# assert that the binary is statically linked # print information about linking for debugging
- 'ldd conduit-$TARGET' # print linking information - 'file conduit-$TARGET' # print file information
- 'file conduit-$TARGET | sed -e "/static\(-pie\|ally\) linked/!q1"' # print elf information - 'readelf --dynamic conduit-$TARGET | sed -e "/NEEDED/q1"' # ensure statically linked
cache: cache:
# https://doc.rust-lang.org/cargo/guide/cargo-home.html#caching-the-cargo-home-in-ci # https://doc.rust-lang.org/cargo/guide/cargo-home.html#caching-the-cargo-home-in-ci
key: 'cargo-cache-$TARGET' key: 'cargo-cache-$TARGET'
@ -125,9 +125,9 @@ build:release:cargo:aarch64-unknown-linux-musl:
# cross-compile conduit for target # cross-compile conduit for target
- 'time ./cross/build.sh --locked' - 'time ./cross/build.sh --locked'
- 'mv "target/$TARGET/debug/conduit" "conduit-debug-$TARGET"' - 'mv "target/$TARGET/debug/conduit" "conduit-debug-$TARGET"'
# assert that the binary is statically linked # print information about linking for debugging
- 'ldd conduit-debug-$TARGET' # print linking information - 'file conduit-debug-$TARGET' # print file information
- 'file conduit-debug-$TARGET | sed -e "/static\(-pie\|ally\) linked/!q1"' # print elf information - 'readelf --dynamic conduit-debug-$TARGET | sed -e "/NEEDED/q1"' # ensure statically linked
artifacts: artifacts:
expire_in: 4 weeks expire_in: 4 weeks