configure.ac 24 KB
Newer Older
1 2 3
#                                               -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.

4
AC_PREREQ([2.59])
5
AC_INIT(bind10-devel, 20101201, bind10-dev@isc.org)
6 7 8 9 10 11
AC_CONFIG_SRCDIR(README)
AM_INIT_AUTOMAKE
AC_CONFIG_HEADERS([config.h])

# Checks for programs.
AC_PROG_CXX
12 13
AC_PROG_LIBTOOL

14
# Use C++ language
15 16 17
AC_LANG([C++])

# Identify the compiler: this check must be after AC_PROG_CXX and AC_LANG.
18
AM_CONDITIONAL(USE_GXX, test "X${GXX}" = "Xyes")
19
AC_CHECK_DECL([__SUNPRO_CC], [SUNCXX="yes"], [SUNCXX="no"])
20 21
AC_CHECK_DECL([__clang__], [CLANGPP="yes"], [CLANGPP="no"])
AM_CONDITIONAL(USE_CLANGPP, test "X${CLANGPP}" = "Xyes")
22

23 24 25 26 27 28 29 30 31 32 33 34 35 36
# Linker options

# check -R rather than gcc specific -rpath to be as portable as possible.
AC_MSG_CHECKING([whether -R flag is available in linker])
LDFLAGS_SAVED="$LDFLAGS"
LDFLAGS="$LDFLAGS -R/usr/lib"
AC_TRY_LINK([],[],
	[ AC_MSG_RESULT(yes)
		rpath_available=yes
	],[ AC_MSG_RESULT(no)
	rpath_available=no
	])
LDFLAGS=$LDFLAGS_SAVED

JINMEI Tatuya's avatar
JINMEI Tatuya committed
37 38 39 40 41 42 43 44
# allow building programs with static link.  we need to make it selective
# because loadable modules cannot be statically linked.
AC_ARG_ENABLE([static-link],
AC_HELP_STRING([--enable-static-link],
  [build programs with static link [[default=no]]]),
  [enable_static_link=yes], [enable_static_link=no])
AM_CONDITIONAL(USE_STATIC_LINK, test $enable_static_link = yes)

JINMEI Tatuya's avatar
JINMEI Tatuya committed
45 46 47 48 49 50 51 52
# Check validity about some libtool options
if test $enable_static_link = yes -a $enable_static = no; then
	AC_MSG_ERROR([--enable-static-link requires --enable-static])
fi
if test $enable_shared = no; then
	AC_MSG_ERROR([BIND 10 requires shared libraries to be built])
fi

Michal Vaner's avatar
Michal Vaner committed
53 54 55 56 57 58
# allow configuring without setproctitle.
AC_ARG_ENABLE(setproctitle-check,
AC_HELP_STRING([--disable-setproctitle-check],
  [do not check for python setproctitle module (used to give nice names to python processes)]),
  setproctitle_check=$enableval, setproctitle_check=yes)

59 60 61 62
# OS dependent configuration
SET_ENV_LIBRARY_PATH=no
ENV_LIBRARY_PATH=LD_LIBRARY_PATH

63
case "$host" in
64 65 66 67 68
*-solaris*)
	# Solaris requires special definitions to get some standard libraries
	# (e.g. getopt(3)) available with common used header files.
	CPPFLAGS="$CPPFLAGS -D_XPG4_2 -D__EXTENSIONS__"
	;;
69 70 71 72 73 74 75 76 77 78
*-apple-darwin*)
	# libtool doesn't work pefectly with Darwin: libtool embeds the
	# final install path in dynamic libraries and our loadable python
	# modules always refer to that path even if it's loaded within the
	# source tree.  This prevents pre-install tests from working.
	# To work around this problem we explicitly specify paths to dynamic
	# libraries when we use them in the source tree.
	SET_ENV_LIBRARY_PATH=yes
	ENV_LIBRARY_PATH=DYLD_LIBRARY_PATH
	;;
79
esac
80 81 82
AM_CONDITIONAL(SET_ENV_LIBRARY_PATH, test $SET_ENV_LIBRARY_PATH = yes)
AC_SUBST(SET_ENV_LIBRARY_PATH)
AC_SUBST(ENV_LIBRARY_PATH)
83

84
m4_define([_AM_PYTHON_INTERPRETER_LIST], [python python3 python3.1])
85 86
AC_ARG_WITH([pythonpath],
AC_HELP_STRING([--with-pythonpath=PATH],
87
  [specify an absolute path to python executable when automatic version check (incorrectly) fails]),
88 89 90 91
  [python_path="$withval"], [python_path="auto"])
if test "$python_path" = auto; then
	AM_PATH_PYTHON([3.1])
else
92 93
	# Older versions of automake can't handle python3 well.  This is an
	# in-house workaround for them.
94 95
	PYTHON=$python_path
	AC_SUBST(PYTHON)
96 97 98 99
	PYTHON_PREFIX='${prefix}'
	AC_SUBST(PYTHON_PREFIX)
	PYTHON_EXEC_PREFIX='$(exec_prefix)'
	AC_SUBST(PYTHON_EXEC_PREFIX)
100 101 102 103
	PYTHON_VERSION=[`$PYTHON -c "import sys; sys.stdout.write(sys.version[:3])"`]
	if test `echo "$PYTHON_VERSION >= 3.1" | bc` != 1 ; then
		AC_MSG_ERROR(["Python version too old: $PYTHON_VERSION, need 3.1 or higher"])
	fi
104 105
	AC_SUBST(PYTHON_VERSION)
	PYTHON_PLATFORM=`$PYTHON -c "import sys; print(sys.platform)"`
106
	AC_SUBST(PYTHON_PLATFORM)
107
	pythondir='${prefix}/lib/python'$PYTHON_VERSION'/site-packages'
108
	AC_SUBST(pythondir)
109
	pkgpythondir='${pythondir}/'$PACKAGE
110
	AC_SUBST(pkgpythondir)
111
	pyexecdir='${exec_prefix}/lib/python'$PYTHON_VERSION'/site-packages'
112
	AC_SUBST(pyexecdir)
113
	pkgpyexecdir='${pyexecdir}/'$PACKAGE
114
	AC_SUBST(pkgpyexecdir)
115
fi
116

117 118 119
# Check for python development environments
if test -x ${PYTHON}-config; then
	PYTHON_INCLUDES=`${PYTHON}-config --includes`
120

121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137
	for flag in `${PYTHON}-config --ldflags`; do
		# add any '-L..." flags to PYTHON_LDFLAGS
		flag=`echo $flag | sed -ne 's/^\(\-L.*\)$/\1/p'`
		if test "X${flag}" != X; then
			PYTHON_LDFLAGS="$PYTHON_LDFLAGS ${flag}"
		fi
	done
	# on some platforms, ${PYTHON}-config --ldflags doesn't provide a -L
	# option while having the library under a non trivial directory.
	# as a workaround we try the "lib" sub directory under the common
	# prefix for this python.
	if test -z "${PYTHON_LDFLAGS}"; then
		PYTHON_LDFLAGS="-L`${PYTHON}-config --prefix`/lib"
	fi
else
	if test "X$PYTHON_INCLUDES" = X -o "X$PYTHON_LDFLAGS" = X; then
		AC_MSG_WARN([${PYTHON}-config does not exist or is not executable, so we could not detect python development environment.  Your system may require an additional package (e.g. "python3-dev").  Alternatively, if you are sure you have python headers and libraries, define PYTHON_INCLUDES and PYTHON_LDFLAGS and run this script.])
138 139
	fi
fi
140

141 142 143 144
# Some OSes including NetBSD don't install libpython.so in a well known path.
# To avoid requiring dynamic library path with our python wrapper loadable
# modules, we embed the path to the modules when possible.  We do this even
# when the path is known in the common operational environment (e.g. when
Jeremy C. Reed's avatar
Jeremy C. Reed committed
145
# it's stored in a common "hint" file) for simplicity.
146 147 148
if test $rpath_available = yes; then
	python_rpath=
	for flag in ${PYTHON_LDFLAGS}; do
149
		python_rpath="${python_rpath} `echo $flag | sed -ne 's/^\(\-L\)/-R/p'`"
150 151 152 153
	done
	PYTHON_LDFLAGS="${PYTHON_LDFLAGS} ${python_rpath}"
fi

154 155 156
AC_SUBST(PYTHON_INCLUDES)
AC_SUBST(PYTHON_LDFLAGS)

157 158 159 160 161
CPPFLAGS_SAVED="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS ${PYTHON_INCLUDES}"
AC_CHECK_HEADERS([Python.h],, AC_MSG_ERROR([Missing Python.h]))
CPPFLAGS="$CPPFLAGS_SAVED"

162
# Check for python library.  Needed for Python-wrapper libraries.
163 164 165 166 167 168 169 170
LDFLAGS_SAVED="$LDFLAGS"
LDFLAGS="$LDFLAGS $PYTHON_LDFLAGS"
python_bin="python${PYTHON_VERSION}"
AC_CHECK_LIB($python_bin, main, python_lib=$python_bin, python_lib=no)
if test $python_lib != "no"; then
	PYTHON_LIB="-l$python_lib"
fi
AC_SUBST(PYTHON_LIB)
171
LDFLAGS=$LDFLAGS_SAVED
172

Michal Vaner's avatar
Michal Vaner committed
173 174 175 176 177 178 179 180 181 182 183 184
# Check for the setproctitle module
if test "$setproctitle_check" = "yes" ; then
    AC_MSG_CHECKING(for setproctitle module)
    if "$PYTHON" -c 'import setproctitle' 2>/dev/null ; then
        AC_MSG_RESULT(ok)
    else
        AC_MSG_RESULT(missing)
        AC_MSG_ERROR([Missing setproctitle module. Either install it or provide --disable-setproctitle-check.
In that case we will continue, but naming of python processes will not work.])
    fi
fi

185 186
# TODO: check for _sqlite3.py module

187 188
# Compiler dependent settings: define some mandatory CXXFLAGS here.
# We also use a separate variable B10_CXXFLAGS.  This will (and should) be
189 190 191 192 193 194 195 196 197
# used as the default value for each specifc AM_CXXFLAGS:
# AM_CXXFLAGS = $(B10_CXXFLAGS)
# AM_CXXFLAGS += ... # add module specific flags
# We need this so that we can disable some specific compiler warnings per
# module basis; since AM_CXXFLAGS are placed before CXXFLAGS, and since
# gcc's -Wno-XXX option must be specified after -Wall or -Wextra, we cannot
# specify the default warning flags in CXXFLAGS and let specific modules
# "override" the default.

198
werror_ok=0
199 200 201 202 203 204 205 206

# SunStudio compiler requires special compiler options for boost
# (http://blogs.sun.com/sga/entry/boost_mini_howto)
if test "$SUNCXX" = "yes"; then
CXXFLAGS="$CXXFLAGS -library=stlport4 -features=tmplife -features=tmplrefstatic"
fi

# gcc specific settings:
207 208
if test "X$GXX" = "Xyes"; then
B10_CXXFLAGS="-Wall -Wextra -Wwrite-strings -Woverloaded-virtual -Wno-sign-compare"
209 210 211 212 213

# Certain versions of gcc (g++) have a bug that incorrectly warns about
# the use of anonymous name spaces even if they're closed in a single
# translation unit.  For these versions we have to disable -Werror.
CXXFLAGS_SAVED="$CXXFLAGS"
214
CXXFLAGS="$CXXFLAGS $B10_CXXFLAGS -Werror"
215 216 217 218
AC_MSG_CHECKING(for in-TU anonymous namespace breakage)
AC_TRY_COMPILE([namespace { class Foo {}; }
namespace isc {class Bar {Foo foo_;};} ],,
	[AC_MSG_RESULT(no)
219 220
	 werror_ok=1
	 B10_CXXFLAGS="$B10_CXXFLAGS -Werror"],
221 222
	[AC_MSG_RESULT(yes)])
CXXFLAGS="$CXXFLAGS_SAVED"
223

224
fi				dnl GXX = yes
225

226
AM_CONDITIONAL(GCC_WERROR_OK, test $werror_ok = 1)
227 228

# produce PIC unless we disable shared libraries. need this for python bindings.
229
if test $enable_shared != "no" -a "X$GXX" = "Xyes"; then
230
   B10_CXXFLAGS="$B10_CXXFLAGS -fPIC"
231 232
fi

233 234
AC_SUBST(B10_CXXFLAGS)

235 236
# Checks for libraries.

237 238 239
AC_SEARCH_LIBS(inet_pton, [nsl])
AC_SEARCH_LIBS(recvfrom, [socket])

240 241 242 243 244 245
# Checks for header files.

# Checks for typedefs, structures, and compiler characteristics.
AC_HEADER_STDBOOL
AC_TYPE_SIZE_T

246 247


248 249 250 251 252 253
AC_MSG_CHECKING(for sa_len in struct sockaddr)
AC_TRY_COMPILE([
#include <sys/types.h>
#include <sys/socket.h>],
[struct sockaddr sa; sa.sa_len = 0; return (0);],
        [AC_MSG_RESULT(yes)
254
        AC_DEFINE(HAVE_SA_LEN, 1, [Define to 1 if sockaddr has a sa_len member, and corresponding sin_len and sun_len])],
255 256
        AC_MSG_RESULT(no))

257
AC_ARG_WITH(lcov,
258
[  --with-lcov[=PROGRAM]         enable gtest and coverage target using the specified lcov], lcov="$withval", lcov="no")
259

260
AC_ARG_WITH(gtest,
261
[  --with-gtest=PATH       specify a path to gtest header files (PATH/include) and library (PATH/lib)],
262
    gtest_path="$withval", gtest_path="no")
263 264 265 266 267

USE_LCOV="no"
if test "$lcov" != "no"; then
	# force gtest if not set
	if test "$gtest_path" = "no"; then
268 269
#		AC_MSG_ERROR("lcov needs gtest for test coverage report")
		AC_MSG_NOTICE([gtest support is now enabled, because used by coverage tests])
270 271 272
		gtest_path="yes"
	fi
	if test "$lcov" != "yes"; then
273
		LCOV=$lcov
274
	else
275
		AC_PATH_PROG([LCOV], [lcov])
276
	fi
277 278 279 280
	if test -x "${LCOV}"; then
		USE_LCOV="yes"
	else
		AC_MSG_ERROR([Cannot find lcov.])
281 282 283 284 285 286
	fi
	# is genhtml always in the same directory?
	GENHTML=`echo "$LCOV" | sed s/lcov$/genhtml/`
	if test ! -x $GENHTML; then
		AC_MSG_ERROR([genhtml not found, needed for lcov])
	fi
287
	# GCC specific?
288
	CXXFLAGS="$CXXFLAGS -fprofile-arcs -ftest-coverage"
289
	LIBS=" $LIBS -lgcov"
290 291 292 293 294 295 296
	AC_SUBST(CPPFLAGS)
	AC_SUBST(LIBS)
	AC_SUBST(LCOV)
	AC_SUBST(GENHTML)
fi
AC_SUBST(USE_LCOV)

297 298 299 300
#
# Configure Boost header path
#
# If explicitly specified, use it.
301 302 303 304
AC_ARG_WITH([boost-include],
  AC_HELP_STRING([--with-boost-include=PATH],
    [specify exact directory for Boost headers]),
    [boost_include_path="$withval"])
305 306 307 308 309 310 311 312 313 314 315
# If not specified, try some common paths.
if test -z "$with_boost_include"; then
	boostdirs="/usr/local /usr/pkg /opt /opt/local"
	for d in $boostdirs
	do
		if test -f $d/include/boost/shared_ptr.hpp; then
			boost_include_path=$d/include
			break
		fi
	done
fi
316
CPPFLAGS_SAVES="$CPPFLAGS"
317
if test "${boost_include_path}" ; then
318 319
	BOOST_INCLUDES="-I${boost_include_path}"
	CPPFLAGS="$CPPFLAGS $BOOST_INCLUDES"
320
fi
321
AC_CHECK_HEADERS([boost/shared_ptr.hpp boost/foreach.hpp boost/interprocess/sync/interprocess_upgradable_mutex.hpp],,
322
  AC_MSG_ERROR([Missing required header files.]))
323
CPPFLAGS="$CPPFLAGS_SAVES"
324
AC_SUBST(BOOST_INCLUDES)
325

326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355
# Using boost::mutex can result in requiring libboost_thread with older
# versions of Boost.  We'd like to avoid relying on a compiled Boost library
# whenever possible, so we need to check for it step by step.
AC_MSG_CHECKING(for boost::mutex)
CPPFLAGS_SAVES="$CPPFLAGS"
LIBS_SAVES="$LIBS"
CPPFLAGS="$BOOST_INCLUDES $CPPFLAGS"
need_libboost_thread=0
AC_TRY_LINK([
#include <boost/thread.hpp>
],[
boost::mutex m;
],
	[ AC_MSG_RESULT(yes (without libboost_thread)) ],
	[ LIBS=" $LIBS -lboost_thread"
AC_TRY_LINK([
#include <boost/thread.hpp>
],[
boost::mutex m;
],
	[ AC_MSG_RESULT(yes (with libboost_thread))
 	  need_libboost_thread=1 ],
	[ AC_MSG_RESULT(no)
	  AC_MSG_ERROR([boost::mutex cannot be linked in this build environment.
Perhaps you are using an older version of Boost that requires libboost_thread for the mutex support.  You may want to check the availability of the library or to upgrade Boost.])
   	])])
CPPFLAGS="$CPPFLAGS_SAVES"
LIBS="$LIBS_SAVES"
AM_CONDITIONAL(NEED_LIBBOOST_THREAD, test $need_libboost_thread = 1)

356
#
357
# Check availability of gtest, which will be used for unit tests.
358
#
359
if test "$gtest_path" != "no"
360
then
361 362
	if test "$gtest_path" != "yes"; then
		GTEST_PATHS=$gtest_path
363 364 365
		if test -x "${gtest_path}/bin/gtest-config" ; then
			GTEST_CONFIG="${gtest_path}/bin/gtest-config"
		fi
366
	else
367
		AC_PATH_PROG([GTEST_CONFIG], [gtest-config])
368
	fi
369 370 371 372 373 374 375 376 377 378
	if test -x "${GTEST_CONFIG}" ; then :
		# using cppflags instead of cxxflags
		GTEST_INCLUDES=`${GTEST_CONFIG} --cppflags`
		GTEST_LDFLAGS=`${GTEST_CONFIG} --ldflags`
		GTEST_LDADD=`${GTEST_CONFIG} --libs`
		GTEST_FOUND="true"
	else
		AC_MSG_WARN([Unable to locate Google Test gtest-config.])
		if test -z "${GTEST_PATHS}" ; then
			GTEST_PATHS="/usr /usr/local"
379
		fi
380 381 382 383 384 385 386 387 388 389 390 391 392 393 394
		GTEST_FOUND="false"
	fi
	if test "${GTEST_FOUND}" != "true"; then
		GTEST_FOUND="false"
		for dir in $GTEST_PATHS; do
			if test -f "$dir/include/gtest/gtest.h"; then
				GTEST_INCLUDES="-I$dir/include"
				GTEST_LDFLAGS="-L$dir/lib"
				GTEST_LDADD="-lgtest"
				GTEST_FOUND="true"
				break
			fi
		done
	fi
	if test "${GTEST_FOUND}" != "true"; then
395 396
		AC_MSG_ERROR([Cannot find gtest in: $GTEST_PATHS])
	fi
397
else
398 399 400
	GTEST_INCLUDES=
	GTEST_LDFLAGS=
	GTEST_LDADD=
401
fi
402 403 404 405
AM_CONDITIONAL(HAVE_GTEST, test $gtest_path != "no")
AC_SUBST(GTEST_INCLUDES)
AC_SUBST(GTEST_LDFLAGS)
AC_SUBST(GTEST_LDADD)
406

407 408 409 410 411
dnl check for pkg-config itself so we don't try the m4 macro without pkg-config
AC_CHECK_PROG(HAVE_PKG_CONFIG, pkg-config, yes, no)
if test "x$HAVE_PKG_CONFIG" = "xno" ; then
  AC_MSG_ERROR(Please install pkg-config)
fi
412
PKG_CHECK_MODULES(SQLITE, sqlite3 >= 3.3.9, enable_features="$enable_features SQLite3")
413

Jelte Jansen's avatar
 
Jelte Jansen committed
414 415 416 417 418 419 420
# I can't get some of the #include <asio.hpp> right without this
# TODO: find the real cause of asio/boost wanting pthreads
# (this currently only occurs for src/lib/cc/session_unittests)
PTHREAD_LDFLAGS=
AC_CHECK_LIB(pthread, pthread_create,[ PTHREAD_LDFLAGS=-lpthread ], [])
AC_SUBST(PTHREAD_LDFLAGS)

421 422 423
#
# ASIO: we extensively use it as the C++ event management module.
#
424
# Use local ASIO headers from ext
425
#
426
CPPFLAGS="$CPPFLAGS -I\$(top_srcdir)/ext/asio"
427
#
428 429 430
# Disable threads: Currently we don't use them.
CPPFLAGS="$CPPFLAGS -DASIO_DISABLE_THREADS=1"
#
431 432 433 434 435 436 437 438
# kqueue portability: ASIO uses kqueue by default if it's available (it's
# generally available in BSD variants).  Unfortunately, some public
# implementation of kqueue forces a conversion from a pointer to an integer,
# which is prohibited in C++ unless reinterpret_cast, C++'s most evil beast
# (and ASIO doesn't use it anyway) is used.  This will cause build error for
# some of our C++ files including ASIO header files.  The following check
# detects such cases and tells ASIO not to use kqueue if so.
AC_CHECK_FUNC(kqueue, ac_cv_have_kqueue=yes, ac_cv_have_kqueue=no)
439
if test "X$ac_cv_have_kqueue" = "Xyes"; then
440 441 442 443 444 445 446 447 448 449 450
	AC_MSG_CHECKING([whether kqueue EV_SET compiles in C++])
	AC_TRY_COMPILE([
#include <sys/types.h>
#include <sys/param.h>
#include <sys/event.h>],
[char* udata;
EV_SET(NULL, 0, 0, 0, 0, 0, udata);],
	[AC_MSG_RESULT(yes)],
	[AC_MSG_RESULT([no, disable kqueue for ASIO])
	 CPPFLAGS="$CPPFLAGS -DASIO_DISABLE_KQUEUE=1"
	])
451
fi
452 453 454 455 456

# /dev/poll issue: ASIO uses /dev/poll by default if it's available (generally
# the case with Solaris).  Unfortunately its /dev/poll specific code would
# trigger the gcc's "missing-field-initializers" warning, which would
# subsequently make the build fail with -Werror.  Further, older versions of
457
# gcc don't provide an option to selectively suppress this warning.
458 459 460 461 462 463
# So, for the moment, we simply disable the use of /dev/poll.  Unless we
# implement recursive DNS server with randomized ports, we don't need the
# scalability that /dev/poll can provide, so this decision wouldn't affect
# run time performance.  Hpefully we can find a better solution or the ASIO
# code will be updated by the time we really need it.
AC_CHECK_HEADERS(sys/devpoll.h, ac_cv_have_devpoll=yes, ac_cv_have_devpoll=no)
464
if test "X$ac_cv_have_devpoll" = "Xyes" -a "X$GXX" = "Xyes"; then
465 466
	CPPFLAGS="$CPPFLAGS -DASIO_DISABLE_DEV_POLL=1"
fi
467

468
AC_ARG_ENABLE(man, [AC_HELP_STRING([--enable-man],
469
  [regenerate man pages [default=no]])], enable_man=yes, enable_man=no)
470 471

AM_CONDITIONAL(ENABLE_MAN, test x$enable_man != xno)
472

473 474 475
AC_ARG_ENABLE(install-configurations,
  [AC_HELP_STRING([--disable-install-configurations],
  [do not install configuration])], install_configurations=$enableval, install_configurations=yes)
476

477
AM_CONDITIONAL(INSTALL_CONFIGURATIONS, test x$install_configurations = xyes || test x$install_configurations = xtrue)
478

479 480
AC_CONFIG_FILES([Makefile
                 src/Makefile
481
                 src/bin/Makefile
482
                 src/bin/bind10/Makefile
Jeremy C. Reed's avatar
Jeremy C. Reed committed
483
                 src/bin/bind10/tests/Makefile
Jelte Jansen's avatar
Jelte Jansen committed
484
                 src/bin/cmdctl/Makefile
Jeremy C. Reed's avatar
Jeremy C. Reed committed
485
                 src/bin/cmdctl/tests/Makefile
Jeremy C. Reed's avatar
Jeremy C. Reed committed
486
                 src/bin/bindctl/Makefile
Jeremy C. Reed's avatar
Jeremy C. Reed committed
487
                 src/bin/bindctl/tests/Makefile
Jelte Jansen's avatar
Jelte Jansen committed
488
                 src/bin/cfgmgr/Makefile
Jelte Jansen's avatar
Jelte Jansen committed
489
                 src/bin/cfgmgr/tests/Makefile
490
                 src/bin/host/Makefile
Evan Hunt's avatar
Evan Hunt committed
491
                 src/bin/loadzone/Makefile
492 493
                 src/bin/loadzone/tests/correct/Makefile
                 src/bin/loadzone/tests/error/Makefile
494
                 src/bin/msgq/Makefile
Jeremy C. Reed's avatar
Jeremy C. Reed committed
495
                 src/bin/msgq/tests/Makefile
496
                 src/bin/auth/Makefile
JINMEI Tatuya's avatar
JINMEI Tatuya committed
497
                 src/bin/auth/tests/Makefile
498
                 src/bin/auth/tests/testdata/Makefile
JINMEI Tatuya's avatar
JINMEI Tatuya committed
499
                 src/bin/auth/benchmarks/Makefile
500
                 src/bin/recurse/Makefile
Likun Zhang's avatar
Likun Zhang committed
501
                 src/bin/xfrin/Makefile
Jeremy C. Reed's avatar
Jeremy C. Reed committed
502
                 src/bin/xfrin/tests/Makefile
503
                 src/bin/xfrout/Makefile
Jeremy C. Reed's avatar
Jeremy C. Reed committed
504
                 src/bin/xfrout/tests/Makefile
505 506
                 src/bin/zonemgr/Makefile
                 src/bin/zonemgr/tests/Makefile
507 508
                 src/bin/stats/Makefile
                 src/bin/stats/tests/Makefile
509 510 511
                 src/bin/stats/tests/isc/Makefile
                 src/bin/stats/tests/isc/cc/Makefile
                 src/bin/stats/tests/isc/config/Makefile
Likun Zhang's avatar
Likun Zhang committed
512
                 src/bin/stats/tests/isc/util/Makefile
513
                 src/bin/stats/tests/testdata/Makefile
514
                 src/bin/usermgr/Makefile
Michal Vaner's avatar
Michal Vaner committed
515
                 src/bin/tests/Makefile
516
                 src/lib/Makefile
JINMEI Tatuya's avatar
JINMEI Tatuya committed
517 518 519
                 src/lib/bench/Makefile
                 src/lib/bench/example/Makefile
                 src/lib/bench/tests/Makefile
520
                 src/lib/cc/Makefile
JINMEI Tatuya's avatar
JINMEI Tatuya committed
521
                 src/lib/cc/tests/Makefile
Jeremy C. Reed's avatar
Jeremy C. Reed committed
522 523
                 src/lib/python/Makefile
                 src/lib/python/isc/Makefile
524 525
                 src/lib/python/isc/util/Makefile
                 src/lib/python/isc/util/tests/Makefile
Evan Hunt's avatar
Evan Hunt committed
526
                 src/lib/python/isc/datasrc/Makefile
527
                 src/lib/python/isc/datasrc/tests/Makefile
Jeremy C. Reed's avatar
Jeremy C. Reed committed
528
                 src/lib/python/isc/cc/Makefile
Jeremy C. Reed's avatar
Jeremy C. Reed committed
529
                 src/lib/python/isc/cc/tests/Makefile
Jeremy C. Reed's avatar
Jeremy C. Reed committed
530
                 src/lib/python/isc/config/Makefile
Jeremy C. Reed's avatar
Jeremy C. Reed committed
531
                 src/lib/python/isc/config/tests/Makefile
532 533
                 src/lib/python/isc/log/Makefile
                 src/lib/python/isc/log/tests/Makefile
534
                 src/lib/python/isc/net/Makefile
Michal Vaner's avatar
Michal Vaner committed
535
                 src/lib/python/isc/net/tests/Makefile
536 537
                 src/lib/python/isc/notify/Makefile
                 src/lib/python/isc/notify/tests/Makefile
538
                 src/lib/config/Makefile
539
                 src/lib/config/tests/Makefile
540
                 src/lib/config/tests/testdata/Makefile
Jelte Jansen's avatar
Jelte Jansen committed
541
                 src/lib/dns/Makefile
Jeremy C. Reed's avatar
Jeremy C. Reed committed
542
                 src/lib/dns/tests/Makefile
543
                 src/lib/dns/tests/testdata/Makefile
544
                 src/lib/dns/python/Makefile
545
                 src/lib/dns/python/tests/Makefile
546
                 src/lib/exceptions/Makefile
JINMEI Tatuya's avatar
JINMEI Tatuya committed
547
                 src/lib/exceptions/tests/Makefile
Evan Hunt's avatar
Evan Hunt committed
548 549
                 src/lib/datasrc/Makefile
                 src/lib/datasrc/tests/Makefile
550
                 src/lib/xfr/Makefile
551 552
                 src/lib/nsas/Makefile
                 src/lib/nsas/tests/Makefile
Jelte Jansen's avatar
Jelte Jansen committed
553
               ])
554
AC_OUTPUT([src/bin/cfgmgr/b10-cfgmgr.py
Jelte Jansen's avatar
Jelte Jansen committed
555
           src/bin/cfgmgr/tests/b10-cfgmgr_test.py
556
           src/bin/cmdctl/cmdctl.py
557
           src/bin/cmdctl/run_b10-cmdctl.sh
558
           src/bin/cmdctl/tests/cmdctl_test
Likun Zhang's avatar
 
Likun Zhang committed
559
           src/bin/cmdctl/cmdctl.spec.pre
560
           src/bin/xfrin/tests/xfrin_test
Likun Zhang's avatar
Likun Zhang committed
561 562
           src/bin/xfrin/xfrin.py
           src/bin/xfrin/run_b10-xfrin.sh
563
           src/bin/xfrout/xfrout.py
564
           src/bin/xfrout/xfrout.spec.pre
Likun Zhang's avatar
Likun Zhang committed
565
           src/bin/xfrout/tests/xfrout_test
566
           src/bin/xfrout/run_b10-xfrout.sh
567 568 569
           src/bin/recurse/recurse.py
           src/bin/recurse/recurse.spec.pre
           src/bin/recurse/run_b10-recurse.sh
570 571 572 573
           src/bin/zonemgr/zonemgr.py
           src/bin/zonemgr/zonemgr.spec.pre
           src/bin/zonemgr/tests/zonemgr_test
           src/bin/zonemgr/run_b10-zonemgr.sh
574 575 576 577 578 579
           src/bin/stats/stats.py
           src/bin/stats/stats_stub.py
           src/bin/stats/stats.spec.pre
           src/bin/stats/run_b10-stats.sh
           src/bin/stats/run_b10-stats_stub.sh
           src/bin/stats/tests/stats_test
580
           src/bin/bind10/bind10.py
581
           src/bin/bind10/tests/bind10_test
582
           src/bin/bind10/run_bind10.sh
583
           src/bin/bindctl/run_bindctl.sh
584
           src/bin/bindctl/bindctl-source.py
585
           src/bin/bindctl/tests/bindctl_test
586
           src/bin/loadzone/run_loadzone.sh
587 588
           src/bin/loadzone/tests/correct/correct_test.sh
           src/bin/loadzone/tests/error/error_test.sh
Evan Hunt's avatar
Evan Hunt committed
589
           src/bin/loadzone/b10-loadzone.py
590 591
           src/bin/usermgr/run_b10-cmdctl-usermgr.sh
           src/bin/usermgr/b10-cmdctl-usermgr.py
592
           src/bin/msgq/msgq.py
Jeremy C. Reed's avatar
Jeremy C. Reed committed
593
           src/bin/msgq/tests/msgq_test
594
           src/bin/msgq/run_msgq.sh
595
           src/bin/auth/auth.spec.pre
596
           src/bin/auth/spec_config.h.pre
Michal Vaner's avatar
Michal Vaner committed
597
           src/bin/tests/process_rename_test.py
598 599
           src/lib/config/tests/data_def_unittests_config.h
           src/lib/python/isc/config/tests/config_test
600
           src/lib/python/isc/cc/tests/cc_test
Jerry's avatar
Jerry committed
601
           src/lib/python/isc/log/tests/log_test
602
           src/lib/python/isc/notify/tests/notify_out_test
Jeremy C. Reed's avatar
Jeremy C. Reed committed
603
           src/lib/dns/gen-rdatacode.py
604
           src/lib/python/bind10_config.py
Jeremy C. Reed's avatar
Jeremy C. Reed committed
605
           src/lib/dns/tests/testdata/gen-wiredata.py
606
           src/lib/cc/session_config.h.pre
Jelte Jansen's avatar
Jelte Jansen committed
607
           src/lib/cc/tests/session_unittests_config.h
608
          ], [
609
           chmod +x src/bin/cmdctl/run_b10-cmdctl.sh
Likun Zhang's avatar
Likun Zhang committed
610
           chmod +x src/bin/xfrin/run_b10-xfrin.sh
611
           chmod +x src/bin/xfrout/run_b10-xfrout.sh
612
           chmod +x src/bin/recurse/run_b10-recurse.sh
613
           chmod +x src/bin/zonemgr/run_b10-zonemgr.sh
614 615 616
           chmod +x src/bin/stats/tests/stats_test
           chmod +x src/bin/stats/run_b10-stats.sh
           chmod +x src/bin/stats/run_b10-stats_stub.sh
617
           chmod +x src/bin/bind10/run_bind10.sh
618 619
           chmod +x src/bin/cmdctl/tests/cmdctl_test
           chmod +x src/bin/xfrin/tests/xfrin_test
Likun Zhang's avatar
Likun Zhang committed
620
           chmod +x src/bin/xfrout/tests/xfrout_test
621
           chmod +x src/bin/zonemgr/tests/zonemgr_test
622
           chmod +x src/bin/bindctl/tests/bindctl_test
623 624
           chmod +x src/bin/bindctl/run_bindctl.sh
           chmod +x src/bin/loadzone/run_loadzone.sh
625 626
           chmod +x src/bin/loadzone/tests/correct/correct_test.sh
           chmod +x src/bin/loadzone/tests/error/error_test.sh
627
           chmod +x src/bin/usermgr/run_b10-cmdctl-usermgr.sh
628
           chmod +x src/bin/msgq/run_msgq.sh
Jeremy C. Reed's avatar
Jeremy C. Reed committed
629
           chmod +x src/bin/msgq/tests/msgq_test
Jeremy C. Reed's avatar
Jeremy C. Reed committed
630 631
           chmod +x src/lib/dns/gen-rdatacode.py
           chmod +x src/lib/dns/tests/testdata/gen-wiredata.py
632
          ])
633
AC_OUTPUT
634 635 636 637 638 639 640 641 642 643 644 645 646

dnl Print the results
dnl

cat > config.report << END

     BIND 10 source configure results:
    -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

Package:
  Name:          $PACKAGE_NAME
  Version:       $PACKAGE_VERSION

647 648
C++ Compiler:    $CXX

649 650 651 652
Flags:
  DEFS:          $DEFS
  CPPFLAGS:      $CPPFLAGS
  CXXFLAGS:      $CXXFLAGS
653
  B10_CXXFLAGS:  $B10_CXXFLAGS
654
dnl includes too
655 656 657
  Python:        ${PYTHON_INCLUDES}
                 ${PYTHON_LDFLAGS}
                 ${PYTHON_LIB}
658
  Boost:         ${BOOST_INCLUDES}
659
  SQLite:        $SQLITE_CFLAGS
660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677
                 $SQLITE_LIBS

Features:
  $enable_features

Developer:
  Google Tests:  $gtest_path
  Code Coverage: $USE_LCOV
  Generate Manuals:  $enable_man

END

cat config.report
cat <<EOF

  Now you can type "make" to build BIND 10

EOF