ci: drop nix libiconv from darwin build (portable macOS binary)
The smoke-test caught the aarch64 binary linking a /nix/store libiconv.dylib — non-portable (won't exist on a user's Mac). The Apple SDK already provides a system libiconv stub, so removing pkgs.libiconv makes the linker resolve -liconv to /usr/lib instead. The smoke-test now fails if any /nix/store dylib is linked.
This commit is contained in:
@@ -34,6 +34,12 @@ jobs:
|
||||
f="target/$t/release/rdbms-playground"
|
||||
file "$f"
|
||||
echo "--- linked libs (otool -L) ---"
|
||||
otool -L "$f" 2>/dev/null | head -8 || true
|
||||
otool -L "$f"
|
||||
# Portability guard: a distributable macOS binary must link only
|
||||
# system libs (/usr/lib, /System/Library) — never a /nix/store path.
|
||||
if otool -L "$f" | grep -q /nix/store; then
|
||||
echo "ERROR: $t binary links a /nix/store dylib — not portable"; exit 1
|
||||
fi
|
||||
echo "OK: $t links only system libraries"
|
||||
done
|
||||
echo "=== both darwin targets built ==="
|
||||
echo "=== both darwin targets built + portable ==="
|
||||
|
||||
Reference in New Issue
Block a user