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