@@ -364,29 +364,15 @@ jobs:
364364 test -h /tmp/usr/local/bin/sha512sum
365365 test -h /tmp/usr/local/bin/shake128sum
366366 test -h /tmp/usr/local/bin/shake256sum
367- - name : " `make install MULTICALL=y`"
367+ - name : " `make install MULTICALL=y LN=ln -svf `"
368368 shell : bash
369369 run : |
370370 set -x
371- DESTDIR=/tmp/ make PROFILE=release MULTICALL=y install
372- # Check that the utils are present
373- test -f /tmp/usr/local/bin/coreutils
374- # Check that hashsum symlinks are present
375- test -h /tmp/usr/local/bin/b2sum
376- test -h /tmp/usr/local/bin/b3sum
377- test -h /tmp/usr/local/bin/md5sum
378- test -h /tmp/usr/local/bin/sha1sum
379- test -h /tmp/usr/local/bin/sha224sum
380- test -h /tmp/usr/local/bin/sha256sum
381- test -h /tmp/usr/local/bin/sha3-224sum
382- test -h /tmp/usr/local/bin/sha3-256sum
383- test -h /tmp/usr/local/bin/sha3-384sum
384- test -h /tmp/usr/local/bin/sha3-512sum
385- test -h /tmp/usr/local/bin/sha384sum
386- test -h /tmp/usr/local/bin/sha3sum
387- test -h /tmp/usr/local/bin/sha512sum
388- test -h /tmp/usr/local/bin/shake128sum
389- test -h /tmp/usr/local/bin/shake256sum
371+ DESTDIR=/tmp/ make PROFILE=release MULTICALL=y LN="ln -svf" install
372+ # Check that relative symlinks of hashsum are present
373+ [ $(readlink /tmp/usr/local/bin/b2sum) = coreutils ]
374+ [ $(readlink /tmp/usr/local/bin/md5sum) = coreutils ]
375+ [ $(readlink /tmp/usr/local/bin/sha512sum) = coreutils ]
390376 - name : " `make UTILS=XXX`"
391377 shell : bash
392378 run : |
@@ -483,9 +469,11 @@ jobs:
483469 run : |
484470 ## `make install`
485471 make install DESTDIR=target/size-release/
486- make install MULTICALL=y DESTDIR=target/size-multi-release/
472+ make install MULTICALL=y LN="ln -vf" DESTDIR=target/size-multi-release/
487473 # strip the results
488474 strip target/size*/usr/local/bin/*
475+ - name : Test for hardlinks
476+ run : [ $(stat -c %i target/size-multi-release/usr/local/bin/cp) = $(stat -c %i target/size-multi-release/usr/local/bin/coreutils) ]
489477 - name : Compute uutil release sizes
490478 shell : bash
491479 run : |
@@ -1280,6 +1268,40 @@ jobs:
12801268 - name : Lint with SELinux
12811269 run : lima bash -c "cd work && cargo clippy --all-targets --features 'feat_selinux' -- -D warnings"
12821270
1271+ test_selinux_stubs :
1272+ name : Build/SELinux-Stubs (Non-Linux)
1273+ needs : [ min_version, deps ]
1274+ runs-on : ${{ matrix.job.os }}
1275+ strategy :
1276+ fail-fast : false
1277+ matrix :
1278+ job :
1279+ - { os: macos-latest , features: feat_os_macos }
1280+ - { os: windows-latest , features: feat_os_windows }
1281+ steps :
1282+ - uses : actions/checkout@v5
1283+ with :
1284+ persist-credentials : false
1285+ - uses : dtolnay/rust-toolchain@stable
1286+ - uses : Swatinem/rust-cache@v2
1287+
1288+ - name : Build SELinux utilities as stubs
1289+ run : cargo build -p uu_chcon -p uu_runcon
1290+
1291+ - name : Verify stub binaries exist
1292+ shell : bash
1293+ run : |
1294+ if [ "${{ runner.os }}" = "Windows" ]; then
1295+ test -f target/debug/chcon.exe || exit 1
1296+ test -f target/debug/runcon.exe || exit 1
1297+ else
1298+ test -f target/debug/chcon || exit 1
1299+ test -f target/debug/runcon || exit 1
1300+ fi
1301+
1302+ - name : Verify workspace builds with stubs
1303+ run : cargo build --features ${{ matrix.job.features }}
1304+
12831305 benchmarks :
12841306 name : Run benchmarks (CodSpeed)
12851307 runs-on : ubuntu-latest
0 commit comments