avr-firmwares/finddeps.sh
Ain ca830706ac Fix finddeps: deduplicate outputs
This was causing weird heisenbugs.
2018-01-29 19:43:06 +00:00

12 lines
284 B
Bash
Executable File

#!/bin/sh
search() {
echo "$1"
prefix="$(printf "%s\n" "$1"|sed 's|[^/]*$||')"
deps="$(grep -E '^#include "[^"]*"$' "$1"|cut '-d"' -f2|
\sed "s|^|$prefix|;s|\.h\$|.c|"|grep -v "$1")"
for i in $deps; do search $i; done
}
search "$1"|sort -u|grep -v "$1"|sed 's|\.c$|.o|'