autoconf-archive-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH 2/2] ax_prog_cc_for_build: Tweak ac_cv_c_compiler_gnu code


From: Kang-Che Sung
Subject: [PATCH 2/2] ax_prog_cc_for_build: Tweak ac_cv_c_compiler_gnu code
Date: Sun, 5 May 2024 04:26:05 +0800

Adjust the code of setting ac_cv_c_compiler_gnu to align with the code
of ac_cv_exeext and ac_cv_objext. The solution is now permanent rather
than just a workaround.
---
 m4/ax_prog_cc_for_build.m4 | 29 ++++++++++++-----------------
 1 file changed, 12 insertions(+), 17 deletions(-)

diff --git a/m4/ax_prog_cc_for_build.m4 b/m4/ax_prog_cc_for_build.m4
index 0f92825..fd81564 100644
--- a/m4/ax_prog_cc_for_build.m4
+++ b/m4/ax_prog_cc_for_build.m4
@@ -32,7 +32,7 @@
 # and this notice are preserved. This file is offered as-is, without any
 # warranty.

-#serial 22
+#serial 23

 AU_ALIAS([AC_PROG_CC_FOR_BUILD], [AX_PROG_CC_FOR_BUILD])
 AC_DEFUN([AX_PROG_CC_FOR_BUILD], [dnl
@@ -50,7 +50,6 @@ pushdef([ac_cv_prog_gcc], ac_cv_build_prog_gcc)dnl
 pushdef([ac_cv_prog_cc_works], ac_cv_build_prog_cc_works)dnl
 pushdef([ac_cv_prog_cc_cross], ac_cv_build_prog_cc_cross)dnl
 pushdef([ac_cv_prog_cc_g], ac_cv_build_prog_cc_g)dnl
-pushdef([ac_cv_c_compiler_gnu], ac_cv_build_c_compiler_gnu)dnl
 pushdef([ac_exeext], ac_build_exeext)dnl
 pushdef([ac_objext], ac_build_objext)dnl
 pushdef([CC], CC_FOR_BUILD)dnl
@@ -88,6 +87,12 @@ AS_VAR_SET_IF([ac_cv_exeext],
 AS_VAR_SET_IF([ac_cv_objext],
   [ac_cv_host_objext=$ac_cv_objext
   AS_UNSET([ac_cv_objext])])
+dnl
+dnl ac_cv_c_compiler_gnu is used in _AC_LANG_COMPILER_GNU (called by
+dnl AC_PROG_CC) indirectly.
+AS_VAR_SET_IF([ac_cv_c_compiler_gnu],
+ [ac_cv_host_c_compiler_gnu=$ac_cv_c_compiler_gnu
+ AS_UNSET([ac_cv_c_compiler_gnu])])

 cross_compiling_build=no

@@ -96,21 +101,7 @@ AS_IF([test -n "$build"], [ac_build_tool_prefix="$build-"],
       [test -n "$build_alias"],[ac_build_tool_prefix="$build_alias-"])

 AC_LANG_PUSH([C])
-
-dnl The pushdef([ac_cv_c_compiler_gnu], ...) currently does not cover
-dnl the use of this variable in _AC_LANG_COMPILER_GNU called by
-dnl AC_PROG_CC. Unset this cache variable temporarily as a workaround.
-was_set_c_compiler_gnu=${[ac_cv_c_compiler_gnu]+y}
-AS_IF([test ${was_set_c_compiler_gnu}],
- [saved_c_compiler_gnu=$[ac_cv_c_compiler_gnu]
- AS_UNSET([[ac_cv_c_compiler_gnu]])])
-
 AC_PROG_CC
-
-dnl Restore ac_cv_c_compiler_gnu
-AS_IF([test ${was_set_c_compiler_gnu}],
- [[ac_cv_c_compiler_gnu]=$[saved_c_compiler_gnu]])
-
 _AC_COMPILER_EXEEXT
 _AC_COMPILER_OBJEXT
 AC_PROG_CPP
@@ -139,7 +130,6 @@ popdef([CPP])dnl
 popdef([CC])dnl
 popdef([ac_objext])dnl
 popdef([ac_exeext])dnl
-popdef([ac_cv_c_compiler_gnu])dnl
 popdef([ac_cv_prog_cc_g])dnl
 popdef([ac_cv_prog_cc_cross])dnl
 popdef([ac_cv_prog_cc_works])dnl
@@ -160,6 +150,11 @@ AS_VAR_SET_IF([ac_cv_host_objext],
   OBJEXT=$ac_cv_host_objext],
   [AS_UNSET([ac_cv_objext])
   AS_UNSET([OBJEXT])])
+AS_VAR_SET_IF([ac_cv_host_c_compiler_gnu],
+ [ac_cv_c_compiler_gnu=$ac_cv_host_c_compiler_gnu
+ ac_compiler_gnu=$ac_cv_host_c_compiler_gnu],
+ [AS_UNSET([ac_cv_c_compiler_gnu])
+ AS_UNSET([ac_compiler_gnu])])

 dnl restore global variables ac_ext, ac_cpp, ac_compile,
 dnl ac_link, ac_compiler_gnu (dependant on the current
-- 
2.44.0



reply via email to

[Prev in Thread] Current Thread [Next in Thread]