]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Use couple more autoconf convenience macros to cleanup configure.ac
authorOndřej Surý <ondrej@sury.org>
Wed, 19 Jun 2019 09:16:47 +0000 (11:16 +0200)
committerOndřej Surý <ondrej@sury.org>
Wed, 19 Jun 2019 09:35:18 +0000 (11:35 +0200)
Pull and use several autoconf archive convenience macros to simplify
configure.ac.

* AX_CHECK_COMPILE_FLAG(FLAG, ...) - check whether given CFLAG works
* AX_CHECK_LINK_FLAG(FLAG, ...) - check whether given LDFLAG works
* AX_CHECK_PREPROC_FLAG(FLAG, ...) - check whether give CPPFLAG works
* AX_SAVE_FLAGS/AX_RESTORE_FLAGS - save and restore *FLAGS

aclocal.m4
configure
configure.ac
m4/ax_check_compile_flag.m4 [new file with mode: 0644]
m4/ax_check_link_flag.m4 [new file with mode: 0644]
m4/ax_check_preproc_flag.m4 [new file with mode: 0644]
m4/ax_restore_flags.m4 [new file with mode: 0644]
m4/ax_save_flags.m4 [new file with mode: 0644]

index bee01f409b8eb8520ba016131c780022f2cd29f9..bae4eb7b8fcdb87710351635aefce9dbc6963a18 100644 (file)
@@ -288,9 +288,13 @@ AS_VAR_COPY([$1], [pkg_cv_][$1])
 AS_VAR_IF([$1], [""], [$5], [$4])dnl
 ])dnl PKG_CHECK_VAR
 
+m4_include([m4/ax_check_compile_flag.m4])
+m4_include([m4/ax_check_link_flag.m4])
 m4_include([m4/ax_check_openssl.m4])
 m4_include([m4/ax_posix_shell.m4])
 m4_include([m4/ax_pthread.m4])
+m4_include([m4/ax_restore_flags.m4])
+m4_include([m4/ax_save_flags.m4])
 m4_include([m4/libtool.m4])
 m4_include([m4/ltoptions.m4])
 m4_include([m4/ltsugar.m4])
index b097723ece5a013a64cf716b54027c73e0c3263c..9c2a3db5eddd4ce74ce294b9c8d90722d86363e5 100755 (executable)
--- a/configure
+++ b/configure
@@ -12195,21 +12195,21 @@ if test "${enable_developer+set}" = set; then :
   enableval=$enable_developer;
 fi
 
+
 XTARGETS=
-case "$enable_developer" in
-yes)
-       STD_CDEFINES="$STD_CDEFINES -DISC_MEM_DEFAULTFILL=1 -DISC_LIST_CHECKINIT=1"
-       test "${enable_fixed_rrset+set}" = set || enable_fixed_rrset=yes
-       test "${enable_querytrace+set}" = set || enable_querytrace=yes
-       test "${with_cmocka+set}" = set || with_cmocka=yes
-       test "${with_dlz_filesystem+set}" = set || with_dlz_filesystem=yes
-       test "${enable_symtable+set}" = set || enable_symtable=all
-       test "${enable_warn_error+set}" = set || enable_warn_error=yes
-       test "${enable_warn_shadow+set}" = set || enable_warn_shadow=yes
-       test "${with_zlib+set}" = set || with_zlib=yes
-       XTARGETS='${XTARGETS}'
-       ;;
-esac
+if test "$enable_developer" = "yes"; then :
+  STD_CDEFINES="$STD_CDEFINES -DISC_MEM_DEFAULTFILL=1 -DISC_LIST_CHECKINIT=1"
+       test "${enable_fixed_rrset+set}" = set || enable_fixed_rrset=yes
+       test "${enable_querytrace+set}" = set || enable_querytrace=yes
+       test "${with_cmocka+set}" = set || with_cmocka=yes
+       test "${with_dlz_filesystem+set}" = set || with_dlz_filesystem=yes
+       test "${enable_symtable+set}" = set || enable_symtable=all
+       test "${enable_warn_error+set}" = set || enable_warn_error=yes
+       test "${enable_warn_shadow+set}" = set || enable_warn_shadow=yes
+       test "${with_zlib+set}" = set || with_zlib=yes
+       XTARGETS='${XTARGETS}'
+
+fi
 
 
 # Check whether --enable-fuzzing was given.
@@ -15841,9 +15841,77 @@ rm -f core conftest.err conftest.$ac_objext \
 
 
 
-save_CFLAGS="$CFLAGS"
-save_LIBS="$LIBS"
-save_LDFLAGS="$LDFLAGS"
+
+
+  CCASFLAGS_openssl_ax_save_flags=$CCASFLAGS
+
+
+
+  CFLAGS_openssl_ax_save_flags=$CFLAGS
+
+
+
+  CPPFLAGS_openssl_ax_save_flags=$CPPFLAGS
+
+
+
+  CXXFLAGS_openssl_ax_save_flags=$CXXFLAGS
+
+
+
+  ERLCFLAGS_openssl_ax_save_flags=$ERLCFLAGS
+
+
+
+  FCFLAGS_openssl_ax_save_flags=$FCFLAGS
+
+
+
+  FCLIBS_openssl_ax_save_flags=$FCLIBS
+
+
+
+  FFLAGS_openssl_ax_save_flags=$FFLAGS
+
+
+
+  FLIBS_openssl_ax_save_flags=$FLIBS
+
+
+
+  GCJFLAGS_openssl_ax_save_flags=$GCJFLAGS
+
+
+
+  JAVACFLAGS_openssl_ax_save_flags=$JAVACFLAGS
+
+
+
+  LDFLAGS_openssl_ax_save_flags=$LDFLAGS
+
+
+
+  LIBS_openssl_ax_save_flags=$LIBS
+
+
+
+  OBJCFLAGS_openssl_ax_save_flags=$OBJCFLAGS
+
+
+
+  OBJCXXFLAGS_openssl_ax_save_flags=$OBJCXXFLAGS
+
+
+
+  UPCFLAGS_openssl_ax_save_flags=$UPCFLAGS
+
+
+
+  VALAFLAGS_openssl_ax_save_flags=$VALAFLAGS
+
+
+
+
 CFLAGS="$CFLAGS $OPENSSL_INCLUDES"
 LIBS="$LIBS $OPENSSL_LIBS"
 LDFLAGS="$LDFLAGS $OPENSSL_LDFLAGS"
@@ -16169,9 +16237,59 @@ $as_echo "no" >&6; } ;; #(
      ;;
 esac
 
-CFLAGS="$save_CFLAGS"
-LIBS="$save_LIBS"
-LDFLAGS="$save_LDFLAGS"
+
+  CCASFLAGS=$CCASFLAGS_openssl_ax_save_flags
+
+
+  CFLAGS=$CFLAGS_openssl_ax_save_flags
+
+
+  CPPFLAGS=$CPPFLAGS_openssl_ax_save_flags
+
+
+  CXXFLAGS=$CXXFLAGS_openssl_ax_save_flags
+
+
+  ERLCFLAGS=$ERLCFLAGS_openssl_ax_save_flags
+
+
+  FCFLAGS=$FCFLAGS_openssl_ax_save_flags
+
+
+  FCLIBS=$FCLIBS_openssl_ax_save_flags
+
+
+  FFLAGS=$FFLAGS_openssl_ax_save_flags
+
+
+  FLIBS=$FLIBS_openssl_ax_save_flags
+
+
+  GCJFLAGS=$GCJFLAGS_openssl_ax_save_flags
+
+
+  JAVACFLAGS=$JAVACFLAGS_openssl_ax_save_flags
+
+
+  LDFLAGS=$LDFLAGS_openssl_ax_save_flags
+
+
+  LIBS=$LIBS_openssl_ax_save_flags
+
+
+  OBJCFLAGS=$OBJCFLAGS_openssl_ax_save_flags
+
+
+  OBJCXXFLAGS=$OBJCXXFLAGS_openssl_ax_save_flags
+
+
+  UPCFLAGS=$UPCFLAGS_openssl_ax_save_flags
+
+
+  VALAFLAGS=$VALAFLAGS_openssl_ax_save_flags
+
+
+
 
 
 
 # Additional compiler settings.
 #
 MKDEPCC="$CC"
+
 MKDEPCFLAGS="-M"
+case $host in #(
+  *-solaris*) :
 
-if test "X$GCC" = "Xyes"; then
-       STD_CWARNINGS="$STD_CWARNINGS -W -Wall -Wmissing-prototypes -Wcast-qual -Wwrite-strings -Wformat -Wpointer-arith"
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking if \"$CC\" supports -fno-strict-aliasing" >&5
-$as_echo_n "checking if \"$CC\" supports -fno-strict-aliasing... " >&6; }
-       SAVE_CFLAGS="$CFLAGS"
-       CFLAGS="$CFLAGS -Werror -fno-strict-aliasing"
-       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+           if test "$GCC" != "yes"; then :
+  MKDEPCFLAGS="-xM"
+fi ;; #(
+  *) :
+     ;;
+esac
+
+if test "$GCC" = "yes"; then :
+  STD_CWARNINGS="$STD_CWARNINGS -W -Wall -Wmissing-prototypes -Wcast-qual -Wwrite-strings -Wformat -Wpointer-arith"
+
+fi
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -fno-strict-aliasing" >&5
+$as_echo_n "checking whether C compiler accepts -fno-strict-aliasing... " >&6; }
+if ${ax_cv_check_cflags___fno_strict_aliasing+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+
+  ax_check_save_flags=$CFLAGS
+  CFLAGS="$CFLAGS  -fno-strict-aliasing"
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -17406,28 +17541,30 @@ main ()
 }
 _ACEOF
 if ac_fn_c_try_compile "$LINENO"; then :
-  FNOSTRICTALIASING=yes
+  ax_cv_check_cflags___fno_strict_aliasing=yes
 else
-  FNOSTRICTALIASING=no
+  ax_cv_check_cflags___fno_strict_aliasing=no
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-       CFLAGS="$SAVE_CFLAGS"
-       if test "yes" = "$FNOSTRICTALIASING"; then
-               { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-               STD_CWARNINGS="$STD_CWARNINGS -fno-strict-aliasing"
-       else
-               { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-       fi
-       #
-       # turn off delete null pointer checks
-       #
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking if \"$CC\" supports -fno-delete-null-pointer-checks" >&5
-$as_echo_n "checking if \"$CC\" supports -fno-delete-null-pointer-checks... " >&6; }
-       SAVE_CFLAGS="$CFLAGS"
-       CFLAGS="$CFLAGS -Werror -fno-delete-null-pointer-checks"
-       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+  CFLAGS=$ax_check_save_flags
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___fno_strict_aliasing" >&5
+$as_echo "$ax_cv_check_cflags___fno_strict_aliasing" >&6; }
+if test "x$ax_cv_check_cflags___fno_strict_aliasing" = xyes; then :
+  STD_CWARNINGS="$STD_CWARNINGS -fno-strict-aliasing"
+else
+  :
+fi
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -fno-delete-null-pointer-checks" >&5
+$as_echo_n "checking whether C compiler accepts -fno-delete-null-pointer-checks... " >&6; }
+if ${ax_cv_check_cflags___fno_delete_null_pointer_checks+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+
+  ax_check_save_flags=$CFLAGS
+  CFLAGS="$CFLAGS  -fno-delete-null-pointer-checks"
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -17439,32 +17576,94 @@ main ()
 }
 _ACEOF
 if ac_fn_c_try_compile "$LINENO"; then :
-  FNODELETENULLPOINTERCHECKS=yes
+  ax_cv_check_cflags___fno_delete_null_pointer_checks=yes
 else
-  FNODELETENULLPOINTERCHECKS=no
+  ax_cv_check_cflags___fno_delete_null_pointer_checks=no
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-       CFLAGS="$SAVE_CFLAGS"
-       if test "yes" = "$FNODELETENULLPOINTERCHECKS"; then
-               { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-               STD_CWARNINGS="$STD_CWARNINGS -fno-delete-null-pointer-checks"
-       else
-               { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-       fi
-       if test "X$enable_warn_shadow" = Xyes; then
-               STD_CWARNINGS="$STD_CWARNINGS -Wshadow"
-       fi
-       if test "X$enable_warn_error" = Xyes; then
-               STD_CWARNINGS="$STD_CWARNINGS -Werror"
-       fi
+  CFLAGS=$ax_check_save_flags
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___fno_delete_null_pointer_checks" >&5
+$as_echo "$ax_cv_check_cflags___fno_delete_null_pointer_checks" >&6; }
+if test "x$ax_cv_check_cflags___fno_delete_null_pointer_checks" = xyes; then :
+  STC_CWARNINGS="$STD_CWARNINGS -fno-delete-null-pointer-checks"
 else
-       case $host in
-       *-solaris*)
-               MKDEPCFLAGS="-xM"
-               ;;
-       esac
+  :
+fi
+
+if test "$enable_warn_shadow" = "yes"; then :
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -Wshadow" >&5
+$as_echo_n "checking whether C compiler accepts -Wshadow... " >&6; }
+if ${ax_cv_check_cflags___Wshadow+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+
+  ax_check_save_flags=$CFLAGS
+  CFLAGS="$CFLAGS  -Wshadow"
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  ax_cv_check_cflags___Wshadow=yes
+else
+  ax_cv_check_cflags___Wshadow=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+  CFLAGS=$ax_check_save_flags
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___Wshadow" >&5
+$as_echo "$ax_cv_check_cflags___Wshadow" >&6; }
+if test "x$ax_cv_check_cflags___Wshadow" = xyes; then :
+  STD_CWARNINGS="$STD_CWARNINGS -Wshadow"
+else
+  :
+fi
+
+fi
+if test "$enable_warn_error" = "yes"; then :
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -Werror" >&5
+$as_echo_n "checking whether C compiler accepts -Werror... " >&6; }
+if ${ax_cv_check_cflags___Werror+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+
+  ax_check_save_flags=$CFLAGS
+  CFLAGS="$CFLAGS  -Werror"
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  ax_cv_check_cflags___Werror=yes
+else
+  ax_cv_check_cflags___Werror=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+  CFLAGS=$ax_check_save_flags
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___Werror" >&5
+$as_echo "$ax_cv_check_cflags___Werror" >&6; }
+if test "x$ax_cv_check_cflags___Werror" = xyes; then :
+  STD_CWARNINGS="$STD_CWARNINGS -Werror"
+else
+  :
+fi
+
 fi
 
 
 
 done
 
-       save_LIBS="$LIBS"
+
+
+  CCASFLAGS_cap_ax_save_flags=$CCASFLAGS
+
+
+
+  CFLAGS_cap_ax_save_flags=$CFLAGS
+
+
+
+  CPPFLAGS_cap_ax_save_flags=$CPPFLAGS
+
+
+
+  CXXFLAGS_cap_ax_save_flags=$CXXFLAGS
+
+
+
+  ERLCFLAGS_cap_ax_save_flags=$ERLCFLAGS
+
+
+
+  FCFLAGS_cap_ax_save_flags=$FCFLAGS
+
+
+
+  FCLIBS_cap_ax_save_flags=$FCLIBS
+
+
+
+  FFLAGS_cap_ax_save_flags=$FFLAGS
+
+
+
+  FLIBS_cap_ax_save_flags=$FLIBS
+
+
+
+  GCJFLAGS_cap_ax_save_flags=$GCJFLAGS
+
+
+
+  JAVACFLAGS_cap_ax_save_flags=$JAVACFLAGS
+
+
+
+  LDFLAGS_cap_ax_save_flags=$LDFLAGS
+
+
+
+  LIBS_cap_ax_save_flags=$LIBS
+
+
+
+  OBJCFLAGS_cap_ax_save_flags=$OBJCFLAGS
+
+
+
+  OBJCXXFLAGS_cap_ax_save_flags=$OBJCXXFLAGS
+
+
+
+  UPCFLAGS_cap_ax_save_flags=$UPCFLAGS
+
+
+
+  VALAFLAGS_cap_ax_save_flags=$VALAFLAGS
+
+
+
        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing cap_set_proc" >&5
 $as_echo_n "checking for library containing cap_set_proc... " >&6; }
 if ${ac_cv_search_cap_set_proc+:} false; then :
@@ -18182,20 +18450,72 @@ else
   as_fn_error $? "libcap is required for Linux capabilities support. Either install libcap or use --disable-linux-caps." "$LINENO" 5
 fi
 
-       LIBS="$save_LIBS"
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
 
+  CCASFLAGS=$CCASFLAGS_cap_ax_save_flags
 
-for ac_header in sys/un.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "sys/un.h" "ac_cv_header_sys_un_h" "$ac_includes_default"
-if test "x$ac_cv_header_sys_un_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_SYS_UN_H 1
-_ACEOF
+
+  CFLAGS=$CFLAGS_cap_ax_save_flags
+
+
+  CPPFLAGS=$CPPFLAGS_cap_ax_save_flags
+
+
+  CXXFLAGS=$CXXFLAGS_cap_ax_save_flags
+
+
+  ERLCFLAGS=$ERLCFLAGS_cap_ax_save_flags
+
+
+  FCFLAGS=$FCFLAGS_cap_ax_save_flags
+
+
+  FCLIBS=$FCLIBS_cap_ax_save_flags
+
+
+  FFLAGS=$FFLAGS_cap_ax_save_flags
+
+
+  FLIBS=$FLIBS_cap_ax_save_flags
+
+
+  GCJFLAGS=$GCJFLAGS_cap_ax_save_flags
+
+
+  JAVACFLAGS=$JAVACFLAGS_cap_ax_save_flags
+
+
+  LDFLAGS=$LDFLAGS_cap_ax_save_flags
+
+
+  LIBS=$LIBS_cap_ax_save_flags
+
+
+  OBJCFLAGS=$OBJCFLAGS_cap_ax_save_flags
+
+
+  OBJCXXFLAGS=$OBJCXXFLAGS_cap_ax_save_flags
+
+
+  UPCFLAGS=$UPCFLAGS_cap_ax_save_flags
+
+
+  VALAFLAGS=$VALAFLAGS_cap_ax_save_flags
+
+
+
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+for ac_header in sys/un.h
+do :
+  ac_fn_c_check_header_mongrel "$LINENO" "sys/un.h" "ac_cv_header_sys_un_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_un_h" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_SYS_UN_H 1
+_ACEOF
  ISC_PLATFORM_HAVESYSUNH="#define ISC_PLATFORM_HAVESYSUNH 1"
 
 else
@@ -18355,7 +18675,76 @@ if ac_fn_c_try_link "$LINENO"; then :
 $as_echo "no" >&6; }
 else
   ISC_ATOMIC_LIBS="-latomic"
-        save_LIBS="$LIBS"
+
+
+  CCASFLAGS_atomic_ax_save_flags=$CCASFLAGS
+
+
+
+  CFLAGS_atomic_ax_save_flags=$CFLAGS
+
+
+
+  CPPFLAGS_atomic_ax_save_flags=$CPPFLAGS
+
+
+
+  CXXFLAGS_atomic_ax_save_flags=$CXXFLAGS
+
+
+
+  ERLCFLAGS_atomic_ax_save_flags=$ERLCFLAGS
+
+
+
+  FCFLAGS_atomic_ax_save_flags=$FCFLAGS
+
+
+
+  FCLIBS_atomic_ax_save_flags=$FCLIBS
+
+
+
+  FFLAGS_atomic_ax_save_flags=$FFLAGS
+
+
+
+  FLIBS_atomic_ax_save_flags=$FLIBS
+
+
+
+  GCJFLAGS_atomic_ax_save_flags=$GCJFLAGS
+
+
+
+  JAVACFLAGS_atomic_ax_save_flags=$JAVACFLAGS
+
+
+
+  LDFLAGS_atomic_ax_save_flags=$LDFLAGS
+
+
+
+  LIBS_atomic_ax_save_flags=$LIBS
+
+
+
+  OBJCFLAGS_atomic_ax_save_flags=$OBJCFLAGS
+
+
+
+  OBJCXXFLAGS_atomic_ax_save_flags=$OBJCXXFLAGS
+
+
+
+  UPCFLAGS_atomic_ax_save_flags=$UPCFLAGS
+
+
+
+  VALAFLAGS_atomic_ax_save_flags=$VALAFLAGS
+
+
+
         LIBS="$LIBS $ISC_ATOMIC_LIBS"
         cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -18380,7 +18769,59 @@ See \`config.log' for more details" "$LINENO" 5; }
 fi
 rm -f core conftest.err conftest.$ac_objext \
     conftest$ac_exeext conftest.$ac_ext
-        LIBS="$save_LIBS"
+
+  CCASFLAGS=$CCASFLAGS_atomic_ax_save_flags
+
+
+  CFLAGS=$CFLAGS_atomic_ax_save_flags
+
+
+  CPPFLAGS=$CPPFLAGS_atomic_ax_save_flags
+
+
+  CXXFLAGS=$CXXFLAGS_atomic_ax_save_flags
+
+
+  ERLCFLAGS=$ERLCFLAGS_atomic_ax_save_flags
+
+
+  FCFLAGS=$FCFLAGS_atomic_ax_save_flags
+
+
+  FCLIBS=$FCLIBS_atomic_ax_save_flags
+
+
+  FFLAGS=$FFLAGS_atomic_ax_save_flags
+
+
+  FLIBS=$FLIBS_atomic_ax_save_flags
+
+
+  GCJFLAGS=$GCJFLAGS_atomic_ax_save_flags
+
+
+  JAVACFLAGS=$JAVACFLAGS_atomic_ax_save_flags
+
+
+  LDFLAGS=$LDFLAGS_atomic_ax_save_flags
+
+
+  LIBS=$LIBS_atomic_ax_save_flags
+
+
+  OBJCFLAGS=$OBJCFLAGS_atomic_ax_save_flags
+
+
+  OBJCXXFLAGS=$OBJCXXFLAGS_atomic_ax_save_flags
+
+
+  UPCFLAGS=$UPCFLAGS_atomic_ax_save_flags
+
+
+  VALAFLAGS=$VALAFLAGS_atomic_ax_save_flags
+
+
+
 
 fi
 rm -f core conftest.err conftest.$ac_objext \
@@ -18434,7 +18875,76 @@ if ac_fn_c_try_link "$LINENO"; then :
 $as_echo "no" >&6; }
 else
   ISC_ATOMIC_LIBS="-latomic"
-        save_LIBS="$LIBS"
+
+
+  CCASFLAGS_atomic_ax_save_flags=$CCASFLAGS
+
+
+
+  CFLAGS_atomic_ax_save_flags=$CFLAGS
+
+
+
+  CPPFLAGS_atomic_ax_save_flags=$CPPFLAGS
+
+
+
+  CXXFLAGS_atomic_ax_save_flags=$CXXFLAGS
+
+
+
+  ERLCFLAGS_atomic_ax_save_flags=$ERLCFLAGS
+
+
+
+  FCFLAGS_atomic_ax_save_flags=$FCFLAGS
+
+
+
+  FCLIBS_atomic_ax_save_flags=$FCLIBS
+
+
+
+  FFLAGS_atomic_ax_save_flags=$FFLAGS
+
+
+
+  FLIBS_atomic_ax_save_flags=$FLIBS
+
+
+
+  GCJFLAGS_atomic_ax_save_flags=$GCJFLAGS
+
+
+
+  JAVACFLAGS_atomic_ax_save_flags=$JAVACFLAGS
+
+
+
+  LDFLAGS_atomic_ax_save_flags=$LDFLAGS
+
+
+
+  LIBS_atomic_ax_save_flags=$LIBS
+
+
+
+  OBJCFLAGS_atomic_ax_save_flags=$OBJCFLAGS
+
+
+
+  OBJCXXFLAGS_atomic_ax_save_flags=$OBJCXXFLAGS
+
+
+
+  UPCFLAGS_atomic_ax_save_flags=$UPCFLAGS
+
+
+
+  VALAFLAGS_atomic_ax_save_flags=$VALAFLAGS
+
+
+
         LIBS="$LIBS $ISC_ATOMIC_LIBS"
         cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -18459,7 +18969,59 @@ See \`config.log' for more details" "$LINENO" 5; }
 fi
 rm -f core conftest.err conftest.$ac_objext \
     conftest$ac_exeext conftest.$ac_ext
-        LIBS="$save_LIBS"
+
+  CCASFLAGS=$CCASFLAGS_atomic_ax_save_flags
+
+
+  CFLAGS=$CFLAGS_atomic_ax_save_flags
+
+
+  CPPFLAGS=$CPPFLAGS_atomic_ax_save_flags
+
+
+  CXXFLAGS=$CXXFLAGS_atomic_ax_save_flags
+
+
+  ERLCFLAGS=$ERLCFLAGS_atomic_ax_save_flags
+
+
+  FCFLAGS=$FCFLAGS_atomic_ax_save_flags
+
+
+  FCLIBS=$FCLIBS_atomic_ax_save_flags
+
+
+  FFLAGS=$FFLAGS_atomic_ax_save_flags
+
+
+  FLIBS=$FLIBS_atomic_ax_save_flags
+
+
+  GCJFLAGS=$GCJFLAGS_atomic_ax_save_flags
+
+
+  JAVACFLAGS=$JAVACFLAGS_atomic_ax_save_flags
+
+
+  LDFLAGS=$LDFLAGS_atomic_ax_save_flags
+
+
+  LIBS=$LIBS_atomic_ax_save_flags
+
+
+  OBJCFLAGS=$OBJCFLAGS_atomic_ax_save_flags
+
+
+  OBJCXXFLAGS=$OBJCXXFLAGS_atomic_ax_save_flags
+
+
+  UPCFLAGS=$UPCFLAGS_atomic_ax_save_flags
+
+
+  VALAFLAGS=$VALAFLAGS_atomic_ax_save_flags
+
+
+
 
 fi
 rm -f core conftest.err conftest.$ac_objext \
@@ -19867,10 +20429,76 @@ fi ;; #(
   no) :
      ;; #(
   *) :
-    save_CFLAGS="$CFLAGS"
-                save_CPPFLAGS="$CPPFLAGS"
-                save_LDFLAGS="$LDFLAGS"
-                save_LIBS="$LIBS"
+
+
+  CCASFLAGS_libidn2_ax_save_flags=$CCASFLAGS
+
+
+
+  CFLAGS_libidn2_ax_save_flags=$CFLAGS
+
+
+
+  CPPFLAGS_libidn2_ax_save_flags=$CPPFLAGS
+
+
+
+  CXXFLAGS_libidn2_ax_save_flags=$CXXFLAGS
+
+
+
+  ERLCFLAGS_libidn2_ax_save_flags=$ERLCFLAGS
+
+
+
+  FCFLAGS_libidn2_ax_save_flags=$FCFLAGS
+
+
+
+  FCLIBS_libidn2_ax_save_flags=$FCLIBS
+
+
+
+  FFLAGS_libidn2_ax_save_flags=$FFLAGS
+
+
+
+  FLIBS_libidn2_ax_save_flags=$FLIBS
+
+
+
+  GCJFLAGS_libidn2_ax_save_flags=$GCJFLAGS
+
+
+
+  JAVACFLAGS_libidn2_ax_save_flags=$JAVACFLAGS
+
+
+
+  LDFLAGS_libidn2_ax_save_flags=$LDFLAGS
+
+
+
+  LIBS_libidn2_ax_save_flags=$LIBS
+
+
+
+  OBJCFLAGS_libidn2_ax_save_flags=$OBJCFLAGS
+
+
+
+  OBJCXXFLAGS_libidn2_ax_save_flags=$OBJCXXFLAGS
+
+
+
+  UPCFLAGS_libidn2_ax_save_flags=$UPCFLAGS
+
+
+
+  VALAFLAGS_libidn2_ax_save_flags=$VALAFLAGS
+
+
+
                 LIBIDN2_CFLAGS="-I$with_libidn2/include"
                 LIBIDN2_LDFLAGS="-L$with_libidn2/lib"
                 CFLAGS="$LIBIDN2_CFLAGS $CFLAGS"
@@ -19951,10 +20579,59 @@ else
   as_fn_error $? "libidn2 requested, but not found" "$LINENO" 5
 fi
 
-                CFLAGS="$save_CFLAGS"
-                CPPFLAGS="$save_CPPFLAGS"
-                LDFLAGS="$save_LDFLAGS"
-                LIBS="$save_LIBS" ;; #(
+
+  CCASFLAGS=$CCASFLAGS_libidn2_ax_save_flags
+
+
+  CFLAGS=$CFLAGS_libidn2_ax_save_flags
+
+
+  CPPFLAGS=$CPPFLAGS_libidn2_ax_save_flags
+
+
+  CXXFLAGS=$CXXFLAGS_libidn2_ax_save_flags
+
+
+  ERLCFLAGS=$ERLCFLAGS_libidn2_ax_save_flags
+
+
+  FCFLAGS=$FCFLAGS_libidn2_ax_save_flags
+
+
+  FCLIBS=$FCLIBS_libidn2_ax_save_flags
+
+
+  FFLAGS=$FFLAGS_libidn2_ax_save_flags
+
+
+  FLIBS=$FLIBS_libidn2_ax_save_flags
+
+
+  GCJFLAGS=$GCJFLAGS_libidn2_ax_save_flags
+
+
+  JAVACFLAGS=$JAVACFLAGS_libidn2_ax_save_flags
+
+
+  LDFLAGS=$LDFLAGS_libidn2_ax_save_flags
+
+
+  LIBS=$LIBS_libidn2_ax_save_flags
+
+
+  OBJCFLAGS=$OBJCFLAGS_libidn2_ax_save_flags
+
+
+  OBJCXXFLAGS=$OBJCXXFLAGS_libidn2_ax_save_flags
+
+
+  UPCFLAGS=$UPCFLAGS_libidn2_ax_save_flags
+
+
+  VALAFLAGS=$VALAFLAGS_libidn2_ax_save_flags
+
+
+ ;; #(
   *) :
      ;;
 esac
 # Check for -Wl,--wrap= support
 #
 
-save_LDFLAGS=$LDFLAGS
-LDFLAGS="--wrap=printf"
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts --wrap" >&5
+$as_echo_n "checking whether the linker accepts --wrap... " >&6; }
+if ${ax_cv_check_ldflags____wrap+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
 
-LD_WRAP_TESTS=false
-enable_ld_wrap=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for linker support for --wrap option" >&5
-$as_echo_n "checking for linker support for --wrap option... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+  ax_check_save_flags=$LDFLAGS
+  LDFLAGS="$LDFLAGS  --wrap"
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include <stdio.h>
+
 int
 main ()
 {
-__wrap_printf("success"); return (0);
+
   ;
   return 0;
 }
 _ACEOF
 if ac_fn_c_try_link "$LINENO"; then :
+  ax_cv_check_ldflags____wrap=yes
+else
+  ax_cv_check_ldflags____wrap=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+  LDFLAGS=$ax_check_save_flags
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags____wrap" >&5
+$as_echo "$ax_cv_check_ldflags____wrap" >&6; }
+if test "x$ax_cv_check_ldflags____wrap" = xyes; then :
   enable_ld_wrap=yes
-     LD_WRAP_TESTS=true
+                   LD_WRAP_TESTS=true
 
 $as_echo "#define LD_WRAP 1" >>confdefs.h
 
-     { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+                   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-# AM_CONDITIONAL([LD_WRAP], [test $enable_ld_wrap = yes])
 
+# AM_CONDITIONAL([LD_WRAP], [test $enable_ld_wrap = yes])
 
-LDFLAGS=$save_LDFLAGS
 
 #
 # Check for i18n
index db2c524ea39c6b571dae295182c08ce2ebe1dce2..bb62f5d53325bd46140a06f2ac2fa91dbc2b6e27 100644 (file)
@@ -80,33 +80,32 @@ AC_ARG_ENABLE(buffer_useinline,
              fi,
              AC_DEFINE([ISC_BUFFER_USEINLINE], [1]))
 
-AC_ARG_ENABLE(warn_shadow,
-             AS_HELP_STRING([--enable-warn-shadow],
-                            [turn on -Wshadow when compiling]))
+AC_ARG_ENABLE([warn_shadow],
+             [AS_HELP_STRING([--enable-warn-shadow],
+                             [turn on -Wshadow when compiling])])
 
-AC_ARG_ENABLE(warn_error,
-             AS_HELP_STRING([--enable-warn-error],
-                           [turn on -Werror when compiling]))
+AC_ARG_ENABLE([warn_error],
+             [AS_HELP_STRING([--enable-warn-error],
+                             [turn on -Werror when compiling])])
+
+AC_ARG_ENABLE([developer],
+             [AS_HELP_STRING([--enable-developer],
+                             [enable developer build settings])])
 
-AC_ARG_ENABLE(developer,
-             AS_HELP_STRING([--enable-developer],
-                            [enable developer build settings]))
 XTARGETS=
-case "$enable_developer" in
-yes)
-       STD_CDEFINES="$STD_CDEFINES -DISC_MEM_DEFAULTFILL=1 -DISC_LIST_CHECKINIT=1"
-       test "${enable_fixed_rrset+set}" = set || enable_fixed_rrset=yes
-       test "${enable_querytrace+set}" = set || enable_querytrace=yes
-       test "${with_cmocka+set}" = set || with_cmocka=yes
-       test "${with_dlz_filesystem+set}" = set || with_dlz_filesystem=yes
-       test "${enable_symtable+set}" = set || enable_symtable=all
-       test "${enable_warn_error+set}" = set || enable_warn_error=yes
-       test "${enable_warn_shadow+set}" = set || enable_warn_shadow=yes
-       test "${with_zlib+set}" = set || with_zlib=yes
-       XTARGETS='${XTARGETS}'
-       ;;
-esac
-AC_SUBST(XTARGETS)
+AS_IF([test "$enable_developer" = "yes"],
+      [STD_CDEFINES="$STD_CDEFINES -DISC_MEM_DEFAULTFILL=1 -DISC_LIST_CHECKINIT=1"
+       test "${enable_fixed_rrset+set}" = set || enable_fixed_rrset=yes
+       test "${enable_querytrace+set}" = set || enable_querytrace=yes
+       test "${with_cmocka+set}" = set || with_cmocka=yes
+       test "${with_dlz_filesystem+set}" = set || with_dlz_filesystem=yes
+       test "${enable_symtable+set}" = set || enable_symtable=all
+       test "${enable_warn_error+set}" = set || enable_warn_error=yes
+       test "${enable_warn_shadow+set}" = set || enable_warn_shadow=yes
+       test "${with_zlib+set}" = set || with_zlib=yes
+       XTARGETS='${XTARGETS}'
+       ])
+AC_SUBST([XTARGETS])
 
 AC_ARG_ENABLE([fuzzing],
              [AS_HELP_STRING([--enable-fuzzing=<afl|libfuzzer>],
@@ -757,9 +756,8 @@ CRYPTO=OpenSSL
 #
 AX_CHECK_OPENSSL([:],[AC_MSG_FAILURE([OpenSSL/LibreSSL not found])])
 
-save_CFLAGS="$CFLAGS"
-save_LIBS="$LIBS"
-save_LDFLAGS="$LDFLAGS"
+AX_SAVE_FLAGS([openssl])
+
 CFLAGS="$CFLAGS $OPENSSL_INCLUDES"
 LIBS="$LIBS $OPENSSL_LIBS"
 LDFLAGS="$LDFLAGS $OPENSSL_LDFLAGS"
@@ -862,9 +860,7 @@ AS_CASE([$enable_fips_mode],
                               [], [AC_MSG_FAILURE([OpenSSL FIPS mode requested but not available.])])],
        [no], [AC_MSG_RESULT([no])])
 
-CFLAGS="$save_CFLAGS"
-LIBS="$save_LIBS"
-LDFLAGS="$save_LDFLAGS"
+AX_RESTORE_FLAGS([openssl])
 
 AC_SUBST([OPENSSL_INCLUDES])
 AC_SUBST([OPENSSL_LIBS])
@@ -1458,53 +1454,31 @@ AC_CHECK_LIB(scf, smf_enable_instance)
 # Additional compiler settings.
 #
 MKDEPCC="$CC"
-MKDEPCFLAGS="-M"
-
-if test "X$GCC" = "Xyes"; then
-       STD_CWARNINGS="$STD_CWARNINGS -W -Wall -Wmissing-prototypes -Wcast-qual -Wwrite-strings -Wformat -Wpointer-arith"
-       AC_MSG_CHECKING(if "$CC" supports -fno-strict-aliasing)
-       SAVE_CFLAGS="$CFLAGS"
-       CFLAGS="$CFLAGS -Werror -fno-strict-aliasing"
-       AC_TRY_COMPILE(,, [FNOSTRICTALIASING=yes],[FNOSTRICTALIASING=no])
-       CFLAGS="$SAVE_CFLAGS"
-       if test "yes" = "$FNOSTRICTALIASING"; then
-               AC_MSG_RESULT(yes)
-               STD_CWARNINGS="$STD_CWARNINGS -fno-strict-aliasing"
-       else
-               AC_MSG_RESULT(no)
-       fi
-       #
-       # turn off delete null pointer checks
-       #
-       AC_MSG_CHECKING(if "$CC" supports -fno-delete-null-pointer-checks)
-       SAVE_CFLAGS="$CFLAGS"
-       CFLAGS="$CFLAGS -Werror -fno-delete-null-pointer-checks"
-       AC_TRY_COMPILE(,, [FNODELETENULLPOINTERCHECKS=yes],
-                         [FNODELETENULLPOINTERCHECKS=no])
-       CFLAGS="$SAVE_CFLAGS"
-       if test "yes" = "$FNODELETENULLPOINTERCHECKS"; then
-               AC_MSG_RESULT(yes)
-               STD_CWARNINGS="$STD_CWARNINGS -fno-delete-null-pointer-checks"
-       else
-               AC_MSG_RESULT(no)
-       fi
-       if test "X$enable_warn_shadow" = Xyes; then
-               STD_CWARNINGS="$STD_CWARNINGS -Wshadow"
-       fi
-       if test "X$enable_warn_error" = Xyes; then
-               STD_CWARNINGS="$STD_CWARNINGS -Werror"
-       fi
-else
-       case $host in
-       *-solaris*)
-               MKDEPCFLAGS="-xM"
-               ;;
-       esac
-fi
 
-AC_SUBST(MKDEPCC)
-AC_SUBST(MKDEPCFLAGS)
-AC_SUBST(MKDEPPROG)
+MKDEPCFLAGS="-M"
+AS_CASE([$host],
+       [*-solaris*],[
+           AS_IF([test "$GCC" != "yes"],
+                 [MKDEPCFLAGS="-xM"])])
+
+AS_IF([test "$GCC" = "yes"],
+      [STD_CWARNINGS="$STD_CWARNINGS -W -Wall -Wmissing-prototypes -Wcast-qual -Wwrite-strings -Wformat -Wpointer-arith"]
+      )
+
+AX_CHECK_COMPILE_FLAG([-fno-strict-aliasing],
+                     [STD_CWARNINGS="$STD_CWARNINGS -fno-strict-aliasing"])
+AX_CHECK_COMPILE_FLAG([-fno-delete-null-pointer-checks],
+                     [STC_CWARNINGS="$STD_CWARNINGS -fno-delete-null-pointer-checks"])
+AS_IF([test "$enable_warn_shadow" = "yes"],
+      [AX_CHECK_COMPILE_FLAG([-Wshadow],
+                            [STD_CWARNINGS="$STD_CWARNINGS -Wshadow"])])
+AS_IF([test "$enable_warn_error" = "yes"],
+      [AX_CHECK_COMPILE_FLAG([-Werror],
+                            [STD_CWARNINGS="$STD_CWARNINGS -Werror"])])
+
+AC_SUBST([MKDEPCC])
+AC_SUBST([MKDEPCFLAGS])
+AC_SUBST([MKDEPPROG])
 
 #
 # -lxnet buys us one big porting headache...  standards, gotta love 'em.
@@ -1841,12 +1815,12 @@ AS_IF([test "$enable_linux_caps" = "yes"],
                        [],
                        [AC_MSG_ERROR(m4_normalize([sys/capability.h header is required for Linux capabilities support.
                                                    Either install libcap or use --disable-linux-caps.]))])
-       save_LIBS="$LIBS"
+       AX_SAVE_FLAGS([cap])
        AC_SEARCH_LIBS([cap_set_proc], [cap],
                      [LIBCAP_LIBS="$ac_cv_search_cap_set_proc"],
                      [AC_MSG_ERROR(m4_normalize([libcap is required for Linux capabilities support.
                                                  Either install libcap or use --disable-linux-caps.]))])
-       LIBS="$save_LIBS"],
+       AX_RESTORE_FLAGS([cap])],
       [AC_MSG_RESULT([no])])
 AC_SUBST([LIBCAP_LIBS])
 
@@ -1916,7 +1890,7 @@ AC_CHECK_HEADERS(
         )],
        [AC_MSG_RESULT([no])],
        [ISC_ATOMIC_LIBS="-latomic"
-        save_LIBS="$LIBS"
+        AX_SAVE_FLAGS([atomic])
         LIBS="$LIBS $ISC_ATOMIC_LIBS"
         AC_LINK_IFELSE(
           [AC_LANG_PROGRAM(
@@ -1925,7 +1899,7 @@ AC_CHECK_HEADERS(
            )],
           [AC_MSG_RESULT([yes])],
           [AC_MSG_FAILURE([libatomic needed, but linking with -latomic failed, please fix your toolchain.])])
-        LIBS="$save_LIBS"
+        AX_RESTORE_FLAGS([atomic])
        ])
      ],
      [AC_MSG_FAILURE([stdatomic.h header found, but compilation failed, please fix your toolchain.])]
@@ -1946,7 +1920,7 @@ AC_CHECK_HEADERS(
         )],
        [AC_MSG_RESULT([no])],
        [ISC_ATOMIC_LIBS="-latomic"
-        save_LIBS="$LIBS"
+        AX_SAVE_FLAGS([atomic])
         LIBS="$LIBS $ISC_ATOMIC_LIBS"
         AC_LINK_IFELSE(
           [AC_LANG_PROGRAM(
@@ -1955,7 +1929,7 @@ AC_CHECK_HEADERS(
            )],
           [AC_MSG_RESULT([yes])],
           [AC_MSG_FAILURE([libatomic needed, but linking with -latomic failed, please fix your toolchain.])])
-        LIBS="$save_LIBS"
+        AX_RESTORE_FLAGS([atomic])
        ])
      ],
      [AC_MSG_RESULT([__sync builtins])
@@ -2280,10 +2254,7 @@ AS_CASE([$with_libidn2],
        [yes],  [PKG_CHECK_MODULES([LIBIDN2], [libidn2],
                                   [AC_DEFINE([HAVE_LIBIDN2], [1], [Define if libidn2 was found])])],
        [no],   [],
-       [*],    [save_CFLAGS="$CFLAGS"
-                save_CPPFLAGS="$CPPFLAGS"
-                save_LDFLAGS="$LDFLAGS"
-                save_LIBS="$LIBS"
+       [*],    [AX_SAVE_FLAGS([libidn2])
                 LIBIDN2_CFLAGS="-I$with_libidn2/include"
                 LIBIDN2_LDFLAGS="-L$with_libidn2/lib"
                 CFLAGS="$LIBIDN2_CFLAGS $CFLAGS"
@@ -2296,10 +2267,7 @@ AS_CASE([$with_libidn2],
                                [LIBIDN2_LIBS="$ac_cv_search_idn2_to_ascii_lz"
                                 AC_DEFINE([HAVE_LIBIDN2], [1], [Define if libidn2 was found])],
                                [AC_MSG_ERROR([libidn2 requested, but not found])])
-                CFLAGS="$save_CFLAGS"
-                CPPFLAGS="$save_CPPFLAGS"
-                LDFLAGS="$save_LDFLAGS"
-                LIBS="$save_LIBS"])
+               AX_RESTORE_FLAGS([libidn2])])
 AC_SUBST([LIBIDN2_CFLAGS])
 AC_SUBST([LIBIDN2_LDFLAGS])
 AC_SUBST([LIBIDN2_LIBS])
@@ -2342,24 +2310,15 @@ AC_SUBST([KYUA])
 # Check for -Wl,--wrap= support
 #
 
-save_LDFLAGS=$LDFLAGS
-LDFLAGS="--wrap=printf"
-
-LD_WRAP_TESTS=false
-enable_ld_wrap=no
-AC_MSG_CHECKING([for linker support for --wrap option])
-AC_LINK_IFELSE(
-    [AC_LANG_PROGRAM([#include <stdio.h>], [__wrap_printf("success"); return (0);])],
-    [enable_ld_wrap=yes
-     LD_WRAP_TESTS=true
-     AC_DEFINE([LD_WRAP], [1], [define if the linker supports --wrap option])
-     AC_MSG_RESULT([yes])],
-    [AC_MSG_RESULT([no])])
+AX_CHECK_LINK_FLAG([--wrap],
+                  [enable_ld_wrap=yes
+                   LD_WRAP_TESTS=true
+                   AC_DEFINE([LD_WRAP], [1], [define if the linker supports --wrap option])
+                   AC_MSG_RESULT([yes])],
+                  [AC_MSG_RESULT([no])])
 # AM_CONDITIONAL([LD_WRAP], [test $enable_ld_wrap = yes])
 AC_SUBST([LD_WRAP_TESTS])
 
-LDFLAGS=$save_LDFLAGS
-
 #
 # Check for i18n
 #
diff --git a/m4/ax_check_compile_flag.m4 b/m4/ax_check_compile_flag.m4
new file mode 100644 (file)
index 0000000..bd753b3
--- /dev/null
@@ -0,0 +1,53 @@
+# ===========================================================================
+#  https://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+#   AX_CHECK_COMPILE_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS], [INPUT])
+#
+# DESCRIPTION
+#
+#   Check whether the given FLAG works with the current language's compiler
+#   or gives an error.  (Warnings, however, are ignored)
+#
+#   ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on
+#   success/failure.
+#
+#   If EXTRA-FLAGS is defined, it is added to the current language's default
+#   flags (e.g. CFLAGS) when the check is done.  The check is thus made with
+#   the flags: "CFLAGS EXTRA-FLAGS FLAG".  This can for example be used to
+#   force the compiler to issue an error when a bad flag is given.
+#
+#   INPUT gives an alternative input source to AC_COMPILE_IFELSE.
+#
+#   NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this
+#   macro in sync with AX_CHECK_{PREPROC,LINK}_FLAG.
+#
+# LICENSE
+#
+#   Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de>
+#   Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
+#
+#   Copying and distribution of this file, with or without modification, are
+#   permitted in any medium without royalty provided the copyright notice
+#   and this notice are preserved.  This file is offered as-is, without any
+#   warranty.
+
+#serial 6
+
+AC_DEFUN([AX_CHECK_COMPILE_FLAG],
+[AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_IF
+AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]flags_$4_$1])dnl
+AC_CACHE_CHECK([whether _AC_LANG compiler accepts $1], CACHEVAR, [
+  ax_check_save_flags=$[]_AC_LANG_PREFIX[]FLAGS
+  _AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1"
+  AC_COMPILE_IFELSE([m4_default([$5],[AC_LANG_PROGRAM()])],
+    [AS_VAR_SET(CACHEVAR,[yes])],
+    [AS_VAR_SET(CACHEVAR,[no])])
+  _AC_LANG_PREFIX[]FLAGS=$ax_check_save_flags])
+AS_VAR_IF(CACHEVAR,yes,
+  [m4_default([$2], :)],
+  [m4_default([$3], :)])
+AS_VAR_POPDEF([CACHEVAR])dnl
+])dnl AX_CHECK_COMPILE_FLAGS
diff --git a/m4/ax_check_link_flag.m4 b/m4/ax_check_link_flag.m4
new file mode 100644 (file)
index 0000000..03a30ce
--- /dev/null
@@ -0,0 +1,53 @@
+# ===========================================================================
+#    https://www.gnu.org/software/autoconf-archive/ax_check_link_flag.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+#   AX_CHECK_LINK_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS], [INPUT])
+#
+# DESCRIPTION
+#
+#   Check whether the given FLAG works with the linker or gives an error.
+#   (Warnings, however, are ignored)
+#
+#   ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on
+#   success/failure.
+#
+#   If EXTRA-FLAGS is defined, it is added to the linker's default flags
+#   when the check is done.  The check is thus made with the flags: "LDFLAGS
+#   EXTRA-FLAGS FLAG".  This can for example be used to force the linker to
+#   issue an error when a bad flag is given.
+#
+#   INPUT gives an alternative input source to AC_LINK_IFELSE.
+#
+#   NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this
+#   macro in sync with AX_CHECK_{PREPROC,COMPILE}_FLAG.
+#
+# LICENSE
+#
+#   Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de>
+#   Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
+#
+#   Copying and distribution of this file, with or without modification, are
+#   permitted in any medium without royalty provided the copyright notice
+#   and this notice are preserved.  This file is offered as-is, without any
+#   warranty.
+
+#serial 6
+
+AC_DEFUN([AX_CHECK_LINK_FLAG],
+[AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_IF
+AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_ldflags_$4_$1])dnl
+AC_CACHE_CHECK([whether the linker accepts $1], CACHEVAR, [
+  ax_check_save_flags=$LDFLAGS
+  LDFLAGS="$LDFLAGS $4 $1"
+  AC_LINK_IFELSE([m4_default([$5],[AC_LANG_PROGRAM()])],
+    [AS_VAR_SET(CACHEVAR,[yes])],
+    [AS_VAR_SET(CACHEVAR,[no])])
+  LDFLAGS=$ax_check_save_flags])
+AS_VAR_IF(CACHEVAR,yes,
+  [m4_default([$2], :)],
+  [m4_default([$3], :)])
+AS_VAR_POPDEF([CACHEVAR])dnl
+])dnl AX_CHECK_LINK_FLAGS
diff --git a/m4/ax_check_preproc_flag.m4 b/m4/ax_check_preproc_flag.m4
new file mode 100644 (file)
index 0000000..e43560f
--- /dev/null
@@ -0,0 +1,53 @@
+# ===========================================================================
+#  https://www.gnu.org/software/autoconf-archive/ax_check_preproc_flag.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+#   AX_CHECK_PREPROC_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS], [INPUT])
+#
+# DESCRIPTION
+#
+#   Check whether the given FLAG works with the current language's
+#   preprocessor or gives an error.  (Warnings, however, are ignored)
+#
+#   ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on
+#   success/failure.
+#
+#   If EXTRA-FLAGS is defined, it is added to the preprocessor's default
+#   flags when the check is done.  The check is thus made with the flags:
+#   "CPPFLAGS EXTRA-FLAGS FLAG".  This can for example be used to force the
+#   preprocessor to issue an error when a bad flag is given.
+#
+#   INPUT gives an alternative input source to AC_PREPROC_IFELSE.
+#
+#   NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this
+#   macro in sync with AX_CHECK_{COMPILE,LINK}_FLAG.
+#
+# LICENSE
+#
+#   Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de>
+#   Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
+#
+#   Copying and distribution of this file, with or without modification, are
+#   permitted in any medium without royalty provided the copyright notice
+#   and this notice are preserved.  This file is offered as-is, without any
+#   warranty.
+
+#serial 6
+
+AC_DEFUN([AX_CHECK_PREPROC_FLAG],
+[AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_IF
+AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]cppflags_$4_$1])dnl
+AC_CACHE_CHECK([whether _AC_LANG preprocessor accepts $1], CACHEVAR, [
+  ax_check_save_flags=$CPPFLAGS
+  CPPFLAGS="$CPPFLAGS $4 $1"
+  AC_PREPROC_IFELSE([m4_default([$5],[AC_LANG_PROGRAM()])],
+    [AS_VAR_SET(CACHEVAR,[yes])],
+    [AS_VAR_SET(CACHEVAR,[no])])
+  CPPFLAGS=$ax_check_save_flags])
+AS_VAR_IF(CACHEVAR,yes,
+  [m4_default([$2], :)],
+  [m4_default([$3], :)])
+AS_VAR_POPDEF([CACHEVAR])dnl
+])dnl AX_CHECK_PREPROC_FLAGS
diff --git a/m4/ax_restore_flags.m4 b/m4/ax_restore_flags.m4
new file mode 100644 (file)
index 0000000..8f2adf2
--- /dev/null
@@ -0,0 +1,52 @@
+# ===========================================================================
+#     https://www.gnu.org/software/autoconf-archive/ax_restore_flags.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+#   AX_RESTORE_FLAGS([namespace])
+#
+# DESCRIPTION
+#
+#   Restore common compilation flags from temporary variables.
+#
+#   Compilation flags includes: CPPFLAGS, CFLAGS, CXXFLAGS, LDFLAGS, LIBS,
+#   OBJCFLAGS.
+#
+#   By default these flags are restored to a global (empty) namespace, but
+#   user could restore from specific NAMESPACE by using
+#   AX_RESTORE_FLAGS(NAMESPACE) macro.
+#
+#   Typical usage is like:
+#
+#     AX_SAVE_FLAGS(mypackage)
+#     CPPFLAGS="-Imypackagespath ${CPPFLAGS}"
+#     dnl ... do some detection ...
+#     AX_RESTORE_FLAGS(mypackage)
+#
+# LICENSE
+#
+#   Copyright (c) 2009 Filippo Giunchedi <filippo@esaurito.net>
+#   Copyright (c) 2011 The Board of Trustees of the Leland Stanford Junior University
+#   Copyright (c) 2011 Russ Allbery <rra@stanford.edu>
+#   Copyright (c) 2013 Bastien ROUCARIES <roucaries.bastien+autoconf@gmail.com>
+#
+#   Copying and distribution of this file, with or without modification, are
+#   permitted in any medium without royalty provided the copyright notice
+#   and this notice are preserved. This file is offered as-is, without any
+#   warranty.
+
+#serial 7
+
+# save one flag in name space
+AC_DEFUN([_AX_RESTORE_ONE_FLAG],[dnl
+  AS_VAR_PUSHDEF([_ax_restore_flag_var], [$2[]_$1[]_ax_save_flags])
+  AS_VAR_COPY($2[],_ax_restore_flag_var)
+  AS_VAR_POPDEF([_ax_restore_flag_var])
+])
+
+AC_DEFUN([AX_RESTORE_FLAGS], [dnl
+   m4_foreach([FLAG], dnl
+             [_AX_SAVE_FLAGS_LIST()], dnl
+             [_AX_RESTORE_ONE_FLAG([$1],FLAG)])
+])
diff --git a/m4/ax_save_flags.m4 b/m4/ax_save_flags.m4
new file mode 100644 (file)
index 0000000..5bc7c6c
--- /dev/null
@@ -0,0 +1,71 @@
+# ===========================================================================
+#      https://www.gnu.org/software/autoconf-archive/ax_save_flags.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+#   AX_SAVE_FLAGS([NAMESPACE])
+#
+# DESCRIPTION
+#
+#   Save common compilation flags into temporary variables.
+#
+#   Compilation flags includes: CPPFLAGS, CFLAGS, CXXFLAGS, LDFLAGS, LIBS,
+#   OBJCFLAGS.
+#
+#   By default these flags are saved to a global (empty) namespace, but user
+#   could specify a specific NAMESPACE to AX_SAVE_FLAGS macro and latter
+#   restore it by using AX_RESTORE_FLAGS(NAMESPACE).
+#
+#     AX_SAVE_FLAGS(mypackage)
+#     CPPFLAGS="-Imypackagespath ${CPPFLAGS}"
+#     dnl .. do some detection ...
+#     AX_RESTORE_FLAGS(mypackage)
+#
+# LICENSE
+#
+#   Copyright (c) 2009 Filippo Giunchedi <filippo@esaurito.net>
+#   Copyright (c) 2011 The Board of Trustees of the Leland Stanford Junior University
+#   Copyright (c) 2011 Russ Allbery <rra@stanford.edu>
+#   Copyright (c) 2013 Bastien ROUCARIES <roucaries.bastien+autoconf@gmail.com>
+#
+#   Copying and distribution of this file, with or without modification, are
+#   permitted in any medium without royalty provided the copyright notice
+#   and this notice are preserved. This file is offered as-is, without any
+#   warranty.
+
+#serial 8
+
+# list of flag to save
+AC_DEFUN([_AX_SAVE_FLAGS_LIST],[dnl
+[CCASFLAGS],dnl
+[CFLAGS],dnl
+[CPPFLAGS],dnl
+[CXXFLAGS],dnl
+[ERLCFLAGS],dnl
+[FCFLAGS],dnl
+[FCLIBS],dnl
+[FFLAGS],dnl
+[FLIBS],dnl
+[GCJFLAGS],dnl
+[JAVACFLAGS],dnl
+[LDFLAGS],dnl
+[LIBS],dnl
+[OBJCFLAGS],dnl
+[OBJCXXFLAGS],dnl
+[UPCFLAGS],dnl
+[VALAFLAGS]dnl
+])
+
+# save one flag in name space
+AC_DEFUN([_AX_SAVE_ONE_FLAG],[
+  AS_VAR_PUSHDEF([_ax_save_flag_var], [$2[]_$1[]_ax_save_flags])
+  AS_VAR_COPY(_ax_save_flag_var, $2[])
+  AS_VAR_POPDEF([_ax_save_flag_var])
+])
+
+AC_DEFUN([AX_SAVE_FLAGS],[dnl
+   m4_foreach([FLAG], dnl
+             [_AX_SAVE_FLAGS_LIST()], dnl
+             [_AX_SAVE_ONE_FLAG([$1],FLAG)])
+])