+2009-04-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ Avoid racy depmodes with universal builds.
+ * m4/depend.m4 (_AM_DEPENDENCIES): If universal builds are used,
+ avoid racy depmodes.
+ * lib/depcomp: Ignore `-arch' argument for makedepend depmode.
+ Report by Bruno Haible, analysis by Bruno Haible, Peter O'Gorman,
+ and Eric Blake.
+
2009-04-21 Fabian Alenius <fabian.alenius@gmail.com> (tiny change)
Fix link to autotools tutorial.
#! /bin/sh
# depcomp - compile a program generating dependencies as side-effects
-scriptversion=2009-03-04.20
+scriptversion=2009-04-22.22
# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free
# Software Foundation, Inc.
fi
# X makedepend
shift
- cleared=no
+ cleared=no eat=no
for arg
do
case $cleared in
set ""; shift
cleared=yes ;;
esac
+ if test $eat = yes; then
+ eat=no
+ continue
+ fi
case "$arg" in
-D*|-I*)
set fnord "$@" "$arg"; shift ;;
# Strip any option that makedepend may not understand. Remove
# the object too, otherwise makedepend will parse it as a source file.
+ -arch)
+ eat=yes ;;
-*|$object)
;;
*)
if test "$am_compiler_list" = ""; then
am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
fi
+ am__universal=false
+ m4_case([$1], [CC],
+ [case " $depcc " in #(
+ *\ -arch\ *\ -arch\ *) am__universal=true ;;
+ esac],
+ [CXX],
+ [case " $depcc " in #(
+ *\ -arch\ *\ -arch\ *) am__universal=true ;;
+ esac])
+
for depmode in $am_compiler_list; do
# Setup a source with many dependencies, because some compilers
# like to wrap large dependency lists on column 80 (with \), and
am__obj=sub/conftest.${OBJEXT-o}
am__minus_obj="-o $am__obj"
case $depmode in
+ gcc)
+ # This depmode causes a compiler race in universal mode.
+ test "$am__universal" = false || continue
+ ;;
nosideeffect)
# after this tag, mechanisms are not by side-effect, so they'll
# only be used when explicitly requested