16de5c7ebcc62973360af0efdc8f326f22f684e9
[openssl.git] / util / domd
1 #!/bin/sh
2 # Do a makedepend, only leave out the standard headers
3 # Written by Ben Laurie <ben@algroup.co.uk> 19 Jan 1999
4
5 TOP=$1
6 shift
7 if [ "$1" = "-MD" ]; then
8     shift
9     MAKEDEPEND=$1
10     shift
11     if [ "$MAKEDEPEND" = "ccache" ]; then
12         MAKEDEPEND="$MAKEDEPEND $1"
13         shift
14     fi
15 fi
16 if [ "$MAKEDEPEND" = "" ]; then MAKEDEPEND=makedepend; fi
17
18 cp Makefile Makefile.save
19 if ${MAKEDEPEND} --version 2>&1 | grep "clang" > /dev/null ||
20    echo $MAKEDEPEND | grep "gcc" > /dev/null; then
21     args=""
22     while [ $# -gt 0 ]; do
23         if [ "$1" != "--" ]; then args="$args $1"; fi
24         shift
25     done
26     sed -e '/^# DO NOT DELETE.*/,$d' < Makefile > Makefile.tmp
27     echo '# DO NOT DELETE THIS LINE -- make depend depends on it.' >> Makefile.tmp
28     ${MAKEDEPEND} -Werror -D OPENSSL_DOING_MAKEDEPEND -M $args >> Makefile.tmp || exit 1
29     ${PERL} $TOP/util/clean-depend.pl < Makefile.tmp > Makefile.new
30     RC=$?
31     rm -f Makefile.tmp
32 else
33     ${MAKEDEPEND} -D OPENSSL_DOING_MAKEDEPEND $@ && \
34     ${PERL} $TOP/util/clean-depend.pl < Makefile > Makefile.new
35     RC=$?
36 fi
37 mv Makefile.new Makefile
38
39 exit $RC