summaryrefslogtreecommitdiff
path: root/tool/m4/ruby_try_cflags.m4
diff options
context:
space:
mode:
Diffstat (limited to 'tool/m4/ruby_try_cflags.m4')
-rw-r--r--tool/m4/ruby_try_cflags.m420
1 files changed, 16 insertions, 4 deletions
diff --git a/tool/m4/ruby_try_cflags.m4 b/tool/m4/ruby_try_cflags.m4
index f2c6a3094e..b74718fe5e 100644
--- a/tool/m4/ruby_try_cflags.m4
+++ b/tool/m4/ruby_try_cflags.m4
@@ -1,12 +1,24 @@
dnl -*- Autoconf -*-
-AC_DEFUN([RUBY_TRY_CFLAGS], [
- AC_MSG_CHECKING([whether ]$1[ is accepted as CFLAGS])
+dnl
+dnl Autoconf 2.67 fails to detect `-Werror=old-style-definition` due
+dnl to the old style definition of `main`.
+m4_version_prereq([2.70], [], [
+m4_defun([AC_LANG_PROGRAM(C)], m4_bpatsubst(m4_defn([AC_LANG_PROGRAM(C)]), [main ()], [main (void)]))
+])dnl
+dnl
+AC_DEFUN([_RUBY_TRY_CFLAGS], [
RUBY_WERROR_FLAG([
CFLAGS="[$]CFLAGS $1"
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[$4]], [[$5]])],
+ [$2], [$3])
+ ])dnl
+])dnl
+AC_DEFUN([RUBY_TRY_CFLAGS], [
+ AC_MSG_CHECKING([whether ]$1[ is accepted as CFLAGS])dnl
+ _RUBY_TRY_CFLAGS([$1],
[$2
AC_MSG_RESULT(yes)],
[$3
- AC_MSG_RESULT(no)])
- ])
+ AC_MSG_RESULT(no)],
+ [$4], [$5])
])dnl