Code

configure: Disable -Wsign-conversion.
[sysdb.git] / configure.ac
index ac281225e0a703cb0478aa4a809f358bcf3360ff..de18e156b7f891616c76d24661314cba8ac70e7f 100644 (file)
@@ -94,13 +94,18 @@ if test "x$enable_standards" = "xyes"; then
                        [Define to enforce ISO/IEC 9899:1999 (C99) compliance.])
        AC_DEFINE([_POSIX_C_SOURCE], 200112L,
                        [Define to enforce IEEE 1003.1-2001 (POSIX:2001) compliance.])
-       AC_DEFINE([_XOPEN_SOURCE], 600,
-                       [Define to enforce X/Open 6 (XSI) compliance.])
+       AC_DEFINE([_XOPEN_SOURCE], 700,
+                       [Define to enforce X/Open 7 (XSI) compliance.])
        AC_DEFINE([_REENTRANT], 1,
                        [Define to enable reentrant interfaces.])
        AC_DEFINE([_THREAD_SAFE], 1,
                        [Define to enable reentrant interfaces.])
 
+       dnl GNU libc defines strcasecmp() only when using _BSD_SOURCE even though
+       dnl the function is conforming to POSIX.1-2001 as well. Let's weaken
+       dnl strict standards compliance a bit to work around this.
+       AC_DEFINE([_BSD_SOURCE], 1, [Define to enable 4.3BSD support.])
+
        for flag in -std=c99 -pedantic; do
                AC_MSG_CHECKING([whether $CC accepts $flag])
 
@@ -163,11 +168,13 @@ for flag in -Wall -Werror; do
 done
 
 if test "x$enable_strict_checks" = "xyes"; then
+       dnl -Wsign-conversion may cause problems in expanded macros from libc
        for flag in -Wextra \
                        -Wbad-function-cast \
                        -Wcast-align \
                        -Wcast-qual \
                        -Wconversion \
+                       -Wno-sign-conversion \
                        -Wdeclaration-after-statement \
                        -Wmissing-prototypes \
                        -Wpointer-arith \
@@ -254,11 +261,15 @@ AC_ARG_WITH([libdbi],
                [AS_HELP_STRING([--with-libdbi], [libdbi support (default: auto)])],
                [with_libdbi="$withval"],
                [with_libdbi="yes"])
-if test "x$with_libdbi" = "xyes"; then
+if test "x$with_libdbi" = "xyes" || test "x$with_libdbi" = "xauto"; then
        AC_CHECK_HEADERS([dbi/dbi.h],
                        [with_libdbi="yes"],
                        [with_libdbi="no (dbi/dbi.h not found)"])
-fi
+else if test "x$with_libdbi" = "xno"; then
+       with_libdbi="$with_libdbi (disabled on command-line)"
+else
+       AC_MSG_ERROR([Invalid value for option --with-libdbi=$with_libdbi (expected "yes", "no", or "auto")])
+fi; fi
 if test "x$with_libdbi" = "xyes"; then
        AC_CHECK_LIB([dbi], [dbi_initialize],
                        [with_libdbi="yes"],
@@ -287,7 +298,12 @@ AC_ARG_WITH([readline],
 
 if test "x$readline_support" = "xyes"; then
        readline_support="auto"
-fi
+else if test "x$readline_support" != "xauto" \
+               && test "x$readline_support" != "xno" \
+               && test "x$readline_support" != "xlibedit" \
+               && test "x$readline_support" != "xlibreadline"; then
+       AC_MSG_ERROR([Invalid value for option --with-readline=$readline_support (expected "yes", "no", "auto", "libedit", or "libreadline")])
+fi; fi
 
 have_libedit="no"
 if test "x$readline_support" = "xauto" \
@@ -395,10 +411,14 @@ AC_SDB_PLUGIN([mk-livestatus], [yes],
                [backend accessing Nagios/Icinga/Shinken using MK Livestatus])
 AC_SDB_PLUGIN([puppet-storeconfigs], [$puppet_storeconfigs_default],
                [backend accessing the Puppet stored configuration database])
-AC_SDB_PLUGIN([syslog], [yes],
-               [plugin logging to syslog])
+
+m4_divert_once([HELP_ENABLE], [
+Plugins:])
+
 AC_SDB_PLUGIN([cname-dns], [yes],
                [canonicalize hostnames by querying DNS])
+AC_SDB_PLUGIN([syslog], [yes],
+               [plugin logging to syslog])
 
 AM_CONDITIONAL([BUILD_DOCUMENTATION], test "x$build_documentation" = "xyes")
 AM_CONDITIONAL([BUILD_TESTING], test "x$build_testing" = "xyes")
@@ -442,6 +462,7 @@ AC_MSG_RESULT([    puppet-storeconfigs:  . . . $enable_puppet_storeconfigs])
 AC_MSG_RESULT()
 AC_MSG_RESULT([  Plugins:])
 AC_MSG_RESULT([    cname::dns: . . . . . . . . $enable_cname_dns])
+AC_MSG_RESULT([    syslog: . . . . . . . . . . $enable_syslog])
 AC_MSG_RESULT()
 AC_MSG_RESULT([This package is maintained by $PACKAGE_MAINTAINER.])
 AC_MSG_RESULT([Please report bugs to $PACKAGE_BUGREPORT.])