make depend: prefer clang over makedepend
[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 fi
12 if [ "$MAKEDEPEND" = "" ]; then MAKEDEPEND=makedepend; fi
13
14 cp Makefile Makefile.save
15 if ${MAKEDEPEND} --version 2>&1 | grep -q "clang" ||
16    echo $MAKEDEPEND | grep -q "gcc"; then
17     args=""
18     while [ $# -gt 0 ]; do
19         if [ "$1" != "--" ]; then args="$args $1"; fi
20         shift
21     done
22     sed -e '/^# DO NOT DELETE.*/,$d' < Makefile > Makefile.tmp
23     echo '# DO NOT DELETE THIS LINE -- make depend depends on it.' >> Makefile.tmp
24     ${MAKEDEPEND} -Werror -D OPENSSL_DOING_MAKEDEPEND -M $args >> Makefile.tmp || exit 1
25     ${PERL} $TOP/util/clean-depend.pl < Makefile.tmp > Makefile.new
26     RC=$?
27     rm -f Makefile.tmp
28 else
29     ${MAKEDEPEND} -D OPENSSL_DOING_MAKEDEPEND $@ && \
30     ${PERL} $TOP/util/clean-depend.pl < Makefile > Makefile.new
31     RC=$?
32 fi
33 mv Makefile.new Makefile
34
35 exit $RC