diff options
author | Arnout Engelen <arnout@bzzt.net> | 2023-04-23 11:53:47 +0200 |
---|---|---|
committer | Arnout Engelen <arnout@bzzt.net> | 2023-04-23 11:53:47 +0200 |
commit | 9156daa547086435dadc55ed78bb0d1a85a03a6c (patch) | |
tree | 7e6b68c4c92deb92610fd321eed66aea14d4d2a2 /pkgs/build-support/setup-hooks/separate-debug-info.sh | |
parent | 645bc49f34fa8eff95479f0345ff57e55b53437e (diff) | |
download | nixpkgs-9156daa547086435dadc55ed78bb0d1a85a03a6c.tar nixpkgs-9156daa547086435dadc55ed78bb0d1a85a03a6c.tar.gz nixpkgs-9156daa547086435dadc55ed78bb0d1a85a03a6c.tar.bz2 nixpkgs-9156daa547086435dadc55ed78bb0d1a85a03a6c.tar.lz nixpkgs-9156daa547086435dadc55ed78bb0d1a85a03a6c.tar.xz nixpkgs-9156daa547086435dadc55ed78bb0d1a85a03a6c.tar.zst nixpkgs-9156daa547086435dadc55ed78bb0d1a85a03a6c.zip |
setup-hooks/separate-debug-info.sh: make deterministic
If multiple files with the same build id were found, we silently randomly overwrote one with the other. Change the order to make the output deterministic, and emit a warning when overwriting.
Diffstat (limited to 'pkgs/build-support/setup-hooks/separate-debug-info.sh')
-rw-r--r-- | pkgs/build-support/setup-hooks/separate-debug-info.sh | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/pkgs/build-support/setup-hooks/separate-debug-info.sh b/pkgs/build-support/setup-hooks/separate-debug-info.sh index ca651b4393a..334db4cfcd9 100644 --- a/pkgs/build-support/setup-hooks/separate-debug-info.sh +++ b/pkgs/build-support/setup-hooks/separate-debug-info.sh @@ -36,10 +36,14 @@ _separateDebugInfo() { # architecture than we're building for. (This happens with # firmware blobs in QEMU.) ( + if [ -f "$dst/${id:0:2}/${id:2}.debug" ] + then + echo "separate-debug-info: warning: multiple files with build id $id found, overwriting" + fi $OBJCOPY --only-keep-debug "$i" "$dst/${id:0:2}/${id:2}.debug" # Also a create a symlink <original-name>.debug. ln -sfn ".build-id/${id:0:2}/${id:2}.debug" "$dst/../$(basename "$i")" ) || rmdir -p "$dst/${id:0:2}" - done < <(find "$prefix" -type f -print0) + done < <(find "$prefix" -type f -print0 | sort -z) } |