diff options
author | Nobuyoshi Nakada <nobu@ruby-lang.org> | 2021-05-31 23:04:44 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-05-31 23:04:44 +0900 |
commit | 29bbad939939c6dceb804aac667ba372fdee4ef5 (patch) | |
tree | 24ab2d20667eec12dbc0ab2b8d7c7367220d49de /configure.ac | |
parent | fd95a1805922d9fbe65e6f4c08609c7eac10b723 (diff) |
Fix 2.7 build (#4359)
* merge revision(s) fcc88da5eb162043adcba552646677d2ab5adf55:
configure.ac: fix for upcoming autoconf-2.70
The failure initially noticed on `autoconf-2.69d` (soon to become 2.70):
```
$ ./configure
./configure: line 8720: syntax error near unexpected token `fi'
./configure: line 8720: `fi'
```
Before the change generated `./configure ` snippet looked like:
```
if ! $CC -E -xc - <<SRC >/dev/null
then :
#if defined __APPLE_CC__ && defined __clang_major__ && __clang_major__ < 3
#error premature clang
#endif
SRC
as_fn_error $? "clang version 3.0 or later is required" "$LINENO" 5
fi
```
Note the newline that breaks here-document syntax.
After the change the snippet does not use here-document.
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
---
configure.ac | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
* merge revision(s) 0df67a469561fab80b78478b99703ed893c4db07:
Signal handler type should be void
---
configure.ac | 1 -
include/ruby/internal/intern/signal.h | 3 +--
signal.c | 14 +++++++-------
vm_core.h | 2 +-
win32/Makefile.sub | 1 -
5 files changed, 9 insertions(+), 12 deletions(-)
* merge revision(s) 4d2ad8d737c55c3efd4c75131687dd1c8db7441b:
Removed obsolete autoconf checks
Use regular `AC_CHECK_MEMBERS` instead of:
* `AC_STRUCT_ST_BLKSIZE`
* `AC_STRUCT_ST_BLOCKS`
* `AC_STRUCT_ST_RDEV`
---
configure.ac | 6 +++---
missing/fileblocks.c | 1 -
win32/Makefile.sub | 1 -
3 files changed, 3 insertions(+), 5 deletions(-)
delete mode 100644 missing/fileblocks.c
* merge revision(s) 3b7c05ef8dc15371316e5254d33af12928183971:
Fixed RUBY_RM_RECURSIVE when autoconf met the required version
Before 9189cf5793cd527a86b711d15d5fd0633ec082e1 the result of
`m4_version_compare` was compared to -1, however the `$2` of
`m4_version_prereq` has different meaning and is expanded when
the required version met.
---
tool/m4/ruby_rm_recursive.m4 | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
* merge revision(s) c32375883a696fcf8e9e99875f1339ee5474a255,48bb0329eb325bc5b77c222f45b8dc97a208d986:
Update for autoconf 2.70
---
configure.ac | 232 +++++++++++++++++------------------
tool/m4/ruby_check_builtin_setjmp.m4 | 8 +-
tool/m4/ruby_check_printf_prefix.m4 | 9 +-
tool/m4/ruby_check_setjmp.m4 | 6 +-
tool/m4/ruby_check_sysconf.m4 | 6 +-
tool/m4/ruby_cppoutfile.m4 | 4 +-
tool/m4/ruby_decl_attribute.m4 | 4 +-
tool/m4/ruby_dtrace_available.m4 | 2 +-
tool/m4/ruby_dtrace_postprocess.m4 | 2 +-
tool/m4/ruby_mingw32.m4 | 4 +-
tool/m4/ruby_stack_grow_direction.m4 | 4 +-
tool/m4/ruby_try_cflags.m4 | 2 +-
tool/m4/ruby_try_cxxflags.m4 | 2 +-
tool/m4/ruby_try_ldflags.m4 | 2 +-
14 files changed, 143 insertions(+), 144 deletions(-)
Revert AC_PROG_CC_C99 for -std=gnu99 option to gcc 4.8
---
configure.ac | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
Co-authored-by: Sergei Trofimovich <slyfox@gentoo.org>
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 272 |
1 files changed, 139 insertions, 133 deletions
diff --git a/configure.ac b/configure.ac index af170efecd..826a688871 100644 --- a/configure.ac +++ b/configure.ac @@ -1,5 +1,5 @@ dnl Process this file with autoconf to produce a configure script. -AC_INIT() +AC_INIT { AC_CONFIG_AUX_DIR(tool) AC_CONFIG_MACRO_DIRS(tool/m4) @@ -150,6 +150,9 @@ AC_ARG_ENABLE(load-relative, AC_ARG_PROGRAM +# checks for UNIX variants that set C preprocessor variables +AC_USE_SYSTEM_EXTENSIONS + dnl Checks for programs. cflagspat= @@ -177,12 +180,14 @@ AS_CASE(["$host_os:$build_os"], # clang version 1.0 (http://llvm.org/svn/llvm-project/cfe/tags/Apple/clang-23 exported) # Apple clang version 2.0 (tags/Apple/clang-137) (based on LLVM 2.9svn) # Apple clang version 2.1 (tags/Apple/clang-163.7.1) (based on LLVM 3.0svn) - AS_IF([! $CC -E -xc - <<SRC >/dev/null], [ - @%:@if defined __APPLE_CC__ && defined __clang_major__ && __clang_major__ < 3 - @%:@error premature clang - @%:@endif -SRC - AC_MSG_ERROR([clang version 3.0 or later is required]) + AC_PREPROC_IFELSE( + [AC_LANG_PROGRAM([ + @%:@if defined __APPLE_CC__ && defined __clang_major__ && __clang_major__ < 3 + @%:@error premature clang + @%:@endif + ])], + [], + [AC_MSG_ERROR([clang version 3.0 or later is required]) ])], [openbsd*:openbsd*], [ AC_CHECK_TOOLS(CC, [cc]) @@ -191,7 +196,9 @@ AS_IF([test x"${build}" != x"${host}"], [ AC_CHECK_TOOL(CC, gcc) ]) -AC_PROG_CC_C99 +dnl Seems necessarily in order to add -std=gnu99 option for gcc 4.9. +m4_version_prereq([2.70], [], [AC_PROG_CC_C99]) + AS_CASE([$CC], [gcc-*], [ gcc_prefix=gcc- gcc_suffix=`echo "$CC" | sed 's/^gcc//'` @@ -223,12 +230,12 @@ test -z "$CXX" || ac_cv_prog_CXX="$CXX" AS_CASE(["$target_os"], [darwin*], [ AC_MSG_CHECKING(if minimum required OS X version is supported) - AC_TRY_CPP([@%:@include <AvailabilityMacros.h> + AC_PREPROC_IFELSE([AC_LANG_SOURCE([[@%:@include <AvailabilityMacros.h> @%:@if MAC_OS_X_VERSION_MIN_REQUIRED < __MAC_10_5 @%:@error pre OS X 10.5 [!<===== pre OS X 10.5 =====>] @%:@endif - ], + ]])], [macosx_min_required=yes], [AC_MSG_RESULT(no) AC_MSG_ERROR([Unsupported OS X version is required])]) @@ -359,8 +366,8 @@ AS_CASE(["$target_os"], [mingw*], [ test "$rb_cv_msvcrt" = "" && unset rb_cv_msvcrt AC_CACHE_CHECK(for mingw32 runtime DLL, rb_cv_msvcrt, [ - AC_TRY_LINK([@%:@include <stdio.h>], - [FILE* volatile f = stdin; return 0;], + AC_LINK_IFELSE([AC_LANG_PROGRAM([[@%:@include <stdio.h>]], + [[FILE* volatile f = stdin; return 0;]])], [rb_cv_msvcrt=`$OBJDUMP -p conftest$ac_exeext | tr A-Z a-z | sed -n '/^[[ ]]*dll name: \(msvc.*\)\.dll$/{s//\1/p;q;}'`], @@ -403,9 +410,6 @@ AC_CHECK_PROGS(DOXYGEN, doxygen) AC_CHECK_PROG(PKG_CONFIG, pkg-config, [pkg-config], [], [], [`"$as_dir/$ac_word$ac_exec_ext" --print-errors --version > /dev/null 2>&1 || echo "$as_dir/$ac_word$ac_exec_ext"`]) -# checks for UNIX variants that set C preprocessor variables -AC_USE_SYSTEM_EXTENSIONS - AC_SUBST(RM, ['rm -f']) AC_SUBST(CP, ['cp']) RMDIRS='$(top_srcdir)/tool/rmdirs' @@ -441,7 +445,7 @@ AC_SUBST(CHDIR) : "compiler section" && { RUBY_WERROR_FLAG([ AC_MSG_CHECKING([whether CFLAGS is valid]) - AC_TRY_COMPILE([], [], + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [AC_MSG_RESULT(yes)], [ AC_MSG_RESULT(no) @@ -457,7 +461,7 @@ RUBY_WERROR_FLAG([ echo '<?xml?><plist><dict><key>CFBundleIdentifier</key><string></string></dict></plist>' > Info.plist && : } || AC_MSG_ERROR([failed to make temporary directory]) - AC_TRY_LINK([], [], + AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [AC_MSG_RESULT(yes)], [ cd .. && rm -fr tmp.$$.try_link @@ -639,13 +643,13 @@ AS_IF([test "$GCC" = yes], [ ], [ CFLAGS="$CFLAGS -Werror -Wuninitialized" ]) - AC_TRY_COMPILE([@%:@include <math.h> + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[@%:@include <math.h> int foo(double x) { int exp; frexp(x, &exp); return exp; - }], [if (foo(0.0)) return 1;], + }]], [[if (foo(0.0)) return 1;]])], [rb_cv_mingw64_broken_frexp_modf=no], [rb_cv_mingw64_broken_frexp_modf=yes]) CFLAGS="$save_CFLAGS" @@ -735,13 +739,13 @@ AS_IF([test "$GCC" = yes], [ AS_CASE(["$target_cpu"], [[i[3-6]86*]], [ AC_CACHE_CHECK([for __sync_val_compare_and_swap], [rb_cv_gcc_compiler_cas], [ - AC_TRY_LINK([unsigned long atomic_var;], - [__sync_val_compare_and_swap(&atomic_var, 0, 1);], + AC_LINK_IFELSE([AC_LANG_PROGRAM([[unsigned long atomic_var;]], + [[__sync_val_compare_and_swap(&atomic_var, 0, 1);]])], [rb_cv_gcc_compiler_cas=yes], [ save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -march=i486" - AC_TRY_LINK([unsigned long atomic_var;], - [__sync_val_compare_and_swap(&atomic_var, 0, 1);], + AC_LINK_IFELSE([AC_LANG_PROGRAM([[unsigned long atomic_var;]], + [[__sync_val_compare_and_swap(&atomic_var, 0, 1);]])], [rb_cv_gcc_compiler_cas=i486], [rb_cv_gcc_compiler_cas=no]) CFLAGS="$save_CFLAGS" @@ -768,7 +772,7 @@ test -z "${ac_env_CXXFLAGS_set}" -a -n "${cxxflags+set}" && eval CXXFLAGS="\"$cx AC_CACHE_CHECK([whether compiler has statement and declarations in expressions], rb_cv_have_stmt_and_decl_in_expr, - [AC_TRY_COMPILE([],[ __extension__ ({ int a = 0; a; }); ], + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]],[[ __extension__ ({ int a = 0; a; }); ]])], [rb_cv_have_stmt_and_decl_in_expr=yes], [rb_cv_have_stmt_and_decl_in_expr=no])]) AS_IF([test "$rb_cv_have_stmt_and_decl_in_expr" = yes], [ @@ -789,12 +793,12 @@ AS_CASE(["$target_os"], [freebsd*], [ AC_CACHE_CHECK([whether pthread should be enabled by default], rb_cv_enable_pthread_default, - [AC_TRY_CPP([ + [AC_PREPROC_IFELSE([AC_LANG_SOURCE([[ #include <osreldate.h> #if __FreeBSD_version < 502102 #error pthread should be disabled on this platform #endif - ], + ]])], rb_cv_enable_pthread_default=yes, rb_cv_enable_pthread_default=no)]) enable_pthread=$rb_cv_enable_pthread_default @@ -822,8 +826,8 @@ AS_CASE(["$target_os"], RUBY_APPEND_OPTIONS(CPPFLAGS, -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT) AC_CACHE_CHECK([whether syscall(2) is deprecated], rb_cv_syscall_deprecated, [RUBY_WERROR_FLAG([ - AC_TRY_COMPILE([@%:@include <unistd.h>], - [if (syscall(0)) return 1;], + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[@%:@include <unistd.h>]], + [[if (syscall(0)) return 1;]])], [rb_cv_syscall_deprecated=no], [rb_cv_syscall_deprecated=yes])])]) AS_IF([test $rb_cv_syscall_deprecated = yes], [ @@ -850,7 +854,7 @@ AS_CASE(["$target_os"], ]) with_setjmp_type=sigsetjmp # to hijack SIGCHLD handler AC_CACHE_CHECK(for broken crypt with 8bit chars, rb_cv_broken_crypt, - [AC_TRY_RUN([ + [AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include <stdio.h> #include <unistd.h> #include <string.h> @@ -887,7 +891,7 @@ main() } return 0; } -], +]])], rb_cv_broken_crypt=no, rb_cv_broken_crypt=yes, rb_cv_broken_crypt=yes)]) @@ -916,11 +920,11 @@ main() [solaris*], [ LIBS="-lm $LIBS" ac_cv_func_vfork=no AC_MSG_CHECKING(whether _XOPEN_SOURCE is already given) - AC_TRY_COMPILE([#include <unistd.h> + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <unistd.h> #ifndef _XOPEN_SOURCE #error _XOPEN_SOURCE is not defined #endif - ], [], + ]], [[]])], [given_xopen_source=yes], [given_xopen_source=no]) AC_MSG_RESULT($given_xopen_source) AS_IF([test $given_xopen_source = no], [ @@ -930,13 +934,13 @@ main() AS_IF([test x"$define_xopen_source" != x], [ break ]) - RUBY_WERROR_FLAG([AC_TRY_COMPILE([ + RUBY_WERROR_FLAG([AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ #define _XOPEN_SOURCE ${tmp_xpg}00 #include <unistd.h> #ifndef _XPG${tmp_xpg} #error _XPG${tmp_xpg} should be defined by _XOPEN_SOURCE=${tmp_xpg}00 #endif - ], [], + ]], [[]])], [define_xopen_source=${tmp_xpg}00], []) ]) done @@ -1230,8 +1234,8 @@ AC_CACHE_CHECK(packed struct attribute, rb_cv_packed_struct, "__pragma(pack(push, 1)) x __pragma(pack(pop))" \ "x __attribute__((packed))" \ ; do - AC_TRY_COMPILE([@%:@define PACKED_STRUCT(x) $mac - PACKED_STRUCT(struct { int a; });], [], + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[@%:@define PACKED_STRUCT(x) $mac + PACKED_STRUCT(struct { int a; });]], [[]])], [rb_cv_packed_struct=$mac; break]) done]) AS_IF([test "$rb_cv_packed_struct" != no], [ @@ -1271,7 +1275,7 @@ RUBY_REPLACE_TYPE(clockid_t, [], CLOCKID, [@%:@ifdef HAVE_TIME_H @%:@endif]) AC_CACHE_CHECK(for prototypes, rb_cv_have_prototypes, - [AC_TRY_COMPILE([int foo(int x) { return 0; }], [return foo(10);], + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[int foo(int x) { return 0; }]], [[return foo(10);]])], rb_cv_have_prototypes=yes, rb_cv_have_prototypes=no)]) AS_IF([test "$rb_cv_have_prototypes" = yes], [ @@ -1279,8 +1283,8 @@ AS_IF([test "$rb_cv_have_prototypes" = yes], [ ]) AC_CACHE_CHECK(token paste string, rb_cv_tokenpaste, - [AC_TRY_COMPILE([@%:@define paste(a,b) a@%:@@%:@b], - [int xy = 1; return paste(x,y);], + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[@%:@define paste(a,b) a@%:@@%:@b]], + [[int xy = 1; return paste(x,y);]])], rb_cv_tokenpaste=ansi, rb_cv_tokenpaste=knr)]) AS_IF([test "$rb_cv_tokenpaste" = ansi], [ @@ -1325,7 +1329,7 @@ AS_IF([test "$rb_cv_string_literal_concatenation" = no], [ ]) AC_CACHE_CHECK(for variable length prototypes and stdarg.h, rb_cv_stdarg, - [AC_TRY_COMPILE([ + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ #include <stdarg.h> int foo(int x, ...) { va_list va; @@ -1335,7 +1339,7 @@ int foo(int x, ...) { va_arg(va, double); return 0; } -], [return foo(10, "", 3.14);], +]], [[return foo(10, "", 3.14);]])], rb_cv_stdarg=yes, rb_cv_stdarg=no)]) AS_IF([test "$rb_cv_stdarg" = yes], [ @@ -1343,10 +1347,10 @@ AS_IF([test "$rb_cv_stdarg" = yes], [ ]) AC_CACHE_CHECK(for variable length macro, rb_cv_va_args_macro, - [AC_TRY_COMPILE([ + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ int foo(int x, ...); @%:@define FOO(a, ...) foo(a, @%:@@%:@__VA_ARGS__) -], [FOO(1);FOO(1,2);FOO(1,2,3);], +]], [[FOO(1);FOO(1,2);FOO(1,2,3);]])], rb_cv_va_args_macro=yes, rb_cv_va_args_macro=no)]) AS_IF([test "$rb_cv_va_args_macro" = yes], [ @@ -1367,9 +1371,9 @@ do # C11 _Alignas and GCC __attribute__((__aligned__)) behave # slightly differently. What we want is GCC's. Check that # here by something C11 does not allow (`struct ALIGNAS ...`) - AC_TRY_COMPILE( + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ [@%:@define ALIGNAS(x) $attr - struct ALIGNAS(128) conftest_tag { int foo; } foo; ], [], + struct ALIGNAS(128) conftest_tag { int foo; } foo; ]], [[]])], [rb_cv_have_alignas="$attr"; break], []) done ])]) @@ -1387,10 +1391,10 @@ for expr in \ "__alignof__" \ ; do - AC_TRY_COMPILE([ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ @%:@ifdef HAVE_STDALIGN_H @%:@include <stdalign.h> - @%:@endif],[return (int)$expr(int);], + @%:@endif]],[[return (int)$expr(int);]])], [rb_cv_have_alignof="$expr"; break], []) done ])]) @@ -1444,8 +1448,8 @@ AS_IF([test "$GCC" = yes], [ AC_CACHE_CHECK([for function alias], [rb_cv_gcc_function_alias], [rb_cv_gcc_function_alias=no for a in alias weak,alias; do - AC_TRY_LINK([void foo(void) {} - void bar(void) __attribute__(($a("foo")));], [bar()], + AC_LINK_IFELSE([AC_LANG_PROGRAM([[void foo(void) {} + void bar(void) __attribute__(($a("foo")));]], [[bar()]])], [rb_cv_gcc_function_alias=$a; break]) done]) AS_IF([test "$rb_cv_gcc_function_alias" != no], [ @@ -1457,14 +1461,14 @@ AS_IF([test "$GCC" = yes], [ ]) AC_CACHE_CHECK([for __atomic builtins], [rb_cv_gcc_atomic_builtins], [ - AC_TRY_LINK([unsigned int atomic_var;], - [ + AC_LINK_IFELSE([AC_LANG_PROGRAM([[unsigned int atomic_var;]], + [[ __atomic_exchange_n(&atomic_var, 0, __ATOMIC_SEQ_CST); __atomic_exchange_n(&atomic_var, 1, __ATOMIC_SEQ_CST); __atomic_fetch_add(&atomic_var, 1, __ATOMIC_SEQ_CST); __atomic_fetch_sub(&atomic_var, 1, __ATOMIC_SEQ_CST); __atomic_or_fetch(&atomic_var, 1, __ATOMIC_SEQ_CST); - ], + ]])], [rb_cv_gcc_atomic_builtins=yes], [rb_cv_gcc_atomic_builtins=no])]) AS_IF([test "$rb_cv_gcc_atomic_builtins" = yes], [ @@ -1472,15 +1476,15 @@ AS_IF([test "$GCC" = yes], [ ]) AC_CACHE_CHECK([for __sync builtins], [rb_cv_gcc_sync_builtins], [ - AC_TRY_LINK([unsigned int atomic_var;], - [ + AC_LINK_IFELSE([AC_LANG_PROGRAM([[unsigned int atomic_var;]], + [[ __sync_lock_test_and_set(&atomic_var, 0); __sync_lock_test_and_set(&atomic_var, 1); __sync_fetch_and_add(&atomic_var, 1); __sync_fetch_and_sub(&atomic_var, 1); __sync_or_and_fetch(&atomic_var, 1); __sync_val_compare_and_swap(&atomic_var, 0, 1); - ], + ]])], [rb_cv_gcc_sync_builtins=yes], [rb_cv_gcc_sync_builtins=no])]) AS_IF([test "$rb_cv_gcc_sync_builtins" = yes], [ @@ -1489,8 +1493,8 @@ AS_IF([test "$GCC" = yes], [ AC_CACHE_CHECK(for __builtin_unreachable, rb_cv_func___builtin_unreachable, [RUBY_WERROR_FLAG( - [AC_TRY_LINK([volatile int zero;], - [if (zero) __builtin_unreachable();], + [AC_LINK_IFELSE([AC_LANG_PROGRAM([[volatile int zero;]], + [[if (zero) __builtin_unreachable();]])], [rb_cv_func___builtin_unreachable=yes], [rb_cv_func___builtin_unreachable=no]) ]) @@ -1504,8 +1508,8 @@ AC_CACHE_CHECK(for exported function attribute, rb_cv_func_exported, [ rb_cv_func_exported=no RUBY_WERROR_FLAG([ for mac in '__attribute__ ((__visibility__("default")))' '__declspec(dllexport)'; do - AC_TRY_COMPILE([@%:@define RUBY_FUNC_EXPORTED $mac extern - RUBY_FUNC_EXPORTED void conftest_attribute_check(void);], [], + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[@%:@define RUBY_FUNC_EXPORTED $mac extern + RUBY_FUNC_EXPORTED void conftest_attribute_check(void);]], [[]])], [rb_cv_func_exported="$mac"; break]) done ])]) @@ -1528,15 +1532,18 @@ AC_SUBST(MATHN, $mathn) AC_CACHE_CHECK(for function name string predefined identifier, rb_cv_function_name_string, - [rb_cv_function_name_string=no - RUBY_WERROR_FLAG([ - for func in __func__ __FUNCTION__; do - AC_TRY_LINK([@%:@include <stdio.h>], - [puts($func);], - [rb_cv_function_name_string=$func - break]) - done - ])] + [AS_CASE(["$target_os"],[openbsd*],[ + rb_cv_function_name_string=__func__ + ],[ + rb_cv_function_name_string=no + RUBY_WERROR_FLAG([ + for func in __func__ __FUNCTION__; do + AC_LINK_IFELSE([AC_LANG_PROGRAM([[@%:@include <stdio.h>]], + [[puts($func);]])], + [rb_cv_function_name_string=$func + break]) + done + ])])] ) AS_IF([test "$rb_cv_function_name_string" != no], [ AC_DEFINE_UNQUOTED(RUBY_FUNCTION_NAME_STRING, [$rb_cv_function_name_string]) @@ -1598,9 +1605,9 @@ RUBY_CHECK_SIZEOF(size_t, [int long void*], [], [@%:@include <sys/types.h>]) RUBY_CHECK_SIZEOF(ptrdiff_t, size_t, [], [@%:@include <stddef.h>]) RUBY_CHECK_PRINTF_PREFIX(size_t, z) RUBY_CHECK_PRINTF_PREFIX(ptrdiff_t, t) -AC_STRUCT_ST_BLKSIZE -AC_STRUCT_ST_BLOCKS -AC_STRUCT_ST_RDEV +AC_CHECK_MEMBERS([struct stat.st_blksize]) +AC_CHECK_MEMBERS([struct stat.st_blocks]) +AC_CHECK_MEMBERS([struct stat.st_rdev]) RUBY_CHECK_SIZEOF([struct stat.st_size], [off_t int long "long long"], [], [@%:@include <sys/stat.h>]) AS_IF([test "$ac_cv_member_struct_stat_st_blocks" = yes], [ RUBY_CHECK_SIZEOF([struct stat.st_blocks], [off_t int long "long long"], [], [@%:@include <sys/stat.h>]) @@ -1689,9 +1696,9 @@ AS_IF([test "x$rb_cv_type_int64_t" != xno], [ AC_CACHE_CHECK(for stack end address, rb_cv_stack_end_address, [rb_cv_stack_end_address=no - AC_TRY_LINK( - [extern void *__libc_stack_end;], - [if (!__libc_stack_end) return 1;], + AC_LINK_IFELSE([AC_LANG_PROGRAM( + [[extern void *__libc_stack_end;]], + [[if (!__libc_stack_end) return 1;]])], [rb_cv_stack_end_address="__libc_stack_end"]) ]) AS_IF([test $rb_cv_stack_end_address != no], [ @@ -1700,7 +1707,7 @@ AS_IF([test $rb_cv_stack_end_address != no], [ dnl Checks for library functions. AC_TYPE_GETGROUPS -AC_TYPE_SIGNAL +AC_DEFINE(RETSIGTYPE, void) AS_CASE(["${target_cpu}-${target_os}:${target_archs}"], [powerpc-darwin*], [ AC_LIBSOURCES(alloca.c) @@ -1720,14 +1727,14 @@ AS_CASE(["${target_cpu}-${target_os}:${target_archs}"], AS_IF([test "x$ALLOCA" = "x"], [ AC_CACHE_CHECK([for dynamic size alloca], rb_cv_dynamic_alloca, [ for chk in ok __chkstk; do - AC_TRY_LINK([ + AC_LINK_IFELSE([AC_LANG_PROGRAM([[ @%:@ifdef HAVE_ALLOCA_H @%:@include <alloca.h> @%:@endif void $chk() {} int dynamic_alloca_test; - int dynamic_alloca_result;], - [dynamic_alloca_result = alloca(dynamic_alloca_test) != 0;], + int dynamic_alloca_result;]], + [[dynamic_alloca_result = alloca(dynamic_alloca_test) != 0;]])], [rb_cv_dynamic_alloca=$chk; break]) done]) AS_IF([test "x$rb_cv_dynamic_alloca" = "x__chkstk"], [ @@ -1779,9 +1786,9 @@ AC_CHECK_HEADERS(sys/pstat.h) AC_CACHE_CHECK(for signbit, rb_cv_have_signbit, - [AC_TRY_LINK([ + [AC_LINK_IFELSE([AC_LANG_PROGRAM([[ #include <math.h> -], [int v = signbit(-0.0);], +]], [[int v = signbit(-0.0);]])], rb_cv_have_signbit=yes, rb_cv_have_signbit=no)]) AS_IF([test "$rb_cv_have_signbit" = yes], [ @@ -1937,7 +1944,7 @@ AS_CASE(["$ac_cv_func_memset_s:$ac_cv_func_qsort_s"], [*yes*], AS_IF([test "$ac_cv_func_getcwd" = yes], [ AC_CACHE_CHECK(if getcwd allocates buffer if NULL is given, [rb_cv_getcwd_malloc], - [AC_TRY_RUN([ + [AC_RUN_IFELSE([AC_LANG_SOURCE([[ @%:@include <stddef.h> @%:@include <stdio.h> @%:@ifdef HAVE_UNISTD_H @@ -1956,7 +1963,7 @@ main(int argc, char **argv) if (!getcwd(NULL, 0)) return EXIT_FAILURE; return EXIT_SUCCESS; } -], +]])], rb_cv_getcwd_malloc=yes, rb_cv_getcwd_malloc=no, AS_CASE($target_os, @@ -2004,21 +2011,21 @@ RUBY_CHECK_BUILTIN_FUNC(__builtin_trap, [__builtin_trap()]) AS_IF([test "$ac_cv_func_qsort_r" != no], [ AC_CACHE_CHECK(whether qsort_r is GNU version, rb_cv_gnu_qsort_r, - [AC_TRY_COMPILE([ + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ @%:@include <stdlib.h> void (qsort_r)(void *base, size_t nmemb, size_t size, int (*compar)(const void *, const void *, void *), void *arg); -],[ ], +]], [[ ]])], [rb_cv_gnu_qsort_r=yes], [rb_cv_gnu_qsort_r=no]) ]) AC_CACHE_CHECK(whether qsort_r is BSD version, rb_cv_bsd_qsort_r, - [AC_TRY_COMPILE([ + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ @%:@include <stdlib.h> void (qsort_r)(void *base, size_t nmemb, size_t size, void *arg, int (*compar)(void *, const void *, const void *)); -],[ ], +]], [[ ]])], [rb_cv_bsd_qsort_r=yes], [rb_cv_bsd_qsort_r=no]) ]) @@ -2033,7 +2040,7 @@ void (qsort_r)(void *base, size_t nmemb, size_t size, AC_CACHE_CHECK(whether atan2 handles Inf as C99, rb_cv_atan2_inf_c99, [ AS_IF([test $ac_cv_func_atan2f:$ac_cv_func_atan2l = yes:yes], [ - AC_TRY_RUN([ + AC_RUN_IFELSE([AC_LANG_SOURCE([[ @%:@include <math.h> @%:@ifdef HAVE_UNISTD_H @%:@include <unistd.h> @@ -2051,7 +2058,7 @@ main(int argc, char **argv) if (fabs(atan2(INFINITY, INFINITY) - M_PI_4) <= 0.01) return EXIT_SUCCESS; return EXIT_FAILURE; } -], +]])], [rb_cv_atan2_inf_c99=yes], [rb_cv_atan2_inf_c99=no], [AS_CASE($target_os, [mingw*|mswin*], [rb_cv_atan2_inf_c99=no], [rb_cv_atan2_inf_c99=yes])] @@ -2080,9 +2087,9 @@ AS_IF([test x"$ac_cv_lib_rt_timer_settime" = xyes], [ ]) AC_CACHE_CHECK(for unsetenv returns a value, rb_cv_unsetenv_return_value, - [AC_TRY_COMPILE([ + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ #include <stdlib.h> -], [int v = unsetenv("foo");], +]], [[int v = unsetenv("foo");]])], rb_cv_unsetenv_return_value=yes, rb_cv_unsetenv_return_value=no)]) AS_IF([test "$rb_cv_unsetenv_return_value" = no], [ @@ -2100,21 +2107,21 @@ AS_IF([test "$use_setreuid" = yes], [ ]) AC_STRUCT_TIMEZONE AC_CACHE_CHECK(for struct tm.tm_gmtoff, rb_cv_member_struct_tm_tm_gmtoff, - [AC_TRY_COMPILE([ + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ @%:@define _BSD_SOURCE @%:@define _DEFAULT_SOURCE @%:@include <time.h> - ], - [struct tm t; t.tm_gmtoff = 3600;], + ]], + [[struct tm t; t.tm_gmtoff = 3600;]])], [rb_cv_member_struct_tm_tm_gmtoff=yes], [rb_cv_member_struct_tm_tm_gmtoff=no])]) AS_IF([test "$rb_cv_member_struct_tm_tm_gmtoff" = yes], [ AC_DEFINE(HAVE_STRUCT_TM_TM_GMTOFF) ]) AC_CACHE_CHECK(for external int daylight, rb_cv_have_daylight, - [AC_TRY_LINK([#include <time.h> - int i;], - [i = daylight;], + [AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <time.h> + int i;]], + [[i = daylight;]])], rb_cv_have_daylight=yes, rb_cv_have_daylight=no)]) AS_IF([test "$rb_cv_have_daylight" = yes], [ @@ -2122,7 +2129,7 @@ AS_IF([test "$rb_cv_have_daylight" = yes], [ ]) AC_CACHE_CHECK(for negative time_t for gmtime(3), rb_cv_negative_time_t, - [AC_TRY_RUN([ + [AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include <stdlib.h> #include <time.h> @@ -2152,7 +2159,7 @@ main() check(gmtime(&t), 1, 12, 13, 20, 52); return 0; } -], +]])], rb_cv_negative_time_t=yes, rb_cv_negative_time_t=no, rb_cv_negative_time_t=yes)]) @@ -2163,7 +2170,7 @@ AS_IF([test "$rb_cv_negative_time_t" = yes], [ # [ruby-dev:40910] overflow of time on FreeBSD # http://www.freebsd.org/cgi/query-pr.cgi?pr=145341 AC_CACHE_CHECK(for localtime(3) overflow correctly, rb_cv_localtime_overflow, - [AC_TRY_RUN([ + [AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include <stdlib.h> #include <time.h> @@ -2195,7 +2202,7 @@ main() check(t); return 0; } -], +]])], rb_cv_localtime_overflow=yes, rb_cv_localtime_overflow=no, rb_cv_localtime_overflow=no)]) @@ -2208,7 +2215,7 @@ AS_IF([test "$ac_cv_func_sigprocmask" = yes && test "$ac_cv_func_sigaction" = ye ], [ AC_CHECK_FUNCS(sigsetmask) AC_CACHE_CHECK(for BSD signal semantics, rb_cv_bsd_signal, - [AC_TRY_RUN([ + [AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include <stdio.h> #include <signal.h> @@ -2226,7 +2233,7 @@ main() kill(getpid(), SIGINT); return 0; } -], +]])], rb_cv_bsd_signal=yes, rb_cv_bsd_signal=no, rb_cv_bsd_signal=$ac_cv_func_sigsetmask)]) @@ -2395,13 +2402,13 @@ AS_IF([test x"$enable_pthread" = xyes], [ AC_MSG_WARN("Don't know how to find pthread library on your system -- thread support disabled") ]) AC_CACHE_CHECK([whether pthread_t is scalar type], [rb_cv_scalar_pthread_t], [ - AC_TRY_COMPILE([ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ @%:@include <pthread.h> - ], [ + ]], [[ pthread_t thread_id; thread_id = 0; if (!thread_id) return 0; - ], [rb_cv_scalar_pthread_t=yes], [rb_cv_scalar_pthread_t=no]) + ]])],[rb_cv_scalar_pthread_t=yes],[rb_cv_scalar_pthread_t=no]) ]) AS_IF([test x"$rb_cv_scalar_pthread_t" = xyes], [ : # RUBY_CHECK_SIZEOF(pthread_t, [void* int long], [], [@%:@include <pthread.h>]) @@ -2427,14 +2434,14 @@ AS_IF([test x"$enable_pthread" = xyes], [ "(pthread_self(), \"%s\", name)" \ "(name)" \ ; do - AC_TRY_COMPILE([ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ @%:@include <pthread.h> @%:@ifdef HAVE_PTHREAD_NP_H @%:@include <pthread_np.h> @%:@endif @%:@define SET_THREAD_NAME(name) pthread_setname_np${mac} - ], - [if (SET_THREAD_NAME("conftest")) return 1;], + ]], + [[if (SET_THREAD_NAME("conftest")) return 1;]])], [rb_cv_func_pthread_setname_np_arguments="${mac}" break]) done @@ -2458,8 +2465,8 @@ AS_IF([test x"$enable_pthread" = xyes], [ AS_IF([test x"$ac_cv_header_ucontext_h" = xno], [ AC_CACHE_CHECK([if signal.h defines ucontext_t], [rb_cv_ucontext_in_signal_h], - [AC_TRY_COMPILE([@%:@include <signal.h>], - [size_t size = sizeof(ucontext_t);], + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[@%:@include <signal.h>]], + [[size_t size = sizeof(ucontext_t);]])], [rb_cv_ucontext_in_signal_h=yes], [rb_cv_ucontext_in_signal_h=no])]) AS_IF([test x"$rb_cv_ucontext_in_signal_h" = xyes], [ AC_DEFINE_UNQUOTED(UCONTEXT_IN_SIGNAL_H, 1) @@ -2467,14 +2474,14 @@ AS_IF([test x"$ac_cv_header_ucontext_h" = xno], [ ]) AS_IF([test x"$ac_cv_header_ucontext_h" = xyes -o x"$rb_cv_ucontext_in_signal_h" = xyes], [ AC_CACHE_CHECK([if mcontext_t is a pointer], [rb_cv_mcontext_t_ptr], - [AC_TRY_COMPILE([ + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ @%:@include <signal.h> @%:@ifdef HAVE_UCONTEXT_H @%:@include <ucontext.h> @%:@endif mcontext_t test(mcontext_t mc) {return mc+1;} - ], - [test(0);], + ]], + [[test(0);]])], [rb_cv_mcontext_t_ptr=yes], [rb_cv_mcontext_t_ptr=no])]) AS_IF([test x"$rb_cv_mcontext_t_ptr" = xyes], [ AC_DEFINE_UNQUOTED(DEFINE_MCONTEXT_PTR(mc, uc), mcontext_t mc = (uc)->uc_mcontext) @@ -2488,7 +2495,7 @@ AS_IF([test x"$ac_cv_header_ucontext_h" = xyes -o x"$rb_cv_ucontext_in_signal_h" AS_IF([test "$ac_cv_func_fork_works" = "yes" -a "$rb_with_pthread" = "yes"], [ AC_CACHE_CHECK([if fork works with pthread], rb_cv_fork_with_pthread, - [AC_TRY_RUN([ + [AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include <stdlib.h> #include <unistd.h> #include <pthread.h> @@ -2544,7 +2551,7 @@ main(int argc, char *argv[]) } return EXIT_SUCCESS; -}], +}]])], rb_cv_fork_with_pthread=yes, rb_cv_fork_with_pthread=no, rb_cv_fork_with_pthread=yes)]) @@ -2567,7 +2574,7 @@ AC_ARG_WITH(dln-a-out, with_dln_a_out=no])], [with_dln_a_out=no]) AC_CACHE_CHECK(whether ELF binaries are produced, rb_cv_binary_elf, -[AC_TRY_LINK([],[], [ +[AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[]])],[ AS_CASE(["`head -1 conftest$EXEEXT | tr -dc '\177ELF' | tr '\177' .`"], [.ELF*], [rb_cv_binary_elf=yes], [rb_cv_binary_elf=no])], rb_cv_binary_elf=no)]) @@ -2842,7 +2849,7 @@ AC_CHECK_FUNCS(backtrace) AS_IF([test "x$ac_cv_func_backtrace" = xyes], [ AC_CACHE_CHECK(for broken backtrace, rb_cv_broken_backtrace, - [AC_TRY_RUN([ + [AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include <unistd.h> #include <stdio.h> #include <stdlib.h> @@ -2890,7 +2897,7 @@ main(void) a[0] = 1; return EXIT_SUCCESS; } -], +]])], rb_cv_broken_backtrace=no, rb_cv_broken_backtrace=yes, rb_cv_broken_backtrace=no)]) @@ -2910,11 +2917,10 @@ AS_IF([test "$ac_cv_header_a_out_h" = yes], [ AS_IF([test "$with_dln_a_out" = yes || test "$rb_cv_dlopen" = unknown], [ cat confdefs.h > config.h AC_CACHE_CHECK(whether matz's dln works, rb_cv_dln_a_out, - [AC_TRY_COMPILE([ + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ #define USE_DLN_A_OUT #include "dln.c" -], - [], +]], [[]])], rb_cv_dln_a_out=yes, rb_cv_dln_a_out=no)]) AS_IF([test "$rb_cv_dln_a_out" = yes], [ @@ -2980,10 +2986,10 @@ AS_CASE(["$target_os"], STRIP="$STRIP -A -n"]) AC_ARG_WITH(ext, - AC_HELP_STRING([--with-ext=EXTS], + AS_HELP_STRING([--with-ext=EXTS], [pass to --with-ext option of extmk.rb])) AC_ARG_WITH(out-ext, - AC_HELP_STRING([--with-out-ext=EXTS], + AS_HELP_STRING([--with-out-ext=EXTS], [pass to --without-ext option of extmk.rb])) EXTSTATIC= AC_SUBST(EXTSTATIC)dnl @@ -3442,7 +3448,7 @@ AS_IF([test "$rb_with_pthread" = "yes"], [ THREAD_MODEL=pthread ]) AC_CACHE_CHECK([for prefix of external symbols], rb_cv_symbol_prefix, [ - AC_TRY_COMPILE([extern void conftest_external(void) {}], [], [ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[extern void conftest_external(void) {}]], [[]])],[ rb_cv_symbol_prefix=`$NM conftest.$ac_objext | sed -n ['/.*T[ ]\([^ ]*\)conftest_external.*/!d;s//\1/p;q']` ], @@ -3453,7 +3459,7 @@ SYMBOL_PREFIX="$rb_cv_symbol_prefix" test "x$SYMBOL_PREFIX" = xNONE && SYMBOL_PREFIX='' DLNOBJ=dln.o AC_ARG_ENABLE(dln, - AC_HELP_STRING([--disable-dln], [disable dynamic link feature]), + AS_HELP_STRING([--disable-dln], [disable dynamic link feature]), [test "$enableval" = yes || DLNOBJ=dmydln.o]) AC_SUBST(DLNOBJ) MINIDLNOBJ=dmydln.o @@ -3585,13 +3591,12 @@ AS_IF([test "${universal_binary-no}" = yes ], [ AC_CACHE_CHECK([for architecture macros], rb_cv_architecture_macros, [ mv confdefs.h confdefs1.h : > confdefs.h - AC_TRY_COMPILE([@%:@if defined __`echo ${universal_archnames} | + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[@%:@if defined __`echo ${universal_archnames} | sed 's/=[^ ]*//g;s/ /__ || defined __/g'`__ @%:@else @%:@error >>>>>><<<<<< -@%:@endif], [], -[ +@%:@endif]], [[]])],[ rb_cv_architecture_macros=yes mv -f confdefs1.h confdefs.h ], [ @@ -3604,16 +3609,17 @@ AS_IF([test "${universal_binary-no}" = yes ], [ CFLAGS="$new_cflags -arch $archs" archs="__${archs}__" AC_MSG_CHECKING([for macro ${archs} on ${cpu}]) - AC_TRY_COMPILE([@%:@ifndef ${archs} + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[@%:@ifndef ${archs} @%:@error -@%:@endif], [], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no])]) +@%:@endif]], [[]])], + [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no])]) done mv -f confdefs1.h confdefs.h AC_MSG_ERROR([failed]) ])]) AC_CACHE_CHECK(whether __ARCHITECTURE__ is available, rb_cv_architecture_available, - AC_TRY_COMPILE([@%:@include <stdio.h> - const char arch[[]] = __ARCHITECTURE__;], [puts(arch);], + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[@%:@include <stdio.h> + const char arch[[]] = __ARCHITECTURE__;]], [[puts(arch);]])], [rb_cv_architecture_available=yes], [rb_cv_architecture_available=no])) ]) @@ -4016,7 +4022,7 @@ AC_CONFIG_FILES(Makefile:template/Makefile.in, [ [EXEEXT='$EXEEXT' gnumake='$gnumake' GIT='$GIT']) AC_ARG_WITH([ruby-pc], - AC_HELP_STRING([--with-ruby-pc=FILENAME], [pc file basename]), + AS_HELP_STRING([--with-ruby-pc=FILENAME], [pc file basename]), [ruby_pc="$withval"], [ruby_pc="${RUBY_BASE_NAME}-${MAJOR}.${MINOR}.pc"]) AC_SUBST(ruby_pc) |