AC_CANONICAL_HOST
# Add some default CFLAGS and CXXFLAGS, can be appended to using the environment variables
-CFLAGS="-Wall -g -O2 $CFLAGS"
-CXXFLAGS="-Wall -g -O2 $CXXFLAGS"
+CFLAGS="-g -O2 -Wall -Wextra -Wshadow -Wno-unused-parameter $CFLAGS"
+CXXFLAGS="-g -O2 -Wall -Wextra -Wshadow -Wno-unused-parameter $CXXFLAGS"
AC_PROG_CC
AM_PROG_CC_C_O
PDNS_FROM_GIT
dnl Checks for library functions.
-AC_CHECK_FUNCS_ONCE([strcasestr localtime_r recvmmsg getrandom arc4random])
+dnl the *_r functions are in posix so we can use them unconditionally, but the ext/yahttp code is
+dnl using the defines.
+AC_CHECK_FUNCS_ONCE([strcasestr localtime_r gmtime_r recvmmsg sched_setscheduler getrandom arc4random])
AM_CONDITIONAL([HAVE_RECVMMSG], [test "x$ac_cv_func_recvmmsg" = "xyes"])
for a in $modules $dynmodules; do
case "$a" in
- oracle|goracle)
- PDNS_WITH_ORACLE
- needoracle=yes
- ;;
godbc)
PDNS_WITH_UNIXODBC
;;
- mydns|gmysql)
+ gmysql)
PDNS_WITH_MYSQL
;;
gpgsql)
have_remotebackend=yes
;;
tinydns)
+ needcdb=yes
PDNS_CHECK_CDB
;;
geoip)
)
;;
lmdb)
+ needlmdb=yes
PDNS_CHECK_LMDB
BOOST_SERIALIZATION
;;
PDNS_WITH_LUA_RECORDS
-AM_CONDITIONAL([ORACLE], [test "x$needoracle" = "xyes"])
-
AM_CONDITIONAL([LDAP], [test "x$needldap" = "xyes"])
PDNS_CHECK_SQLITE3
AM_CONDITIONAL([SQLITE3], [test "x$needsqlite3" = "xyes"])
+AM_CONDITIONAL([LMDB], [test "x$needlmdb" != "x"])
+AM_CONDITIONAL([HAVE_LMDB], [test "x$LMDB_LIBS" != "x"])
+
+AS_IF([test "x$needlmdb" = "xyes"], [
+ AS_IF([test "$with_lmdb" = "no"], [
+ AC_MSG_ERROR([--with-lmdb is set to 'no', but lmdb support is required])
+ ])
+ AS_IF([test "x$HAVE_LMDB" != "x1"], [
+ AC_MSG_ERROR([lmdb not found via pkg-config, please install lmdb or set --with-lmdb to your lmdb installation directory])
+ ])
+])
+
+AM_CONDITIONAL([CDB], [test "x$needcdb" != "x"])
+AM_CONDITIONAL([HAVE_CDB], [test "x$CDB_LIBS" != "x"])
+
+AS_IF([test "x$needcdb" = "xyes"], [
+ AS_IF([test "x$HAVE_CDB" != "x1"], [
+ AC_MSG_ERROR([cdb not found via pkg-config, please install cdb])
+ ])
+])
+
for a in $modules; do
AC_MSG_CHECKING([whether we can build module "${a}"])
if [[ -d "$srcdir/modules/${a}backend" ]]; then
AX_AVAILABLE_SYSTEMD
AX_CHECK_SYSTEMD_FEATURES
AM_CONDITIONAL([HAVE_SYSTEMD], [ test x"$systemd" = "xy" ])
+ PDNS_WITH_SERVICE_USER([pdns])
LDFLAGS="$RELRO_LDFLAGS $LDFLAGS"
modules/geoipbackend/Makefile
modules/gmysqlbackend/Makefile
modules/godbcbackend/Makefile
- modules/goraclebackend/Makefile
modules/gpgsqlbackend/Makefile
modules/gsqlite3backend/Makefile
modules/ldapbackend/Makefile
modules/lmdbbackend/Makefile
- modules/luabackend/Makefile
modules/lua2backend/Makefile
- modules/mydnsbackend/Makefile
modules/opendbxbackend/Makefile
- modules/oraclebackend/Makefile
modules/pipebackend/Makefile
modules/randombackend/Makefile
modules/remotebackend/Makefile
AC_MSG_NOTICE([LIBS: $LIBS])
AC_MSG_NOTICE([BOOST_CPPFLAGS: $BOOST_CPPFLAGS])
AC_MSG_NOTICE([])
-AC_MSG_NOTICE([Features enabled])
-AC_MSG_NOTICE([----------------])
+AC_MSG_NOTICE([Extras enabled])
+AC_MSG_NOTICE([--------------])
+AS_IF([test "x$enable_tools" = "xyes"],
+ [AC_MSG_NOTICE([Tools: yes])],
+ [AC_MSG_NOTICE([Tools: no])]
+)
+AS_IF([test "x$enable_ixfrdist" = "xyes"],
+ [AC_MSG_NOTICE([ixfrdist: yes])],
+ [AC_MSG_NOTICE([ixfrdist: no])]
+)
+AC_MSG_NOTICE([])
+AC_MSG_NOTICE([Server Features enabled])
+AC_MSG_NOTICE([-----------------------])
AC_MSG_NOTICE([Built-in modules: $modules])
AC_MSG_NOTICE([Dynamic modules: $dynmodules])
AC_MSG_NOTICE([])
AS_IF([test "x$enable_experimental_gss_tsig" = "xyes"],
[AC_MSG_NOTICE([GSS-TSIG: yes])]
)
+AS_IF([test "x$enable_lua_records" = "xyes"],
+ [AC_MSG_NOTICE([LUA records: yes])]
+)
AS_IF([test "x$systemd" != "xn"],
[AC_MSG_NOTICE([systemd: yes])],
[AC_MSG_NOTICE([systemd: no])]
AS_IF([test "x$enable_remotebackend_zeromq" != "xno"],
[AC_MSG_NOTICE([ZeroMQ connector for remotebackend: yes])]
)
+AS_IF([test -n "$GEOIP_LIBS"],
+ [AC_MSG_NOTICE([libgeoip for geoipbackend: yes])]
+)
+AS_IF([test -n "$MMDB_LIBS"],
+ [AC_MSG_NOTICE([libmaxminddb for geoipbackend: yes])]
+)
AC_MSG_NOTICE([])