[1/3] Replaced obsolete AC_TRY_COMPILE to AC_COMPILE_IFELSE

Message ID 20210216115912.213547-1-naohirot@fujitsu.com
State Superseded
Headers
Series [1/3] Replaced obsolete AC_TRY_COMPILE to AC_COMPILE_IFELSE |

Commit Message

Naohiro Tamura Feb. 16, 2021, 11:59 a.m. UTC
  This patch replaced obsolete AC_TRY_COMPILE to AC_COMPILE_IFELSE.
It has been confirmed that GNU 'autoconf' 2.69 doesn't change any
'configure' files and suppressed obsolete warnings.
---
 configure.ac                                 | 16 ++++++++--------
 sysdeps/ieee754/ldbl-opt/configure.ac        |  8 ++++----
 sysdeps/mach/configure.ac                    |  8 ++++----
 sysdeps/mach/hurd/configure.ac               | 10 +++++-----
 sysdeps/s390/configure.ac                    |  4 ++--
 sysdeps/unix/sysv/linux/configure.ac         |  8 ++++----
 sysdeps/unix/sysv/linux/powerpc/configure    |  2 +-
 sysdeps/unix/sysv/linux/powerpc/configure.ac |  8 ++++----
 8 files changed, 32 insertions(+), 32 deletions(-)
  

Comments

Andreas Schwab Feb. 16, 2021, 1:03 p.m. UTC | #1
On Feb 16 2021, Naohiro Tamura wrote:

> diff --git a/sysdeps/unix/sysv/linux/powerpc/configure b/sysdeps/unix/sysv/linux/powerpc/configure
> index 6f883de396..69423b6f70 100644
> --- a/sysdeps/unix/sysv/linux/powerpc/configure
> +++ b/sysdeps/unix/sysv/linux/powerpc/configure
> @@ -11,7 +11,7 @@ else
>  CFLAGS="$CFLAGS -mlong-double-128"
>  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
>  /* end confdefs.h.  */
> -#include <float.h>
> +#include <float.h>[]
>  int
>  main ()
>  {

That's a syntax error.

Andreas.
  
Zack Weinberg Feb. 16, 2021, 4:38 p.m. UTC | #2
On Tue, Feb 16, 2021 at 7:00 AM Naohiro Tamura <naohirot@fujitsu.com> wrote:
> This patch replaced obsolete AC_TRY_COMPILE to AC_COMPILE_IFELSE.
> It has been confirmed that GNU 'autoconf' 2.69 doesn't change any
> 'configure' files and suppressed obsolete warnings.

Thanks for doing this work.

> +AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[
>  #ifndef __CET__
>  # error no CET compiler support
> -#endif],
> +#endif]])],

This, and any other check where the code is entirely preprocessor
directives, should be changed to AC_PREPROC_IFELSE for efficiency.

> -AC_TRY_COMPILE([#include <float.h>], [
> +AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <float.h>[]], [[

Typo here: it should be

> +AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <float.h>]], [[

I believe this is the root cause of the problem Andreas pointed out.

I did not proofread the entire patch.

zw
  
Naohiro Tamura Feb. 17, 2021, 1:05 a.m. UTC | #3
Andreas-san, Zack-san,

Thank you for the review.

> -----Original Message-----
> From: Zack Weinberg <zackw@panix.com>
> Sent: Wednesday, February 17, 2021 1:39 AM
> To: Tamura, Naohiro/田村 直広 <naohirot@fujitsu.com>
> Cc: GNU C Library <libc-alpha@sourceware.org>
> Subject: Re: [PATCH 1/3] Replaced obsolete AC_TRY_COMPILE to
> AC_COMPILE_IFELSE
> 
> On Tue, Feb 16, 2021 at 7:00 AM Naohiro Tamura <naohirot@fujitsu.com> wrote:
> > This patch replaced obsolete AC_TRY_COMPILE to AC_COMPILE_IFELSE.
> > It has been confirmed that GNU 'autoconf' 2.69 doesn't change any
> > 'configure' files and suppressed obsolete warnings.
> 
> Thanks for doing this work.
> 
> > +AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[
> >  #ifndef __CET__
> >  # error no CET compiler support
> > -#endif],
> > +#endif]])],
> 
> This, and any other check where the code is entirely preprocessor directives,
> should be changed to AC_PREPROC_IFELSE for efficiency.
> 
> > -AC_TRY_COMPILE([#include <float.h>], [
> > +AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <float.h>[]], [[
> 
> Typo here: it should be

I'll fix that.
Thanks!

> 
> > +AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <float.h>]], [[
> 
> I believe this is the root cause of the problem Andreas pointed out.
> 
> I did not proofread the entire patch.
> 
> zw
  

Patch

diff --git a/configure.ac b/configure.ac
index dfebb8a7cc..d8ccb6c119 100644
--- a/configure.ac
+++ b/configure.ac
@@ -466,10 +466,10 @@  AC_ARG_ENABLE([mathvec],
 	      [build_mathvec=$enableval],
 	      [build_mathvec=notset])
 
-AC_TRY_COMPILE([], [
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[
 #ifndef __CET__
 # error no CET compiler support
-#endif],
+#endif]])],
 	       [libc_cv_compiler_default_cet=yes],
 	       [libc_cv_compiler_default_cet=no])
 
@@ -1018,10 +1018,10 @@  AC_CHECK_PROG_VER(BISON, bison, --version,
   [2.7*|[3-9].*|[1-9][0-9]*], critic_missing="$critic_missing bison")
 
 AC_CACHE_CHECK([if $CC is sufficient to build libc], libc_cv_compiler_ok, [
-AC_TRY_COMPILE([], [
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[
 #if !defined __GNUC__ || __GNUC__ < 6 || (__GNUC__ == 6 && __GNUC_MINOR__ < 2)
 #error insufficient compiler
-#endif],
+#endif]])],
 	       [libc_cv_compiler_ok=yes],
 	       [libc_cv_compiler_ok=no])])
 AS_IF([test $libc_cv_compiler_ok != yes],
@@ -1628,10 +1628,10 @@  dnl Check for silly hacked compilers predefining _FORTIFY_SOURCE.
 dnl Since we are building the implementations of the fortified functions here,
 dnl having the macro defined interacts very badly.
 AC_CACHE_CHECK([for _FORTIFY_SOURCE predefine], libc_cv_predef_fortify_source,
-[AC_TRY_COMPILE([], [
+[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[
 #ifdef _FORTIFY_SOURCE
 # error bogon
-#endif],
+#endif]])],
 		[libc_cv_predef_fortify_source=no],
 		[libc_cv_predef_fortify_source=yes])])
 if test $libc_cv_predef_fortify_source = yes; then
@@ -1676,7 +1676,7 @@  fi
 AC_CACHE_CHECK(for __builtin_trap with no external dependencies,
 	       libc_cv_builtin_trap, [dnl
 libc_cv_builtin_trap=no
-AC_TRY_COMPILE([], [__builtin_trap ()], [
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[__builtin_trap ()]])],[
 libc_undefs=`$NM -u conftest.o |
   LC_ALL=C $AWK '$1 == "U" { print $2 | "sort -u"; next } { exit(1) }' \
     2>&AS_MESSAGE_LOG_FD` || {
@@ -1685,7 +1685,7 @@  libc_undefs=`$NM -u conftest.o |
 echo >&AS_MESSAGE_LOG_FD "libc_undefs='$libc_undefs'"
 if test -z "$libc_undefs"; then
   libc_cv_builtin_trap=yes
-fi])])
+fi],[])])
 if test $libc_cv_builtin_trap = yes; then
   AC_DEFINE([HAVE_BUILTIN_TRAP])
 fi
diff --git a/sysdeps/ieee754/ldbl-opt/configure.ac b/sysdeps/ieee754/ldbl-opt/configure.ac
index a77fadd1c4..70e3b32dc6 100644
--- a/sysdeps/ieee754/ldbl-opt/configure.ac
+++ b/sysdeps/ieee754/ldbl-opt/configure.ac
@@ -6,13 +6,13 @@  AC_CACHE_CHECK(whether $CC $CFLAGS supports -mlong-double-128,
 	       libc_cv_mlong_double_128, [dnl
 save_CFLAGS="$CFLAGS"
 CFLAGS="$CFLAGS -mlong-double-128"
-AC_TRY_COMPILE(, [
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[
 #ifndef __LONG_DOUBLE_128__
 # error "compiler did not predefine __LONG_DOUBLE_128__ as expected"
 #endif
-long double foobar (long double x) { return x; }],
-	       libc_cv_mlong_double_128=yes,
-	       libc_cv_mlong_double_128=no)
+long double foobar (long double x) { return x; }]])],
+	       [libc_cv_mlong_double_128=yes],
+	       [libc_cv_mlong_double_128=no])
 CFLAGS="$save_CFLAGS"])
 if test "$libc_cv_mlong_double_128" = no; then
   AC_MSG_ERROR([this configuration requires -mlong-double-128 support])
diff --git a/sysdeps/mach/configure.ac b/sysdeps/mach/configure.ac
index cadecae884..61b00d66b1 100644
--- a/sysdeps/mach/configure.ac
+++ b/sysdeps/mach/configure.ac
@@ -25,8 +25,8 @@  dnl If not, compile with -Dfoo_t=bar_t.
 dnl
 AC_DEFUN([mach_TYPE_CHECK], [dnl
 AC_CACHE_CHECK(for $1 in mach/mach_types.h, libc_cv_mach_$1,
-AC_TRY_COMPILE([#include <mach/mach_types.h>], [extern $1 foo;],
-libc_cv_mach_$1=$1, libc_cv_mach_$1=$2))
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <mach/mach_types.h>]], [[extern $1 foo;]])],
+[libc_cv_mach_$1=$1], [libc_cv_mach_$1=$2]))
 if test [$]libc_cv_mach_$1 != $1; then
   DEFINES="$DEFINES -D$1=$2"
 fi])
@@ -42,10 +42,10 @@  dnl The creation_time field is a GNU Mach addition the other variants lack.
 dnl
 AC_CACHE_CHECK(for creation_time in task_basic_info,
 	       libc_cv_mach_task_creation_time, [dnl
-AC_TRY_COMPILE([#include <mach/task_info.h>], [
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <mach/task_info.h>]], [[
 extern struct task_basic_info *i;
 long s = i->creation_time.seconds;
-], libc_cv_mach_task_creation_time=yes, libc_cv_mach_task_creation_time=no)])
+]])], [libc_cv_mach_task_creation_time=yes], [libc_cv_mach_task_creation_time=no])])
 if test $libc_cv_mach_task_creation_time = no; then
   AC_MSG_ERROR([you need Mach headers supporting task_info.creation_time])
 fi
diff --git a/sysdeps/mach/hurd/configure.ac b/sysdeps/mach/hurd/configure.ac
index eab0e5b6c1..eb80210711 100644
--- a/sysdeps/mach/hurd/configure.ac
+++ b/sysdeps/mach/hurd/configure.ac
@@ -11,14 +11,14 @@  if test -n "$sysheaders"; then
 fi
 
 AC_CACHE_CHECK(Hurd header version, libc_cv_hurd_version, [dnl
-AC_TRY_COMPILE(dnl
-[#include <hurd/version.h>], [
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM(dnl
+[[#include <hurd/version.h>]], [[
 #define NEED_VERSION 20020609
 #if HURD_INTERFACE_VERSION < NEED_VERSION
 # error Hurd version too old: HURD_INTERFACE_VERSION < NEED_VERSION
-#endif],
-	       libc_cv_hurd_version=ok,
-	       libc_cv_hurd_version=bad)])
+#endif]])],
+	       [libc_cv_hurd_version=ok],
+	       [libc_cv_hurd_version=bad])])
 if test "x$libc_cv_hurd_version" != xok; then
   AC_MSG_ERROR(Hurd headers not installed or too old)
 fi
diff --git a/sysdeps/s390/configure.ac b/sysdeps/s390/configure.ac
index dfe007a774..e502d34882 100644
--- a/sysdeps/s390/configure.ac
+++ b/sysdeps/s390/configure.ac
@@ -218,11 +218,11 @@  dnl overflow
 dnl (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98269)
 AC_CACHE_CHECK([if $CC is sufficient to build libc on s390x],
 libc_cv_compiler_ok_on_s390x, [
-AC_TRY_COMPILE([], [
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[
 #if !defined __GNUC__ || __GNUC__ < 7 || (__GNUC__ == 7 && __GNUC_MINOR__ < 1)
 #error insufficient compiler for building on s390x
 #endif
-],
+]])],
 	[libc_cv_compiler_ok_on_s390x=yes],
 	[libc_cv_compiler_ok_on_s390x=no])])
 if test "$libc_cv_compiler_ok_on_s390x" != yes; then
diff --git a/sysdeps/unix/sysv/linux/configure.ac b/sysdeps/unix/sysv/linux/configure.ac
index 13abda0a51..e1fffbf374 100644
--- a/sysdeps/unix/sysv/linux/configure.ac
+++ b/sysdeps/unix/sysv/linux/configure.ac
@@ -8,12 +8,12 @@  if test -n "$sysheaders"; then
 fi
 define([libc_cv_linuxVER], [libc_cv_linux]patsubst(LIBC_LINUX_VERSION,[\.]))dnl
 AC_CACHE_CHECK(installed Linux kernel header files, libc_cv_linuxVER, [dnl
-AC_TRY_COMPILE([#include <linux/version.h>
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <linux/version.h>
 #if !defined LINUX_VERSION_CODE || LINUX_VERSION_CODE < ]dnl
 patsubst(LIBC_LINUX_VERSION,[^\([^.]*\)\.\([^.]*\)\.\([^.]*\)$],dnl
 [ (\1 *65536+ \2 *256+ \3) /* \1.\2.\3 */])[
 # error kernel headers missing or too old
-#endif], [],
+#endif]], [[]])],
 	       [libc_cv_linuxVER='LIBC_LINUX_VERSION or later'],
 	       [libc_cv_linuxVER='missing or too old!'])])
 if test "$libc_cv_linuxVER" != 'LIBC_LINUX_VERSION or later'; then
@@ -52,10 +52,10 @@  changequote(,)dnl
 decnum=`echo "$minimum_kernel.0.0.0" | sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/(\1 * 65536 + \2 * 256 + \3)/'`;
 abinum=`echo "$minimum_kernel.0.0.0" | sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\1,\2,\3/'`;
 changequote([,])dnl
-AC_TRY_COMPILE([#include <linux/version.h>
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <linux/version.h>
 #if LINUX_VERSION_CODE < $decnum
 # error kernel headers too old
-#endif], [], [libc_minimum_kernel=ok], [libc_minimum_kernel='too old!'])
+#endif]], [[]])], [libc_minimum_kernel=ok], [libc_minimum_kernel='too old!'])
 AC_MSG_RESULT($libc_minimum_kernel)
 if test "$libc_minimum_kernel" = ok; then
   AC_DEFINE_UNQUOTED(__LINUX_KERNEL_VERSION, $decnum)
diff --git a/sysdeps/unix/sysv/linux/powerpc/configure b/sysdeps/unix/sysv/linux/powerpc/configure
index 6f883de396..69423b6f70 100644
--- a/sysdeps/unix/sysv/linux/powerpc/configure
+++ b/sysdeps/unix/sysv/linux/powerpc/configure
@@ -11,7 +11,7 @@  else
 CFLAGS="$CFLAGS -mlong-double-128"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include <float.h>
+#include <float.h>[]
 int
 main ()
 {
diff --git a/sysdeps/unix/sysv/linux/powerpc/configure.ac b/sysdeps/unix/sysv/linux/powerpc/configure.ac
index b8e5f9ac32..1ced436dcc 100644
--- a/sysdeps/unix/sysv/linux/powerpc/configure.ac
+++ b/sysdeps/unix/sysv/linux/powerpc/configure.ac
@@ -6,11 +6,11 @@  AC_CACHE_CHECK(whether $CC $CFLAGS -mlong-double-128 uses IBM extended format,
 	       libc_cv_mlong_double_128ibm, [dnl
 save_CFLAGS="$CFLAGS"
 CFLAGS="$CFLAGS -mlong-double-128"
-AC_TRY_COMPILE([#include <float.h>], [
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <float.h>[]], [[
 #if LDBL_MANT_DIG != 106
 # error "compiler doesn't implement IBM extended format of long double"
 #endif
-long double foobar (long double x) { return x; }],
+long double foobar (long double x) { return x; }]])],
 	       libc_cv_mlong_double_128ibm=yes,
 	       libc_cv_mlong_double_128ibm=no)
 CFLAGS="$save_CFLAGS"])
@@ -20,11 +20,11 @@  if test "$libc_cv_mlong_double_128ibm" = no; then
 		 libc_cv_mabi_ibmlongdouble, [dnl
   save_CFLAGS="$CFLAGS"
   CFLAGS="$CFLAGS -mlong-double-128 -mabi=ibmlongdouble"
-  AC_TRY_COMPILE([#include <float.h>], [
+  AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <float.h>]], [[
 #if LDBL_MANT_DIG != 106
 # error "compiler doesn't implement IBM extended format of long double"
 #endif
-long double foobar (long double x) { return x; }],
+long double foobar (long double x) { return x; }]])],
 		 libc_cv_mabi_ibmlongdouble=yes,
 		 libc_cv_mabi_ibmlongdouble=no)
   CFLAGS="$save_CFLAGS"])