diff options
Diffstat (limited to 'gen-deps.sh')
-rwxr-xr-x | gen-deps.sh | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/gen-deps.sh b/gen-deps.sh new file mode 100755 index 0000000..6f7b4af --- /dev/null +++ b/gen-deps.sh @@ -0,0 +1,17 @@ +#!/bin/sh +# This script wraps gcc -MM, which unhelpfully strips the directory +# off of the input filename. In other words, if you run: +# +# $ gcc -MM src/upb_parse.c +# +# ...the emitted dependency information looks like: +# +# upb_parse.o: src/upb_parse.h [...] +# +# Since upb_parse.o is actually in src, the dependency information is +# not used. To remedy this, we use the -MT flag (see gcc docs). + +rm -f deps +for file in $@; do + gcc -MM $file -MT ${file%.*}.o -Idescriptor -Isrc -I. >> deps +done |