diff options
author | Haru <haru@dotalux.com> | 2016-04-19 00:34:59 +0200 |
---|---|---|
committer | Haru <haru@dotalux.com> | 2016-04-19 00:34:59 +0200 |
commit | dff7391bd829eb73ad28b6f03a3310daad5605cc (patch) | |
tree | eb8780e10e1e88a37dcb46e6805bf7c140c1d025 /configure.in | |
parent | 367e95d6596c7d6f39efc9dc0e236b8c91e8689a (diff) | |
download | hercules-dff7391bd829eb73ad28b6f03a3310daad5605cc.tar.gz hercules-dff7391bd829eb73ad28b6f03a3310daad5605cc.tar.bz2 hercules-dff7391bd829eb73ad28b6f03a3310daad5605cc.tar.xz hercules-dff7391bd829eb73ad28b6f03a3310daad5605cc.zip |
Added --enable-Werror option to the configure script
It's not always possible (if at all) to pass -Werror in the CFLAGS,
since autoconf often generates test-code that produces warnings.
Example/reference: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=734104
Signed-off-by: Haru <haru@dotalux.com>
Diffstat (limited to 'configure.in')
-rw-r--r-- | configure.in | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/configure.in b/configure.in index c276f7a31..848e055ea 100644 --- a/configure.in +++ b/configure.in @@ -339,6 +339,32 @@ AC_ARG_ENABLE( # +# -Werror compiler flag +# It's not always possible (if at all) to pass -Werror in the CFLAGS, since +# autoconf often generates test-code that produces warnings. +# Reference: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=734104 +# +AC_ARG_ENABLE( + [Werror], + AC_HELP_STRING( + [--enable-Werror], + [ + Enables -Werror in the compiler flags. (disabled by default) + ] + ), + [ + enable_Werror="$enableval" + case $enableval in + "no");; + "yes");; + *) AC_MSG_ERROR([[invalid argument --enable-Werror=$enableval... stopping]]);; + esac + ], + [enable_Werror="no"] +) + + +# # Renewal # AC_ARG_ENABLE( @@ -1379,6 +1405,35 @@ if test "$enable_static" != "no" ; then LIBS="$OLD_LIBS" fi +# +# -Werror compiler flag +# +if test "$enable_Werror" != "no" ; then + + OLD_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -Werror" + + AC_MSG_CHECKING([whether $CC supports -Werror]) + AC_RUN_IFELSE( + [AC_LANG_SOURCE([ + int main(int argc, char **argv){ + return 0; + } + ])], + [ + AC_MSG_RESULT([yes]) + ], + [ + AC_MSG_RESULT([no]) + CFLAGS="$OLD_CFLAGS" + LDFLAGS="$OLD_LDFLAGS" + ], + [ + AC_MSG_RESULT([guessing no]) + ] + ) +fi + AC_SUBST(STATIC, ${STATIC}) AC_SUBST(PLUGINSTATIC, ${PLUGINSTATIC}) |