summaryrefslogtreecommitdiff
path: root/autoconf/scripts/depend.sh
diff options
context:
space:
mode:
Diffstat (limited to 'autoconf/scripts/depend.sh')
-rwxr-xr-xautoconf/scripts/depend.sh30
1 files changed, 30 insertions, 0 deletions
diff --git a/autoconf/scripts/depend.sh b/autoconf/scripts/depend.sh
new file mode 100755
index 0000000..f17f81e
--- /dev/null
+++ b/autoconf/scripts/depend.sh
@@ -0,0 +1,30 @@
+#!/bin/sh
+#
+# Generate dependencies for a C source file.
+#
+
+CC=$1
+shift
+file=$1
+shift
+stem=$1
+shift
+srcdir=$1
+abssrc=`echo $srcdir | sed ':1
+s,^\./,,g
+t1'`
+shift
+
+abssrc=`echo "$abssrc" | sed 's,\\.,\\\\.,g'`
+srcdir=`echo "$srcdir" | sed 's,\\.,\\\\.,g'`
+
+$CC -M -MG $* $file \
+| sed -e 's, /[^ ]*,,g' -e "s,^.*\.o:,${stem}.d ${stem}.o:," \
+ -e '/^ \\$/d' -e 's/ \\$//' \
+ -e 's,'"$srcdir"'/,,g' -e 's,'"$abssrc"'/,,g' \
+| tr '\n' ' ' \
+| tr -s ' '
+
+echo
+
+# EOF