2005-10-24 Stepan Kasal * lib/autoconf/c.m4 (AC_PROG_CC_C_O): Use conftst2.o instead of conftest.o, to see whether the compiler really obeys; rm the object file before and after the test and register it with ac_clean_files. * lib/autoconf/fortran.m4 (_AC_PROG_FC_C_O): Likewise. Index: lib/autoconf/c.m4 =================================================================== RCS file: /cvsroot/autoconf/autoconf/lib/autoconf/c.m4,v retrieving revision 1.204 diff -u -r1.204 c.m4 --- lib/autoconf/c.m4 19 Oct 2005 22:35:52 -0000 1.204 +++ lib/autoconf/c.m4 24 Oct 2005 10:26:22 -0000 @@ -576,20 +576,24 @@ sed 's/[[^a-zA-Z0-9_]]/_/g;s/^[[0-9]]/_/'` AC_CACHE_VAL(ac_cv_prog_cc_${ac_cc}_c_o, [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])]) +ac_clean_files_save=$ac_clean_files +ac_clean_files="$ac_clean_files conftst2.$ac_objext" # Make sure it works both with $CC and with simple cc. # We do the test twice because some compilers refuse to overwrite an # existing .o file with -o, though they will create one. -ac_try='$CC -c conftest.$ac_ext -o conftest.$ac_objext >&AS_MESSAGE_LOG_FD' +ac_try='$CC -c conftest.$ac_ext -o conftst2.$ac_objext >&AS_MESSAGE_LOG_FD' +rm -f conftst2.$ac_objext if AC_TRY_EVAL(ac_try) && - test -f conftest.$ac_objext && AC_TRY_EVAL(ac_try); + test -f conftst2.$ac_objext && AC_TRY_EVAL(ac_try); then eval ac_cv_prog_cc_${ac_cc}_c_o=yes if test "x$CC" != xcc; then # Test first that cc exists at all. if AC_TRY_COMMAND(cc -c conftest.$ac_ext >&AS_MESSAGE_LOG_FD); then - ac_try='cc -c conftest.$ac_ext -o conftest.$ac_objext >&AS_MESSAGE_LOG_FD' + ac_try='cc -c conftest.$ac_ext -o conftst2.$ac_objext >&AS_MESSAGE_LOG_FD' + rm -f conftst2.$ac_objext if AC_TRY_EVAL(ac_try) && - test -f conftest.$ac_objext && AC_TRY_EVAL(ac_try); + test -f conftst2.$ac_objext && AC_TRY_EVAL(ac_try); then # cc works too. : @@ -602,7 +606,8 @@ else eval ac_cv_prog_cc_${ac_cc}_c_o=no fi -rm -f conftest* +rm -f conftest* conftst2.$ac_objext +ac_clean_files=$ac_clean_files_save ])dnl if eval "test \"`echo '$ac_cv_prog_cc_'${ac_cc}_c_o`\" = yes"; then AC_MSG_RESULT([yes]) Index: lib/autoconf/fortran.m4 =================================================================== RCS file: /cvsroot/autoconf/autoconf/lib/autoconf/fortran.m4,v retrieving revision 1.195 diff -u -r1.195 fortran.m4 --- lib/autoconf/fortran.m4 10 Jul 2005 16:02:44 -0000 1.195 +++ lib/autoconf/fortran.m4 24 Oct 2005 10:26:23 -0000 @@ -459,17 +459,22 @@ AC_CACHE_CHECK([whether $[]_AC_FC[] understands -c and -o together], [ac_cv_prog_[]_AC_LANG_ABBREV[]_c_o], [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])]) +ac_clean_files_save=$ac_clean_files +ac_clean_files="$ac_clean_files conftst2.$ac_objext" # We test twice because some compilers refuse to overwrite an existing # `.o' file with `-o', although they will create one. -ac_try='$[]_AC_FC[] $[]_AC_LANG_PREFIX[]FLAGS -c conftest.$ac_ext -o conftest.$ac_objext >&AS_MESSAGE_LOG_FD' +ac_try='$[]_AC_FC[] $[]_AC_LANG_PREFIX[]FLAGS -c conftest.$ac_ext -o conftst2.$ac_objext >&AS_MESSAGE_LOG_FD' +rm -f conftst2.$ac_objext if AC_TRY_EVAL(ac_try) && - test -f conftest.$ac_objext && + test -f conftst2.$ac_objext && AC_TRY_EVAL(ac_try); then ac_cv_prog_[]_AC_LANG_ABBREV[]_c_o=yes else ac_cv_prog_[]_AC_LANG_ABBREV[]_c_o=no fi -rm -f conftest*]) +rm -f conftest* conftst2.$ac_objext +ac_clean_files=$ac_clean_files_save +]) if test $ac_cv_prog_[]_AC_LANG_ABBREV[]_c_o = no; then AC_DEFINE([]_AC_FC[]_NO_MINUS_C_MINUS_O, 1, [Define to 1 if your Fortran compiler doesn't accept