summaryrefslogtreecommitdiff
path: root/autoconf/scripts/depend.sh
blob: f17f81e737f705d38cc9ec794e7d19e2da7b118c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
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