X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=depend.sh;h=746b0d2b1c82914ef96ebbf2a724f03bb872573d;hp=60d4eba6b8fc22ca5d0431444ec65d7cb2c74ab2;hb=6bcd10bc4ada11a04bc2b7425afe5a8855592cd2;hpb=1c8226eae0e976d940366cd10bd708d8e4d0bca5 diff --git a/depend.sh b/depend.sh index 60d4eba6..746b0d2b 100755 --- a/depend.sh +++ b/depend.sh @@ -4,19 +4,22 @@ # the given input file and parse the output to add a *.d target with the same # dependencies. -# The first two arguments to that script are special: $1 is the object -# directory. This string is prefixed to both the .o and the .d target. $2 is -# the directory that contains the *.cmdline.h files generated by gengetopt. +# The first three arguments to that script are special: $1 is the +# dependency directory and $2 is the object directory. These are used +# to prefix the .d and .o targets respectively. $3 is the directory +# that contains the *.cmdline.h files generated by gengetopt. -# As gcc outputs the dependencies on the *.cmdline.h files either as either -# foo.cmdline.h or as $cmdline_dir/foo,cmdline.h, depending on whether the +# As gcc outputs the dependencies on the *.cmdline.h files either as +# foo.cmdline.h or as $cmdline_dir/foo.cmdline.h, depending on whether the # latter file exists, we prefix the former with $2/ -object_dir="$1" -cmdline_dir="$2" +dep_dir="$1" +object_dir="$2" +cmdline_dir="$3" +shift shift shift LC_ALL=C gcc -MM -MG "$@" \ - | sed -e "s@^\(.*\)\.o:@$object_dir/\1.d $object_dir/\1.o:@" \ + | sed -e "s@^\(.*\)\.o:@$dep_dir/\1.d $object_dir/\1.o:@" \ -e "s@[ ^]\([a-zA-Z0-9_]\{1,\}\.cmdline.h\)@ $cmdline_dir/\1@g"