Index: configure.in =================================================================== --- configure.in (revision 57620) +++ configure.in (working copy) @@ -818,7 +818,45 @@ ;; # is there any other compiler on Darwin besides gcc? Darwin*) - BASECFLAGS="$BASECFLAGS -Wno-long-double -no-cpp-precomp -mno-fused-madd" + BASECFLAGS="$BASECFLAGS -mno-fused-madd" + + # Earlier versions of Xcode/DeveloperTools shipped with GCC 3.x + # which warned about using "long double". That warning is + # surpressed using -Wno-long-double, but that flag is not + # available in stock GCC + AC_MSG_CHECKING(whether $CC accepts -Wno-long-double) + ac_save_cc="${CC}" + CC="${CC} -Wno-long-double" + AC_TRY_RUN([int main(void) { return 0; }], + ac_cv_no_long_double_ok=yes, + ac_cv_no_long_double_ok=no, + ac_cv_no_long_double_ok=no) + CC="$ac_save_cc" + AC_MSG_RESULT($ac_cv_no_long_double_ok) + if test $ac_cv_no_long_double_ok = yes; then + BASECFLAGS="$BASECFLAGS -Wno-long-double" + fi + + # Even earlier versions of Apple's GCC (appearently before + # GCC 3.1) sported a broken implementation of precompiled headers, + # -no-cpp-precomp disables that functionality, but isn't supported + # by stock GCC. + # XXX: need to check which version of OSX/DeveloperTools ships + # with this broken version of GCC, if that's old enough we can + # drop this check. + AC_MSG_CHECKING(whether $CC accepts -no-cpp-precomp) + ac_save_cc="${CC}" + CC="${CC} -no-cpp-precomp" + AC_TRY_RUN([int main(void) { return 0; }], + ac_cv_no_precomp_ok=yes, + ac_cv_no_precomp_ok=no, + ac_cv_no_precomp_ok=no) + CC="$ac_save_cc" + AC_MSG_RESULT($ac_cv_no_precomp_ok) + if test $ac_cv_no_precomp_ok = yes; then + BASECFLAGS="$BASECFLAGS -no-cpp-precomp" + fi + if test "${enable_universalsdk}"; then BASECFLAGS="-arch ppc -arch i386 -isysroot ${UNIVERSALSDK} ${BASECFLAGS}" fi