summaryrefslogtreecommitdiff
path: root/bind/bind9/configure.ac
diff options
context:
space:
mode:
Diffstat (limited to 'bind/bind9/configure.ac')
-rw-r--r--bind/bind9/configure.ac302
1 files changed, 198 insertions, 104 deletions
diff --git a/bind/bind9/configure.ac b/bind/bind9/configure.ac
index 4ab10a05..030c4d79 100644
--- a/bind/bind9/configure.ac
+++ b/bind/bind9/configure.ac
@@ -2,7 +2,7 @@
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+# file, you can obtain one at https://mozilla.org/MPL/2.0/.
#
# See the COPYRIGHT file distributed with this work for additional
# information regarding copyright ownership.
@@ -60,6 +60,8 @@ AC_SUBST(BACKTRACECFLAGS)
PKG_PROG_PKG_CONFIG
# Warn if the user specified libbind, which is now deprecated
+#
+# [pairwise: skip]
AC_ARG_ENABLE(libbind, AS_HELP_STRING([--enable-libbind], [deprecated]))
case "$enable_libbind" in
@@ -71,6 +73,7 @@ It is available from http://www.isc.org as a separate download.])
;;
esac
+# [pairwise: --enable-buffer-useinline, --disable-buffer-useinline]
AC_ARG_ENABLE(buffer_useinline, AS_HELP_STRING([--enable-buffer-useinline],
[define ISC_BUFFER_USEINLINE when compiling [[default=yes]]]),
if test yes = "${enable}"
@@ -80,14 +83,17 @@ AC_ARG_ENABLE(buffer_useinline, AS_HELP_STRING([--enable-buffer-useinline],
fi,
AC_DEFINE([ISC_BUFFER_USEINLINE], [1]))
+# [pairwise: --enable-warn-shadow, --disable-warn-shadow]
AC_ARG_ENABLE(warn_shadow,
AS_HELP_STRING([--enable-warn-shadow],
[turn on -Wshadow when compiling]))
+# [pairwise: --enable-warn-error, --disable-warn-error]
AC_ARG_ENABLE(warn_error,
AS_HELP_STRING([--enable-warn-error],
[turn on -Werror when compiling]))
+# [pairwise: --enable-developer, --disable-developer]
AC_ARG_ENABLE(developer,
AS_HELP_STRING([--enable-developer],
[enable developer build settings]))
@@ -109,7 +115,10 @@ yes)
esac
AC_SUBST(XTARGETS)
-# American Fuzzy Lop
+# American Fuzzy Lop is not included in pairwise testing as fuzzing
+# tools are not present in the relevant Docker image.
+#
+# [pairwise: skip]
AC_ARG_ENABLE(afl,
AS_HELP_STRING([--enable-afl],
[enable American Fuzzy Lop test harness
@@ -123,8 +132,11 @@ yes)
esac
-#libseccomp sandboxing
AC_CHECK_FUNCS(getrandom)
+
+# libseccomp sandboxing
+#
+# [pairwise: --enable-seccomp, --disable-seccomp]
AC_ARG_ENABLE(seccomp,
AS_HELP_STRING([--enable-seccomp],
[enable support for libseccomp system call
@@ -260,14 +272,17 @@ except: exit(1)'
testsetup='try: from distutils.core import setup
except: exit(1)'
-default_with_python="python python3 python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python2 python2.7"
+default_with_python="python python3 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python2 python2.7"
AC_ARG_VAR([PYTHON], [path to python executable])
+# [pairwise: --with-python, --without-python]
AC_ARG_WITH([python],
AS_HELP_STRING([--with-python=PATH],
[specify path to Python interpreter]),
[], [with_python=$default_with_python])
+
+# [pairwise: skip]
AC_ARG_WITH([python-install-dir],
AS_HELP_STRING([--with-python-install-dir=PATH],
[installation directory for Python modules]),
@@ -609,6 +624,7 @@ AC_SUBST(ISC_PLATFORM_HAVELIFCONF)
#
# check if we have kqueue
#
+# [pairwise: --enable-kqueue, --disable-kqueue]
AC_ARG_ENABLE(kqueue,
AS_HELP_STRING([--enable-kqueue],
[use BSD kqueue when available [default=yes]]),
@@ -635,6 +651,7 @@ AC_SUBST(ISC_PLATFORM_HAVEKQUEUE)
# check if we have epoll. Linux kernel 2.4 has epoll_create() which fails,
# so we need to try running the code, not just test its existence.
#
+# [pairwise: --enable-epoll, --disable-epoll]
AC_ARG_ENABLE(epoll,
AS_HELP_STRING([--enable-epoll],
[use Linux epoll when available [default=auto]]),
@@ -669,6 +686,7 @@ AC_SUBST(ISC_PLATFORM_HAVEEPOLL)
#
# check if we support /dev/poll
#
+# [pairwise: --enable-devpoll, --disable-devpoll]
AC_ARG_ENABLE(devpoll,
AS_HELP_STRING([--enable-devpoll],
[use /dev/poll when available [default=yes]]),
@@ -736,6 +754,8 @@ AC_C_BIGENDIAN
# GeoIP support?
#
geoip2_default="no"
+
+# [pairwise: --with-geoip --without-geoip2, --without-geoip --with-geoip2=auto, --without-geoip --with-geoip2=yes, --without-geoip --without-geoip2]
AC_ARG_WITH(geoip,
AS_HELP_STRING([--with-geoip=PATH],
[Build with legacy GeoIP support (yes|no|path)]),
@@ -744,6 +764,8 @@ AC_ARG_WITH(geoip,
geoip2_default="no"
],
[use_geoip="no"])
+
+# [pairwise: skip]
AC_ARG_WITH([geoip2],
[AS_HELP_STRING([--with-geoip2=PATH],
[Build with MaxMind GeoIP2 support (auto|yes|no|path) [default=no]])],
@@ -779,7 +801,7 @@ AS_CASE([$with_geoip2],
[AC_DEFINE([HAVE_GEOIP2], [1], [Build with GeoIP2 support])
GEOIP2LINKSRCS='${GEOIP2LINKSRCS}'
GEOIP2LINKOBJS='${GEOIP2LINKOBJS}'
- MAXMINDDB_LIBS="$MAXMINDDB_LIBS $ac_cv_search_mmdb_open"
+ MAXMINDDB_LIBS="$MAXMINDDB_LIBS $ac_cv_search_MMDB_open"
AC_MSG_NOTICE([GeoIP2 default database path set to $with_geoip2/share/GeoIP])
AS_VAR_COPY([MAXMINDDB_PREFIX], [$with_geoip2])
],
@@ -880,6 +902,8 @@ AC_SUBST(GEOIPLINKSRCS)
AC_SUBST(GEOIPLINKOBJS)
AC_MSG_CHECKING(for GSSAPI library)
+
+# [pairwise: --with-gssapi=yes, --with-gssapi=auto, --without-gssapi]
AC_ARG_WITH(gssapi,
AS_HELP_STRING([--with-gssapi=[PATH|[/path/]krb5-config]],
[Specify path for system-supplied GSSAPI
@@ -899,8 +923,10 @@ case "$use_gssapi" in
fi
gssapi_cflags=`$KRB5_CONFIG --cflags gssapi`
gssapi_libs=`$KRB5_CONFIG --libs gssapi`
+ krb5_cflags=`$KRB5_CONFIG --cflags krb5`
+ krb5_libs=`$KRB5_CONFIG --libs krb5`
saved_cppflags="$CPPFLAGS"
- CPPFLAGS="$gssapi_cflags $CPPFLAGS"
+ CPPFLAGS="$gssapi_cflags $krb5_cflags $CPPFLAGS"
AC_CHECK_HEADERS(gssapi.h gssapi/gssapi.h,
[ISC_PLATFORM_GSSAPIHEADER="#define ISC_PLATFORM_GSSAPIHEADER <$ac_header>"])
if test "" = "$ISC_PLATFORM_GSSAPIHEADER"; then
@@ -917,7 +943,7 @@ case "$use_gssapi" in
else
CPPFLAGS="$saved_cppflags"
saved_libs="$LIBS"
- LIBS=$gssapi_libs
+ LIBS="$gssapi_libs $krb5_libs $LIBS"
AC_MSG_CHECKING([krb5-config linking as $LIBS])
AC_TRY_LINK( , [gss_acquire_cred();krb5_init_context()],
gssapi_linked=yes, gssapi_linked=no)
@@ -993,8 +1019,8 @@ case "$use_gssapi" in
;;
*/krb5-config|krb5-config)
USE_GSSAPI='-DGSSAPI'
- DST_GSSAPI_INC="$gssapi_cflags"
- DNS_GSSAPI_LIBS="$gssapi_libs"
+ DST_GSSAPI_INC="$gssapi_cflags $krb5_cflags"
+ DNS_GSSAPI_LIBS="$gssapi_libs $krb5_libs"
;;
framework)
USE_GSSAPI='-DGSSAPI'
@@ -1163,6 +1189,8 @@ AC_SUBST(DNS_CRYPTO_LIBS)
# was --with-randomdev specified?
#
AC_MSG_CHECKING(for random device)
+
+# [pairwise: skip]
AC_ARG_WITH(randomdev,
AS_HELP_STRING([--with-randomdev=PATH],
[Specify path for random device]),
@@ -1256,7 +1284,7 @@ then
CCNOOPT="$CCNOOPT -pthread"
;;
*-solaris*)
- CC="$CC -mt"
+ CC="$CC"
CCOPT="$CCOPT -mt"
CCNOOPT="$CCNOOPT -mt"
;;
@@ -1298,6 +1326,7 @@ then
AC_CHECK_FUNC(pthread_attr_setstacksize,
AC_DEFINE(HAVE_PTHREAD_ATTR_SETSTACKSIZE),)
+ # [pairwise: --with-locktype=adaptive, --with-locktype=standard]
AC_ARG_WITH(locktype,
AS_HELP_STRING([--with-locktype=ARG],
[Specify mutex lock type
@@ -1415,6 +1444,8 @@ ISC_THREAD_DIR=$thread_dir
AC_SUBST(ISC_THREAD_DIR)
AC_MSG_CHECKING(for libtool)
+
+# [pairwise: --with-libtool, --without-libtool]
AC_ARG_WITH(libtool, AS_HELP_STRING([--with-libtool], [use GNU libtool]),
use_libtool="$withval", use_libtool="no")
@@ -1460,6 +1491,7 @@ AC_SUBST(INSTALL_LIBRARY)
# was --enable-native-pkcs11 specified?
# (note it implies both --without-openssl and --with-pkcs11)
#
+# [pairwise: --enable-native-pkcs11 --with-dlopen, --disable-native-pkcs11 --with-dlopen, --disable-native-pkcs11 --without-dlopen]
AC_ARG_ENABLE(native-pkcs11,
AS_HELP_STRING([--enable-native-pkcs11],
[use native PKCS11 for all crypto [default=no]]),
@@ -1468,6 +1500,7 @@ AC_ARG_ENABLE(native-pkcs11,
#
# was --with-openssl specified?
#
+# [pairwise: --with-openssl --enable-openssl-hash, --with-openssl --disable-openssl-hash, --without-openssl]
AC_ARG_WITH(openssl,
AS_HELP_STRING([--with-openssl[=PATH]],
[Build with OpenSSL [yes|no|path].
@@ -1477,6 +1510,7 @@ AC_ARG_WITH(openssl,
#
# was --with-pkcs11 specified?
#
+# [pairwise: skip]
AC_ARG_WITH(pkcs11,
AS_HELP_STRING([--with-pkcs11[=PATH]],
[Build with PKCS11 support [yes|no|path]
@@ -1486,19 +1520,34 @@ AC_ARG_WITH(pkcs11,
#
# were --with-ecdsa, --with-gost, --with-eddsa, --with-aes specified
#
+
+# [pairwise: --with-ecdsa, --without-ecdsa]
AC_ARG_WITH(ecdsa, AS_HELP_STRING([--with-ecdsa], [Crypto ECDSA]),
with_ecdsa="$withval", with_ecdsa="auto")
+
+# GOST is not included in pairwise testing as it is not supported by the
+# OpenSSL version present in the relevant Docker image.
+#
+# [pairwise: skip]
AC_ARG_WITH(gost,
AS_HELP_STRING([--with-gost], [Crypto GOST [yes|no|raw|asn1].]),
with_gost="$withval", with_gost="auto")
+
+# EdDSA is not included in pairwise testing as it is not supported by
+# the SoftHSM version present in the relevant Docker image.
+#
+# [pairwise: skip]
AC_ARG_WITH(eddsa, AS_HELP_STRING([--with-eddsa], [Crypto EDDSA [yes|all|no].]),
with_eddsa="$withval", with_eddsa="auto")
+
+# [pairwise: --with-aes, --without-aes]
AC_ARG_WITH(aes, AS_HELP_STRING([--with-aes], [Crypto AES]),
with_aes="$withval", with_aes="yes")
#
# was --enable-openssl-hash specified?
#
+# [pairwise: skip]
AC_ARG_ENABLE(openssl-hash,
AS_HELP_STRING([--enable-openssl-hash],
[use OpenSSL for hash functions [default=no]]),
@@ -1510,6 +1559,7 @@ openssldirs="/usr /usr/local /usr/local/ssl /opt/local /usr/pkg /usr/sfw"
if test "yes" = "$want_native_pkcs11"
then
use_openssl="native_pkcs11"
+ want_openssl_hash="no"
AC_MSG_RESULT(use of native PKCS11 instead)
fi
@@ -1758,6 +1808,10 @@ int main() {
ec384 = EC_KEY_new_by_curve_name(NID_secp384r1);
if (ec256 == NULL || ec384 == NULL)
return (2);
+ if (ec256 != NULL)
+ EC_KEY_free(ec256);
+ if (ec384 != NULL)
+ EC_KEY_free(ec384);
return (0);
}
],
@@ -1870,8 +1924,10 @@ int main() {
EVP_PKEY_CTX *ctx;
ctx = EVP_PKEY_CTX_new_id(NID_ED25519, NULL);
- if (ctx == NULL)
+ if (ctx == NULL) {
return (2);
+ }
+ EVP_PKEY_CTX_free(ctx);
return (0);
}
],
@@ -1911,8 +1967,10 @@ int main() {
EVP_PKEY_CTX *ctx;
ctx = EVP_PKEY_CTX_new_id(NID_ED448, NULL);
- if (ctx == NULL)
+ if (ctx == NULL) {
return (2);
+ }
+ EVP_PKEY_CTX_free(ctx);
return (0);
}
],
@@ -2033,6 +2091,7 @@ AC_SUBST(ISC_PLATFORM_WANTAES)
#
# Choose Client Cookie algorithm
#
+# [pairwise: skip]
AC_ARG_WITH([cc-alg],
[AS_HELP_STRING([--with-cc-alg=ALG], [deprecated])],
[:], [with_cc_alg="siphash24"])
@@ -2326,6 +2385,8 @@ fi
# was --with-lmdb specified?
#
AC_MSG_CHECKING(for lmdb library)
+
+# [pairwise: --with-lmdb=auto, --with-lmdb=yes, --without-lmdb]
AC_ARG_WITH(lmdb,
AS_HELP_STRING([--with-lmdb[=PATH]],
[build with LMDB library [yes|no|path]]),
@@ -2393,63 +2454,46 @@ AC_SUBST(NZDTARGETS)
#
# was --with-libxml2 specified?
#
-AC_MSG_CHECKING(for libxml2 library)
-AC_ARG_WITH(libxml2,
- AS_HELP_STRING([--with-libxml2[=PATH]],
- [build with libxml2 library [yes|no|path]]),
- use_libxml2="$withval", use_libxml2="auto")
-
-case "$use_libxml2" in
- no)
- DST_LIBXML2_INC=""
- ;;
- auto|yes)
- case X`(xml2-config --version) 2>/dev/null` in
- X2.[[6789]].*)
- libxml2_libs=`xml2-config --libs`
- libxml2_cflags=`xml2-config --cflags`
- ;;
- *)
- if test "yes" = "$use_libxml2" ; then
- AC_MSG_RESULT(no)
- AC_MSG_ERROR(required libxml2 version not available)
- else
- libxml2_libs=
- libxml2_cflags=
- fi
- ;;
- esac
- ;;
- *)
- if test -f "$use_libxml2/bin/xml2-config" ; then
- libxml2_libs=`$use_libxml2/bin/xml2-config --libs`
- libxml2_cflags=`$use_libxml2/bin/xml2-config --cflags`
- fi
- ;;
-esac
+# [pairwise: --with-libxml2=auto, --with-libxml2=yes, --without-libxml2]
+AC_ARG_WITH([libxml2],
+ [AS_HELP_STRING([--with-libxml2[=PATH]],
+ [build with libxml2 library (auto|yes|no|path) [default=auto]])],
+ [:], [with_libxml2="auto"])
-if test "X$libxml2_libs" != "X"
-then
- CFLAGS="$CFLAGS $libxml2_cflags"
- LIBS="$LIBS $libxml2_libs"
- #
- # Sanity check xml2-config output.
- #
- AC_TRY_LINK([#include <libxml/xmlwriter.h>],
- [return(xmlTextWriterStartElement(NULL, NULL));],
- AC_MSG_RESULT(yes),
- AC_MSG_ERROR(xml2-config returns badness))
- AC_DEFINE(HAVE_LIBXML2, 1, [Define if libxml2 was found])
- XMLSTATS=1
-else
- AC_MSG_RESULT(no)
-fi
-AC_SUBST(XMLSTATS)
+LIBXML2_CFLAGS=
+LIBXML2_LIBS=
+AS_CASE([$with_libxml2],
+ [no],[:],
+ [auto],[PKG_CHECK_MODULES([LIBXML2], [libxml-2.0 >= 2.6.0], [:], [:])],
+ [yes],[PKG_CHECK_MODULES([LIBXML2], [libxml-2.0 >= 2.6.0])],
+ [AC_MSG_CHECKING([for libxml2 library in $with_libxml2])
+ AS_IF([test -x "$with_libxml2/bin/xml2-config"],
+ [AC_MSG_RESULT([yes])
+ LIBXML2_LIBS=`$with_libxml2/bin/xml2-config --libs`
+ LIBXML2_CFLAGS=`$with_libxml2/bin/xml2-config --cflags`],
+ [AC_MSG_ERROR([not found])])])
+
+AS_IF([test -n "$LIBXML2_LIBS"],
+ [AC_MSG_CHECKING([whether linking with libxml2 works])
+ CFLAGS="$CFLAGS $LIBXML2_CFLAGS"
+ LIBS="$LIBS $LIBXML2_LIBS"
+ #
+ # Sanity check xml2-config output.
+ #
+ AC_TRY_LINK([#include <libxml/xmlwriter.h>],
+ [return(xmlTextWriterStartElement(NULL, NULL));],
+ [AC_MSG_RESULT([yes])],
+ [AC_MSG_ERROR([no])])
+ AC_DEFINE([HAVE_LIBXML2], [1], [Define if libxml2 was found])
+ XMLSTATS=1])
+AC_SUBST([XMLSTATS])
#
# was --with-libjson specified?
#
AC_MSG_CHECKING(for json library)
+
+# [pairwise: --with-libjson=auto, --with-libjson=yes, --without-libjson]
AC_ARG_WITH(libjson,
AS_HELP_STRING([--with-libjson[=PATH]],
[build with libjson0 library [yes|no|path]]),
@@ -2531,6 +2575,8 @@ AC_SUBST(JSONSTATS)
# was --with-zlib specified?
#
AC_MSG_CHECKING(for zlib library)
+
+# [pairwise: --with-zlib=auto, --with-zlib=yes, --without-zlib]
AC_ARG_WITH(zlib,
AS_HELP_STRING([--with-zlib[=PATH]],
[build with zlib for HTTP compression
@@ -2621,6 +2667,7 @@ fi
#
# Large File
#
+# [pairwise: --enable-largefile, --disable-largefile]
AC_ARG_ENABLE(largefile,
AS_HELP_STRING([--enable-largefile], [64-bit file support]),
want_largefile="yes", want_largefile="no")
@@ -2773,6 +2820,11 @@ esac
# Purify support
#
AC_MSG_CHECKING(whether to use purify)
+
+# Purify is not included in pairwise testing as that tool is not present
+# in the relevant Docker image.
+#
+# [pairwise: skip]
AC_ARG_WITH(purify,
AS_HELP_STRING([--with-purify[=PATH]], [use Rational purify]),
use_purify="$withval", use_purify="no")
@@ -2815,6 +2867,12 @@ AC_SUBST(PURIFY)
# Google/Great Performance Tools CPU Profiler
#
AC_MSG_CHECKING(whether to use gperftools profiler)
+
+# Google/Great Performance Tools CPU Profiler is not included in
+# pairwise testing as that tool is not present in the relevant Docker
+# image.
+#
+# [pairwise: skip]
AC_ARG_WITH(gperftools-profiler,
AS_HELP_STRING([--with-gperftools-profiler],
[use gperftools CPU profiler]),
@@ -2836,6 +2894,7 @@ esac
# enable/disable dumping stack backtrace. Also check if the system supports
# glibc-compatible backtrace() function.
#
+# [pairwise: --enable-backtrace, --disable-backtrace]
AC_ARG_ENABLE(backtrace,
AS_HELP_STRING([--enable-backtrace],
[log stack backtrace on abort [default=yes]]),
@@ -2845,7 +2904,10 @@ yes)
ISC_PLATFORM_USEBACKTRACE="#define ISC_PLATFORM_USEBACKTRACE 1"
AC_TRY_LINK([#include <execinfo.h>],
[return (backtrace((void **)0, 0));],
- [AC_DEFINE([HAVE_LIBCTRACE], [], [if system have backtrace function])],)
+ [AC_DEFINE([HAVE_LIBCTRACE], [], [if system have backtrace function])],
+ [AC_TRY_LINK([#include <stddef.h>],
+ [return _Unwind_Backtrace(NULL, NULL);],
+ [AC_DEFINE([HAVE_UNWIND_BACKTRACE], [1], [define if the compiler supports _Unwind_Backtrace()])])])
;;
*)
ISC_PLATFORM_USEBACKTRACE="#undef ISC_PLATFORM_USEBACKTRACE"
@@ -2853,6 +2915,7 @@ yes)
esac
AC_SUBST(ISC_PLATFORM_USEBACKTRACE)
+# [pairwise: --enable-symtable, --disable-symtable]
AC_ARG_ENABLE(symtable,
AS_HELP_STRING([--enable-symtable],
[use internal symbol table for backtrace
@@ -2921,6 +2984,7 @@ AC_SUBST(BIND9_CO_RULE)
#
# IPv6
#
+# [pairwise: --enable-ipv6, --disable-ipv6]
AC_ARG_ENABLE(ipv6,
AS_HELP_STRING([--enable-ipv6], [use IPv6 [default=autodetect]]))
@@ -2952,6 +3016,11 @@ AC_TRY_COMPILE([
# This is done before other IPv6 linking tests to LIBS is properly set.
#
AC_MSG_CHECKING(for Kame IPv6 support)
+
+# Kame is not included in pairwise testing as it is not present in the
+# relevant Docker image.
+#
+# [pairwise: skip]
AC_ARG_WITH(kame,
AS_HELP_STRING([--with-kame[=PATH]],
[use Kame IPv6 [default path /usr/local/v6]]),
@@ -3302,7 +3371,7 @@ AC_SUBST(ISC_PLATFORM_NEEDPORTT)
# confusing results on some systems (e.g. FreeBSD; see set_tcp_fastopen()
# comment in lib/isc/unix/socket.c).
#
-
+# [pairwise: --enable-tcp-fastopen, --disable-tcp-fastopen]
AC_ARG_ENABLE(tcp_fastopen,
AS_HELP_STRING([--disable-tcp-fastopen],
[disable TCP Fast Open support [default=autodetect]]))
@@ -3511,6 +3580,7 @@ AC_SUBST(ISC_LWRES_GETADDRINFOPROTO)
AC_SUBST(ISC_LWRES_GETNAMEINFOPROTO)
AC_SUBST(ISC_IRS_GETNAMEINFOSOCKLEN)
+# [pairwise: --enable-getifaddrs, --disable-getifaddrs]
AC_ARG_ENABLE(getifaddrs,
AS_HELP_STRING([--enable-getifaddrs],
[enable the use of getifaddrs() [yes|no].]),
@@ -3604,6 +3674,8 @@ AC_CHECK_FUNC(strcasestr,
AC_SUBST(ISC_PLATFORM_NEEDSTRCASESTR)
AC_SUBST(READLINE_LIB)
+
+# [pairwise: --with-readline=auto, --with-readline=yes, --without-readline]
AC_ARG_WITH(readline,
AS_HELP_STRING([--with-readline[=LIBSPEC]],
[specify readline library [default auto]]),
@@ -3727,29 +3799,6 @@ AC_SUBST(ISC_EXTRA_OBJS)
AC_SUBST(ISC_EXTRA_SRCS)
AC_CHECK_FUNC(strerror, AC_DEFINE(HAVE_STRERROR))
-#
-# Use our own SPNEGO implementation?
-#
-AC_ARG_ENABLE(isc-spnego,
- AS_HELP_STRING([--disable-isc-spnego],
- [use SPNEGO from GSSAPI library]))
-
-if test -n "$USE_GSSAPI"
-then
- case "$enable_isc_spnego" in
- yes|'')
- USE_ISC_SPNEGO='-DUSE_ISC_SPNEGO'
- DST_EXTRA_OBJS="$DST_EXTRA_OBJS spnego.$O"
- DST_EXTRA_SRCS="$DST_EXTRA_SRCS spnego.c"
- AC_MSG_RESULT(using SPNEGO from lib/dns)
- ;;
- no)
- AC_MSG_RESULT(using SPNEGO from GSSAPI library)
- ;;
- esac
-fi
-
-AC_SUBST(USE_ISC_SPNEGO)
AC_SUBST(DST_EXTRA_OBJS)
AC_SUBST(DST_EXTRA_SRCS)
@@ -3759,6 +3808,8 @@ AC_SUBST(DST_EXTRA_SRCS)
#
# Note it is very recommended to *not* disable chroot(),
# this is only because chroot() was made obsolete by Posix.
+#
+# [pairwise: --enable-chroot, --disable-chroot]
AC_ARG_ENABLE(chroot, AS_HELP_STRING([--disable-chroot], [disable chroot]))
case "$enable_chroot" in
yes|'')
@@ -3767,6 +3818,8 @@ case "$enable_chroot" in
no)
;;
esac
+
+# [pairwise: --enable-linux-caps, --disable-linux-caps]
AC_ARG_ENABLE(linux-caps,
AS_HELP_STRING([--disable-linux-caps],
[disable linux capabilities]))
@@ -3871,6 +3924,8 @@ ISC_PLATFORM_RLIMITTYPE="#define ISC_PLATFORM_RLIMITTYPE long long int"],
],[AC_MSG_ERROR(this cannot happen)])
],[AC_MSG_ERROR(this cannot happen)])
],[
+
+# [pairwise: skip]
AC_ARG_WITH(rlimtype, , rlimtype="$withval", rlimtype="long long int")
ISC_PLATFORM_RLIMITTYPE="#define ISC_PLATFORM_RLIMITTYPE $rlimtype"
AC_MSG_RESULT(cannot determine type of rlim_cur when cross compiling - assuming $rlimtype)])
@@ -4049,6 +4104,7 @@ AC_TRY_COMPILE([
have_stdatomic=no
ISC_PLATFORM_HAVESTDATOMIC="#undef ISC_PLATFORM_HAVESTDATOMIC"])
+# [pairwise: --enable-atomic, --disable-atomic]
AC_ARG_ENABLE(atomic,
AS_HELP_STRING([--enable-atomic],
[enable machine specific atomic operations [default=autodetect]]),
@@ -4143,7 +4199,7 @@ if test "yes" = "$use_atomic"; then
alpha*-*)
arch=alpha
;;
- powerpc-*|powerpc64-*)
+ powerpc-*|powerpc64*-*|powerpc64el-*)
arch=powerpc
;;
mips-*|mipsel-*|mips64-*|mips64el-*)
@@ -4370,6 +4426,7 @@ AC_SUBST(ISC_PLATFORM_BUSYWAITNOP)
#
# Activate "rrset-order fixed" or not?
#
+# [pairwise: --enable-fixed-rrset, --disable-fixed-rrset]
AC_ARG_ENABLE(fixed-rrset,
AS_HELP_STRING([--enable-fixed-rrset],
[enable fixed rrset ordering [default=no]]),
@@ -4388,6 +4445,7 @@ esac
#
# Enable response policy rewriting using NS IP addresses
#
+# [pairwise: --enable-rpz-nsip, --disable-rpz-nsip]
AC_ARG_ENABLE(rpz-nsip,
AS_HELP_STRING([--disable-rpz-nsip],
[disable rpz nsip rules [default=enabled]]),
@@ -4406,6 +4464,7 @@ esac
#
# Enable response policy rewriting using NS name
#
+# [pairwise: --enable-rpz-nsdname, --disable-rpz-nsdname]
AC_ARG_ENABLE(rpz-nsdname,
AS_HELP_STRING([--disable-rpz-nsdname],
[disable rpz nsdname rules [default=enabled]]),
@@ -4424,6 +4483,7 @@ esac
#
# Activate "filter-aaaa-on-v4/v6" or not?
#
+# [pairwise: --enable-filter-aaaa, --disable-filter-aaaa]
AC_ARG_ENABLE(filter-aaaa,
[ --enable-filter-aaaa enable filtering of AAAA records [[default=no]]],
enable_filter="$enableval",
@@ -4442,6 +4502,7 @@ esac
#
# Activate dnstap?
#
+# [pairwise: --enable-dnstap, --disable-dnstap]
AC_ARG_ENABLE(dnstap,
AS_HELP_STRING([--enable-dnstap],
[enable dnstap support
@@ -4456,6 +4517,8 @@ if test "x$use_dnstap" != "xno"; then
if ! $use_threads; then
AC_MSG_ERROR([Dnstap requires threads.])
fi
+
+ # [pairwise: skip]
AC_ARG_WITH([protobuf-c],
AS_HELP_STRING([--with-protobuf-c=path],
[Path where protobuf-c is installed,
@@ -4489,6 +4552,8 @@ if test "x$use_dnstap" != "xno"; then
if test -z "$PROTOC_C"; then
AC_MSG_ERROR([The protoc-c program was not found.])
fi
+
+ # [pairwise: skip]
AC_ARG_WITH([libfstrm], AS_HELP_STRING([--with-libfstrm=path],
[Path where libfstrm is installed, for dnstap]), [
CFLAGS="$CFLAGS -I$withval/include"
@@ -4642,6 +4707,8 @@ AC_SUBST($1)
# of at the moment).
#
AC_MSG_CHECKING(for Docbook-XSL path)
+
+# [pairwise: skip]
AC_ARG_WITH(docbook-xsl,
AS_HELP_STRING([--with-docbook-xsl[=PATH]],
[specify path for Docbook-XSL stylesheets]),
@@ -4674,6 +4741,10 @@ NOM_PATH_FILE(XSLT_DOCBOOK_MAKETOC_XHTML, xhtml/maketoc.xsl, $docbook_xsl_trees)
#
# IDN support using idnkit
#
+# idnkit is not included in pairwise testing as it is not present in the
+# relevant Docker image.
+#
+# [pairwise: skip]
AC_ARG_WITH(idnkit,
AS_HELP_STRING([--with-idnkit[=PATH]],
[enable IDN support using idnkit [yes|no|path]]),
@@ -4695,6 +4766,8 @@ esac
iconvinc=
iconvlib=
+
+# [pairwise: --with-libiconv, --without-libiconv]
AC_ARG_WITH(libiconv,
AS_HELP_STRING([--with-libiconv[=IPREFIX]],
[GNU libiconv are in IPREFIX [default PREFIX]]),
@@ -4715,6 +4788,7 @@ no)
;;
esac
+# [pairwise: --with-iconv, --without-iconv]
AC_ARG_WITH(iconv,
AS_HELP_STRING([--with-iconv[=LIBSPEC]],
[specify iconv library [default -liconv]]),
@@ -4728,6 +4802,7 @@ yes)
;;
esac
+# [pairwise: skip]
AC_ARG_WITH(idnlib,
AS_HELP_STRING([--with-idnlib=ARG], [specify libidnkit]),
idnlib="$withval", idnlib="no")
@@ -4754,6 +4829,8 @@ AC_SUBST(IDNKIT_LIBS)
LIBIDN2_CFLAGS=
LIBIDN2_LDFLAGS=
LIBIDN2_LIBS=
+
+# [pairwise: --with-libidn2=yes, --without-libidn2]
AC_ARG_WITH(libidn2,
AS_HELP_STRING([--with-libidn2[=PATH]], [enable IDN support using GNU libidn2 [yes|no|path]]),
use_libidn2="$withval", use_libidn2="no")
@@ -4807,7 +4884,7 @@ fi
#
# Check whether to build with cmocka unit testing framework
#
-
+# [pairwise: --with-cmocka, --without-cmocka]
AC_ARG_WITH([cmocka],
[AS_HELP_STRING([--with-cmocka=no],[enable cmocka based tests (default is no)])],
[:],[with_cmocka=no])
@@ -4817,7 +4894,6 @@ AS_CASE([$with_cmocka],
[yes],[
PKG_CHECK_MODULES([CMOCKA], [cmocka >= 1.0.0],
[AC_DEFINE([HAVE_CMOCKA], [1], [Use cmocka])])
- UNITTESTS=tests
],
[*],[
save_CFLAGS="$CFLAGS"
@@ -4836,14 +4912,12 @@ AS_CASE([$with_cmocka],
[
CMOCKA_CFLAGS="-Iwith_cmocka/include"
CMOCKA_LIBS="-L$with_cmocka/lib -lcmocka"
- UNITTESTS=tests
AC_DEFINE([HAVE_CMOCKA], [1], [Use cmocka])
],
[AC_MSG_ERROR([cmocka unit testing framework not found in $with_cmocka path])])
])
AC_SUBST([CMOCKA_CFLAGS])
AC_SUBST([CMOCKA_LIBS])
-AC_SUBST(UNITTESTS)
#
# Check for kyua execution engine if CMocka was requested
@@ -4853,9 +4927,10 @@ AC_ARG_VAR([KYUA], [path to kyua execution engine])
AS_IF([test "$with_cmocka" != "no"],
[AC_PATH_PROGS([KYUA], [kyua], [])
AS_IF([test -z "$KYUA"],
- [AC_MSG_WARN([kyua test execution engine not found])])])
-
+ [AC_MSG_WARN([kyua test execution engine not found])],
+ [UNITTESTS=tests])])
AC_SUBST([KYUA])
+AC_SUBST([UNITTESTS])
#
# Check for -Wl,--wrap= support
@@ -4888,6 +4963,7 @@ AC_CHECK_FUNCS(setlocale)
#
# was --with-tuning specified?
#
+# [pairwise: --with-tuning=large, --without-tuning]
AC_ARG_WITH(tuning,
AS_HELP_STRING([--with-tuning=ARG],
[Specify server tuning (large or default)]),
@@ -4912,6 +4988,7 @@ esac
#
# was --enable-querytrace specified?
#
+# [pairwise: --enable-querytrace, --disable-querytrace]
AC_ARG_ENABLE(querytrace,
AS_HELP_STRING([--enable-querytrace],
[enable very verbose query trace logging
@@ -5064,6 +5141,7 @@ SO_LD=""
SO_TARGETS=""
SO_STRIP="cat"
+# [pairwise: skip]
AC_ARG_WITH([dlopen],
AS_HELP_STRING([--with-dlopen=ARG],
[support dynamically loadable DLZ drivers]),
@@ -5084,7 +5162,8 @@ AS_IF([test "$pic_mode" = "no"],
AS_CASE([$with_dlopen],
[auto|yes],[
- AC_SEARCH_LIBS([dlopen],[dl])
+ # -fsanitize=thread hijacks dlopen and dlclose so use dlsym.
+ AC_SEARCH_LIBS([dlsym],[dl])
AC_CHECK_FUNCS([dlopen dlclose dlsym],
[with_dlopen="yes"],
[with_dlopen="no"])
@@ -5157,6 +5236,9 @@ AS_IF([test "$with_dlopen" = "yes"],
])
])
+AS_IF([test "$with_dlopen" = "no" -a "$want_native_pkcs11" = "yes"],
+ [AC_MSG_ERROR([PKCS11 requires dlopen() support])])
+
CFLAGS="$CFLAGS $SO_CFLAGS"
AC_SUBST(SO)
@@ -5345,8 +5427,6 @@ AC_CONFIG_COMMANDS(
#
AC_CONFIG_FILES([
- make/Makefile
- make/mkdep
Makefile
bin/Makefile
bin/check/Makefile
@@ -5360,12 +5440,10 @@ AC_CONFIG_FILES([
bin/nsupdate/Makefile
bin/pkcs11/Makefile
bin/python/Makefile
- bin/python/isc/Makefile
- bin/python/isc/utils.py
- bin/python/isc/tests/Makefile
bin/python/dnssec-checkds.py
bin/python/dnssec-coverage.py
bin/python/dnssec-keymgr.py
+ bin/python/isc/Makefile
bin/python/isc/__init__.py
bin/python/isc/checkds.py
bin/python/isc/coverage.py
@@ -5378,8 +5456,10 @@ AC_CONFIG_FILES([
bin/python/isc/keyzone.py
bin/python/isc/policy.py
bin/python/isc/rndc.py
+ bin/python/isc/tests/Makefile
bin/python/isc/tests/dnskey_test.py
bin/python/isc/tests/policy_test.py
+ bin/python/isc/utils.py
bin/rndc/Makefile
bin/tests/Makefile
bin/tests/headerdep_test.sh
@@ -5447,8 +5527,8 @@ AC_CONFIG_FILES([
lib/isc/include/isc/platform.h
lib/isc/include/pk11/Makefile
lib/isc/include/pkcs11/Makefile
- lib/isc/tests/Makefile
lib/isc/nls/Makefile
+ lib/isc/tests/Makefile
lib/isc/unix/Makefile
lib/isc/unix/include/Makefile
lib/isc/unix/include/isc/Makefile
@@ -5473,7 +5553,10 @@ AC_CONFIG_FILES([
lib/lwres/unix/include/lwres/Makefile
lib/samples/Makefile
lib/samples/Makefile-postinstall
+ make/Makefile
+ make/mkdep
unit/unittest.sh
+ util/check-make-install
])
#
@@ -5485,6 +5568,7 @@ AC_OUTPUT
#
# Now that the Makefiles exist we can ensure that everything is rebuilt.
#
+# [pairwise: --with-make-clean, --without-make-clean]
AC_ARG_WITH(make-clean,
AS_HELP_STRING([--with-make-clean],
[run "make clean" at end of configure [yes|no]]),
@@ -5503,6 +5587,7 @@ yes)
;;
esac
+# [pairwise: --enable-full-report, --disable-full-report]
AC_ARG_ENABLE(full-report,
AS_HELP_STRING([--enable-full-report],
[report values of all configure options]))
@@ -5643,8 +5728,17 @@ report() {
echo " localstatedir: $localstatedir"
echo "-------------------------------------------------------------------------------"
echo "Compiler: $CC"
- $CC --version 2>&1 | sed 's/^/ /'
-
+ if test "yes" = "$GCC"; then
+ $CC --version 2>&1 | sed 's/^/ /'
+ else
+ case "$host_os" in
+ solaris*)
+ $CC -V 2>&1 | sed 's/^/ /'
+ ;;
+ *)
+ $CC --version 2>&1 | sed 's/^/ /'
+ esac
+ fi
if test "X$ac_unrecognized_opts" != "X"; then
echo "Unrecognized options:"
echo " $ac_unrecognized_opts"