aboutsummaryrefslogtreecommitdiff
path: root/configure.in
diff options
context:
space:
mode:
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in132
1 files changed, 117 insertions, 15 deletions
diff --git a/configure.in b/configure.in
index 8db8dde7664e..2611c712befa 100644
--- a/configure.in
+++ b/configure.in
@@ -1,4 +1,4 @@
-# Copyright (C) 2004-2013 Internet Systems Consortium, Inc. ("ISC")
+# Copyright (C) 2004-2014 Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) 1998-2003 Internet Software Consortium.
#
# Permission to use, copy, modify, and/or distribute this software for any
@@ -15,7 +15,7 @@
dnl
AC_DIVERT_PUSH(1)dnl
-esyscmd([sed "s/^/# /" COPYRIGHT])dnl
+esyscmd([sed -e 's/^/# /' -e '/Portions of this code/,$d' COPYRIGHT])dnl
AC_DIVERT_POP()dnl
AC_REVISION($Revision: 1.512.8.15 $)
@@ -50,6 +50,7 @@ AC_SUBST(STD_CINCLUDES)
AC_SUBST(STD_CDEFINES)
AC_SUBST(STD_CWARNINGS)
AC_SUBST(CCOPT)
+AC_SUBST(CCNOOPT)
# Warn if the user specified libbind, which is now deprecated
AC_ARG_ENABLE(libbind, [ --enable-libbind deprecated])
@@ -79,6 +80,7 @@ yes)
test "${enable_exportlib+set}" = set || enable_exportlib=yes
;;
esac
+ test "${enable_symtable+set}" = set || enable_symtable=all
;;
esac
#
@@ -296,6 +298,13 @@ case "$host" in
;;
esac
+#
+# CCNOOPT defaults to -O0 on gcc and disables optimization when is last
+#
+if test "X$CCNOOPT" = "X" -a "X$GCC" = "Xyes"; then
+ CCNOOPT="-O0"
+fi
+
AC_HEADER_STDC
AC_CHECK_HEADERS(fcntl.h regex.h sys/time.h unistd.h sys/sockio.h sys/select.h sys/param.h sys/sysctl.h net/if6.h,,,
@@ -1004,6 +1013,7 @@ case "$use_gssapi" in
"-lgssapi" \
"-lgssapi -lkrb5 -ldes -lcrypt -lasn1 -lroken -lcom_err" \
"-lgssapi -lkrb5 -lcrypto -lcrypt -lasn1 -lroken -lcom_err" \
+ "-lgssapi -lkrb5 -lhx509 -lcrypto -lcrypt -lasn1 -lroken -lcom_err" \
"-lgss -lkrb5"
do
# Note that this does not include $saved_libs, because
@@ -1149,11 +1159,13 @@ then
*-freebsd*)
CC="$CC -pthread"
CCOPT="$CCOPT -pthread"
+ CCNOOPT="$CCNOOPT -pthread"
STD_CDEFINES="$STD_CDEFINES -D_THREAD_SAFE"
;;
*-openbsd*)
CC="$CC -pthread"
CCOPT="$CCOPT -pthread"
+ CCNOOPT="$CCNOOPT -pthread"
;;
*-solaris*)
LIBS="$LIBS -lthread"
@@ -1167,10 +1179,12 @@ then
*-dec-osf*)
CC="$CC -pthread"
CCOPT="$CCOPT -pthread"
+ CCNOOPT="$CCNOOPT -pthread"
;;
*-solaris*)
CC="$CC -mt"
CCOPT="$CCOPT -mt"
+ CCNOOPT="$CCNOOPT -mt"
;;
*-ibm-aix*)
STD_CDEFINES="$STD_CDEFINES -D_THREAD_SAFE"
@@ -1178,10 +1192,12 @@ then
*-sco-sysv*uw*|*-*-sysv*UnixWare*)
CC="$CC -Kthread"
CCOPT="$CCOPT -Kthread"
+ CCNOOPT="$CCNOOPT -Kthread"
;;
*-*-sysv*OpenUNIX*)
CC="$CC -Kpthread"
CCOPT="$CCOPT -Kpthread"
+ CCNOOPT="$CCNOOPT -Kpthread"
;;
esac
fi
@@ -1391,6 +1407,7 @@ else
*-dec-osf*)
CC="$CC -std"
CCOPT="$CCOPT -std"
+ CCNOOPT="$CCNOOPT -std"
MKDEPCC="$CC"
;;
*-hp-hpux*)
@@ -1409,6 +1426,7 @@ else
;;
esac
CCOPT="$CCOPT -Ae -z"
+ CCNOOPT="$CCNOOPT -Ae -z"
LDFLAGS="-Wl,+vnocompatwarnings $LDFLAGS"
MKDEPPROG='cc -Ae -E -Wp,-M >/dev/null 2>>$TMP'
;;
@@ -2408,7 +2426,13 @@ AC_ARG_ENABLE(linux-caps,
[ --disable-linux-caps disable linux capabilities])
case "$enable_linux_caps" in
yes|'')
- AC_CHECK_HEADERS(linux/capability.h sys/capability.h)
+ AC_CHECK_HEADERS(linux/types.h)
+ AC_CHECK_HEADERS([sys/capability.h])
+ AC_CHECK_HEADERS([linux/capability.h], [], [],
+ [#ifdef HAVE_LINUX_TYPES_H
+ #include <linux/types.h>
+ #endif
+ ])
AC_CHECK_LIB(cap, cap_set_proc)
;;
no)
@@ -3180,7 +3204,7 @@ if test "$atf" = yes; then
/*) ;;
*) srcdir="../../$srcdir";;
esac
- ${SHELL} ${srcdir}${srcdir:+/unit/atf-src/}./configure MISSING=: --prefix $atfdir;
+ ${SHELL} "${srcdir}${srcdir:+/unit/atf-src/}./configure" --enable-tools --disable-shared MISSING=: --prefix $atfdir;
) ],
[atfdir=`pwd`/unit/atf])
AC_MSG_RESULT(building ATF from bind9/unit/atf-src)
@@ -3238,19 +3262,22 @@ BIND9_MAKE_INCLUDES=$BIND9_TOP_BUILDDIR/make/includes
AC_SUBST_FILE(BIND9_MAKE_RULES)
BIND9_MAKE_RULES=$BIND9_TOP_BUILDDIR/make/rules
-. $srcdir/version
+. "$srcdir/version"
BIND9_PRODUCT="PRODUCT=\"${PRODUCT}\""
AC_SUBST(BIND9_PRODUCT)
BIND9_DESCRIPTION="DESCRIPTION=\"${DESCRIPTION}\""
AC_SUBST(BIND9_DESCRIPTION)
-BIND9_VERSION="VERSION=${MAJORVER}.${MINORVER}${PATCHVER:+.}${PATCHVER}${RELEASETYPE}${RELEASEVER}"
+BIND9_VERSION="VERSION=${MAJORVER}.${MINORVER}${PATCHVER:+.}${PATCHVER}${RELEASETYPE}${RELEASEVER}${EXTENSIONS}"
AC_SUBST(BIND9_VERSION)
BIND9_SRCID="SRCID=unset"
-if test -f $srcdir/srcid; then
- . $srcdir/srcid
+if test -f "${srcdir}/srcid"; then
+ . "${srcdir}/srcid"
BIND9_SRCID="SRCID=$SRCID"
+elif test -d "${srcdir}/.git"; then
+ BIND9_SRCID="SRCID="`(cd "${srcdir}";git log -n 1 --format=%h)`
fi
+
AC_SUBST(BIND9_SRCID)
if test -z "$ac_configure_args"; then
@@ -3266,25 +3293,25 @@ BIND9_CONFIGARGS="CONFIGARGS=${BIND9_CONFIGARGS}"
AC_SUBST(BIND9_CONFIGARGS)
AC_SUBST_FILE(LIBISC_API)
-LIBISC_API=$srcdir/lib/isc/api
+LIBISC_API="$srcdir/lib/isc/api"
AC_SUBST_FILE(LIBISCCC_API)
-LIBISCCC_API=$srcdir/lib/isccc/api
+LIBISCCC_API="$srcdir/lib/isccc/api"
AC_SUBST_FILE(LIBISCCFG_API)
-LIBISCCFG_API=$srcdir/lib/isccfg/api
+LIBISCCFG_API="$srcdir/lib/isccfg/api"
AC_SUBST_FILE(LIBDNS_API)
-LIBDNS_API=$srcdir/lib/dns/api
+LIBDNS_API="$srcdir/lib/dns/api"
AC_SUBST_FILE(LIBBIND9_API)
-LIBBIND9_API=$srcdir/lib/bind9/api
+LIBBIND9_API="$srcdir/lib/bind9/api"
AC_SUBST_FILE(LIBLWRES_API)
-LIBLWRES_API=$srcdir/lib/lwres/api
+LIBLWRES_API="$srcdir/lib/lwres/api"
AC_SUBST_FILE(LIBIRS_API)
-LIBIRS_API=$srcdir/lib/irs/api
+LIBIRS_API="$srcdir/lib/irs/api"
#
# Configure any DLZ drivers.
@@ -3697,6 +3724,81 @@ yes)
;;
esac
+AC_ARG_ENABLE(full-report,
+ [ --enable-full-report report values of all configure options])
+
+echo "========================================================================"
+echo "Configuration summary:"
+echo "------------------------------------------------------------------------"
+echo "Optional features enabled:"
+$use_threads && echo " Multiprocessing support (--enable-threads)"
+
+test "$use_gssapi" = "no" || echo " GSS-API (--with-gssapi)"
+test "$use_pkcs11" = "no" || echo " PKCS#11/Cryptoki support (--with-pkcs11)"
+test "$enable_fixed" = "yes" && \
+ echo " Allow 'fixed' rrset-order (--enable-fixed-rrset)"
+test "$enable_filter" = "yes" && \
+ echo " AAAA filtering (--enable-filter-aaaa)"
+test "$want_backtrace" = "yes" && \
+ echo " Print backtrace on crash (--enable-backtrace)"
+test "$want_symtable" = "minimal" && \
+ echo " Use symbol table for backtrace, named only (--enable-symtable)"
+test "$want_symtable" = "yes" -o "$want_symtable" = "all" && \
+ echo " Use symbol table for backtrace, all binaries (--enable-symtable=all)"
+test "$atf" = "no" || echo " Automated Testing Framework (--with-atf)"
+
+# these lines are only printed if run with --enable-full-report
+if test "$enable_full_report" = "yes"; then
+ test "$enable_ipv6" = "no" -o "$found_ipv6" = "no" || \
+ echo " IPv6 support (--enable-ipv6)"
+ test "X$USE_OPENSSL" = "X" || \
+ echo " OpenSSL cryptography/DNSSEC (--with-openssl)"
+ test "$OPENSSL_GOST" != "yes" || \
+ echo " GOST algorithm support (--with-gost)"
+ test "$OPENSSL_ECDSA" != "yes" || \
+ echo " ECDSA algorithm support (--with-ecdsa)"
+ test "X$libxml2_libs" = "X" || echo " XML statistics (--with-libxml2)"
+fi
+
+echo " Dynamically loadable zone (DLZ) drivers:"
+test "$use_dlz_bdb" = "no" || \
+ echo " Berkeley DB (--with-dlz-bdb)"
+test "$use_dlz_ldap" = "no" || \
+ echo " LDAP (--with-dlz-ldap)"
+test "$use_dlz_mysql" = "no" || \
+ echo " MySQL (--with-dlz-mysql)"
+test "$use_dlz_odbc" = "no" || \
+ echo " ODBC (--with-dlz-bdb)"
+test "$use_dlz_postgres" = "no" || \
+ echo " Postgres (--with-dlz-postgres)"
+test "$use_dlz_filesystem" = "no" || \
+ echo " Filesystem (--with-dlz-filesystem)"
+test "$use_dlz_stub" = "no" || \
+ echo " Stub (--with-dlz-stub)"
+test "$use_dlz_bdb $use_dlz_ldap $use_dlz_mysql $use_dlz_odbc $use_dlz_postgres $use_dlz_filesystem $use_dlz_stub" = "no no no no no no no" && echo " None"
+echo
+
+echo "Features disabled or unavailable on this platform:"
+$use_threads || echo " Multiprocessing support (--enable-threads)"
+test "$enable_ipv6" = "no" -o "$found_ipv6" = "no" && \
+ echo " IPv6 support (--enable-ipv6)"
+test "$use_gssapi" = "no" && echo " GSS-API (--with-gssapi)"
+test "$use_pkcs11" = "no" && echo " PKCS#11/Cryptoki support (--with-pkcs11)"
+test "$enable_fixed" = "yes" || \
+ echo " Allow 'fixed' rrset-order (--enable-fixed-rrset)"
+test "$want_backtrace" = "yes" || \
+ echo " Print backtrace on crash (--enable-backtrace)"
+test "$atf" = "no" && echo " Automated Testing Framework (--with-atf)"
+test "X$USE_OPENSSL" = "X" && \
+ echo " OpenSSL cryptography/DNSSEC (--with-openssl)"
+test "X$USE_OPENSSL" != "X" -a "$OPENSSL_GOST" != "yes" && \
+ echo " GOST algorithm support (--with-gost)"
+test "X$USE_OPENSSL" != "X" -a "$OPENSSL_ECDSA" != "yes" && \
+ echo " ECDSA algorithm support (--with-ecdsa)"
+test "X$libxml2_libs" = "X" && echo " XML statistics (--with-libxml2)"
+
+echo "========================================================================"
+
if test "X$USE_OPENSSL" = "X"; then
cat << \EOF
BIND is being built without OpenSSL. This means it will not have DNSSEC support.