Commit v2.69e-3-gc3853873 (Revert "AC_PROG_CC: define via AC_DEFUN_ONCE". (#110350), Fri Dec 4 16:32:35 2020 -0500) was apparently supposed to make AX_PROG_CC_FOR_BUILD work again, but there appears to be a remaining issue.
With $ cat configure.ac AC_INIT([test], [0]) AC_CONFIG_MACRO_DIR([.]) AM_INIT_AUTOMAKE([foreign]) AX_PROG_CC_FOR_BUILD AC_CONFIG_FILES(Makefile) AC_OUTPUT an empty Makefile.am and AX_PROG_CC_FOR_BUILD from Autoconf Macro Archive, I find that BUILD_EXEEXT and BUILD_OBJEXT are not getting set properly using autoconf 2.71. In fact, I bisected it down to commit v2.69-18-g5fdd360b (AC_SUBST: don't underquote the variable name, Wed Aug 15 21:54:53 2012 -0600). The difference in the generated configure is as follows: @@ -4622,7 +4622,7 @@ rm -f conftest conftest$ac_cv_build_exeext $as_echo "$ac_cv_build_exeext" >&6; } rm -f conftest.$ac_ext -BUILD_EXEEXT=$ac_cv_build_exeext +EXEEXT=$ac_cv_build_exeext ac_build_exeext=$BUILD_EXEEXT cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -4733,7 +4733,7 @@ rm -f conftest.$ac_cv_build_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build_objext" >&5 $as_echo "$ac_cv_build_objext" >&6; } -BUILD_OBJEXT=$ac_cv_build_objext +OBJEXT=$ac_cv_build_objext ac_build_objext=$BUILD_OBJEXT ac_ext=c Now, AX_PROG_CC_FOR_BUILD is calling _AC_COMPILER_EXEEXT and _AC_COMPILER_OBJEXT which I guess it's not supposed to do, but it used to work... Do you have any advice on how to make this work with recent versions of autoconf? Let me know if you need any further information. Thanks, skimo