util/domd: harmonize with compiler detection in Configure.
authorAndy Polyakov <appro@openssl.org>
Tue, 15 May 2018 18:31:04 +0000 (20:31 +0200)
committerAndy Polyakov <appro@openssl.org>
Fri, 18 May 2018 09:37:24 +0000 (11:37 +0200)
Configure detects if compiler can generate dependency lists for any
command name, while this script didn't quite tolerate arbitrary one.

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/6261)

util/domd

index 5a92559c9b7a831f03f0af26aef2ef5d003a58bf..6eb019ea1672d7e482ec0496017c19b9084cc2bd 100755 (executable)
--- a/util/domd
+++ b/util/domd
@@ -6,7 +6,11 @@ TOP=$1
 shift
 if [ "$1" = "-MD" ]; then
     shift
-    MAKEDEPEND=$1
+    MAKEDEPEND=""
+    while [ "$1" != "--" ]; do
+        MAKEDEPEND="$MAKEDEPEND $1"
+        shift
+    done
     shift
 fi
 if [ "$MAKEDEPEND" = "" ]; then MAKEDEPEND=makedepend; fi
@@ -16,8 +20,11 @@ mv Makefile Makefile.save
 cp Makefile.save Makefile
 # fake the presence of Kerberos
 touch $TOP/krb5.h
-if ${MAKEDEPEND} --version 2>&1 | grep "clang" > /dev/null ||
-   echo $MAKEDEPEND | grep "gcc" > /dev/null; then
+if expr "$MAKEDEPEND" : ".*makedepend" > /dev/null; then
+    ${MAKEDEPEND} -D OPENSSL_DOING_MAKEDEPEND $@ && \
+    ${PERL} $TOP/util/clean-depend.pl < Makefile > Makefile.new
+    RC=$?
+else
     args=""
     while [ $# -gt 0 ]; do
        if [ "$1" != "--" ]; then args="$args $1"; fi
@@ -29,10 +36,6 @@ if ${MAKEDEPEND} --version 2>&1 | grep "clang" > /dev/null ||
     ${PERL} $TOP/util/clean-depend.pl < Makefile.tmp > Makefile.new
     RC=$?
     rm -f Makefile.tmp
-else
-    ${MAKEDEPEND} -D OPENSSL_DOING_MAKEDEPEND $@ && \
-    ${PERL} $TOP/util/clean-depend.pl < Makefile > Makefile.new
-    RC=$?
 fi
 if cmp -s Makefile.save Makefile.new; then
     mv Makefile.save Makefile