From: Simon Tatham Date: Sun, 30 Jun 2013 10:51:31 +0000 (+0000) Subject: Add a check in the new configure script to enable lots of gcc warning X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=commitdiff_plain;h=6c34cb721c488980ee23491d261ab2b6b3e55a23;p=sgt-puzzles.git Add a check in the new configure script to enable lots of gcc warning flags if gcc is in use - but _only_ if they don't lead to problems in a test compile which includes all the system and GTK headers I'm going to want. Ubuntu 13.04 includes a version of Pango which breaks at -Werror -pedantic, so I can't unconditionally enable all the warning flags I might want without breaking the build in ways beyond my control. [originally from svn r9888] --- diff --git a/configure.ac b/configure.ac index c5e2447..4281e96 100644 --- a/configure.ac +++ b/configure.ac @@ -4,11 +4,48 @@ AC_INIT([puzzles], rNNNN, [anakin@pobox.com]) AC_CONFIG_SRCDIR([midend.c]) AM_INIT_AUTOMAKE([foreign]) AC_PROG_CC +AM_PATH_GTK_2_0([2.0.0]) + if test "x$GCC" = "xyes"; then - : # FIXME: do something interesting enabling as many warning - # options as possible without breaking system headers. + AC_MSG_CHECKING([for usable gcc warning flags]) + gccwarningflags= + for flag in -Wall -Werror -ansi -pedantic; do + ac_save_CFLAGS="$CFLAGS" + ac_save_LIBS="$LIBS" + CFLAGS="$CFLAGS$gccwarningflags $flag $GTK_CFLAGS" + LIBS="$GTK_LIBS $LIBS" + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ + #include + #include + #include + #include + #include + #include + #include + #include + + #include + #include + + #include + #include + + #include + + #include + #include + #include + #include + ],[ + return 0; + ])], [gccwarningflags="$gccwarningflags $flag"], []) + CFLAGS="$ac_save_CFLAGS" + LIBS="$ac_save_LIBS" + done + AC_MSG_RESULT($gccwarningflags) + CFLAGS="$CFLAGS$gccwarningflags" fi -AM_PATH_GTK_2_0([2.0.0]) + AC_PROG_RANLIB AC_PROG_INSTALL AC_CONFIG_FILES([Makefile])