From 4f2950ac63faad47c4640eb56fade7d6b1d74307 Mon Sep 17 00:00:00 2001 From: Ralf Wildenhues Date: Wed, 22 Apr 2009 22:13:05 +0200 Subject: 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. Signed-off-by: Ralf Wildenhues --- m4/depend.m4 | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'm4/depend.m4') diff --git a/m4/depend.m4 b/m4/depend.m4 index 451312a37..efe86436a 100644 --- a/m4/depend.m4 +++ b/m4/depend.m4 @@ -63,6 +63,16 @@ AC_CACHE_CHECK([dependency style of $depcc], 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 @@ -87,6 +97,10 @@ AC_CACHE_CHECK([dependency style of $depcc], 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 -- cgit v1.2.1