summaryrefslogtreecommitdiff
path: root/build-aux/depcomp
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2006-10-14 23:40:42 +0000
committerPaul Eggert <eggert@cs.ucla.edu>2006-10-14 23:40:42 +0000
commit79dc977cd1e43a271015416589e1a304be78ac69 (patch)
treee44e5411e2e5d2c535238d8983b1b3770b58d3ee /build-aux/depcomp
parentcfead13def73da1aab4c182eb6cacc7c0e555d40 (diff)
downloadgnulib-79dc977cd1e43a271015416589e1a304be78ac69.tar.gz
Sync from Automake.
* build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m, which incorrectly sets the mode of an existing destination directory. In some cases the unpatched install-sh could do the equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD system. We hope this is rare in practice, but it's clearly worth fixing. Problem reported by Alex Unleashed in <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>. Also, don't bother to check for -m bugs unless we're using -m; suggested by Stepan Kasal. 2006-10-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> Sync from Automake. * build-aux/depcomp (gcc3): Put dependency extraction flags before the `-c' flag, so they appear at the same position as in %FASTDEP% mode in depend2.am. Fixes build failure for FreeBSD's c89, which ignores unknown options only after the first non-option. Bug report against M4 by Nelson H. F. Beebe.
Diffstat (limited to 'build-aux/depcomp')
-rwxr-xr-xbuild-aux/depcomp15
1 files changed, 14 insertions, 1 deletions
diff --git a/build-aux/depcomp b/build-aux/depcomp
index ffe5461bde..7d409372d7 100755
--- a/build-aux/depcomp
+++ b/build-aux/depcomp
@@ -92,7 +92,20 @@ gcc3)
## gcc 3 implements dependency tracking that does exactly what
## we want. Yay! Note: for some reason libtool 1.4 doesn't like
## it if -MD -MP comes after the -MF stuff. Hmm.
- "$@" -MT "$object" -MD -MP -MF "$tmpdepfile"
+## Unfortunately, FreeBSD c89 acceptance of flags depends upon
+## the command line argument order; so add the flags where they
+## appear in depend2.am. Note that the slowdown incurred here
+## affects only configure: in makefiles, %FASTDEP% shortcuts this.
+ for arg
+ do
+ case $arg in
+ -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
+ *) set fnord "$@" "$arg" ;;
+ esac
+ shift # fnord
+ shift # $arg
+ done
+ "$@"
stat=$?
if test $stat -eq 0; then :
else