summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOndrej Zajicek <santiago@crfreenet.org>2010-03-24 16:39:18 +0100
committerOndrej Zajicek <santiago@crfreenet.org>2010-03-24 16:39:18 +0100
commitb1c030b0ba59eed6da5271ed592d6b93ed088518 (patch)
tree360bdf883e05208e63c9ef494b62ac49c377dc71
parent4d9a0d1f02134235bf686caf49af44232590c456 (diff)
downloadbird-b1c030b0ba59eed6da5271ed592d6b93ed088518.tar
bird-b1c030b0ba59eed6da5271ed592d6b93ed088518.zip
Adds autoconf test for -Wno-pointer-sign compliler option.
-rw-r--r--aclocal.m413
-rw-r--r--configure.in17
2 files changed, 27 insertions, 3 deletions
diff --git a/aclocal.m4 b/aclocal.m4
index c5af789..e98a413 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -147,6 +147,19 @@ if test -z "$bird_cv_sys_linux_version" ; then
fi
])])
+AC_DEFUN(BIRD_CHECK_GCC_OPTIONS,
+[AC_CACHE_VAL(bird_cv_c_option_no_pointer_sign, [
+cat >conftest.c <<EOF
+int main(void)
+{ return 0; }
+EOF
+if $CC -Wall -Wno-pointer-sign conftest.c >&AS_MESSAGE_LOG_FD 2>&1 ; then
+ bird_cv_c_option_no_pointer_sign=yes
+else
+ bird_cv_c_option_no_pointer_sign=no
+fi
+])])
+
# BIRD_CHECK_PROG_FLAVOR_GNU(PROGRAM-PATH, IF-SUCCESS, [IF-FAILURE])
# copied autoconf internal _AC_PATH_PROG_FLAVOR_GNU
m4_define([BIRD_CHECK_PROG_FLAVOR_GNU],
diff --git a/configure.in b/configure.in
index c931c18..3c988b1 100644
--- a/configure.in
+++ b/configure.in
@@ -55,17 +55,28 @@ AC_SEARCH_LIBS(clock_gettime,[c rt posix4])
AC_CANONICAL_HOST
-AC_MSG_CHECKING([what CFLAGS should we use])
+# Store this value because ac_test_CFLAGS is overwritten by AC_PROG_CC
if test "$ac_test_CFLAGS" != set ; then
- CFLAGS="$CFLAGS -Wall -Wstrict-prototypes -Wno-pointer-sign -Wno-parentheses"
+ bird_cflags_default=yes
fi
-AC_MSG_RESULT($CFLAGS)
AC_PROG_CC
if test -z "$GCC" ; then
AC_MSG_ERROR([This program requires the GNU C Compiler.])
fi
+AC_MSG_CHECKING([what CFLAGS should we use])
+if test "$bird_cflags_default" == yes ; then
+ BIRD_CHECK_GCC_OPTIONS
+
+ CFLAGS="$CFLAGS -Wall -Wstrict-prototypes -Wno-parentheses"
+ if test "$bird_cv_c_option_no_pointer_sign" == yes ; then
+ CFLAGS="$CFLAGS -Wno-pointer-sign"
+ fi
+fi
+AC_MSG_RESULT($CFLAGS)
+
+
AC_PROG_CPP
AC_PROG_INSTALL
AC_PROG_RANLIB