summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/git-ignore-elf14
1 files changed, 14 insertions, 0 deletions
diff --git a/scripts/git-ignore-elf b/scripts/git-ignore-elf
new file mode 100755
index 0000000..77cfac7
--- /dev/null
+++ b/scripts/git-ignore-elf
@@ -0,0 +1,14 @@
+#!/bin/sh
+set -eu
+cd "$(git rev-parse --show-toplevel)"
+file=.gitignore
+new=$file.new.$$
+(
+ if [ -e "$file" ]; then
+ cat "$file"
+ fi
+ find . -name .git -prune -o -type f ! -name '*.o' ! -name '*.so' \
+ -print0 | xargs -0 file | grep ': *ELF ' | sed 's/:.*//' |
+ sed 's,^./,,'
+ ) | perl -ne 'print if !$already{$_}++' >"$new"
+mv "$new" "$file"