]>
Commit | Line | Data |
---|---|---|
2f9bcf97 MM |
1 | dnl ** This is a configure script template for BIRD |
2 | dnl ** Process it with autoconf to get ./configure | |
9fac310d | 3 | dnl ** (c) 1999--2000 Martin Mares <mj@ucw.cz> |
2f9bcf97 | 4 | |
7a855725 OZ |
5 | AC_INIT |
6 | AC_CONFIG_SRCDIR([conf/confbase.Y]) | |
b81a73d1 OZ |
7 | AC_CONFIG_AUX_DIR([tools]) |
8 | ||
9 | AC_ARG_ENABLE([client], | |
10 | [AS_HELP_STRING([--enable-client], [enable building of BIRD client @<:@yes@:>@])], | |
11 | [], | |
12 | [enable_client=yes] | |
13 | ) | |
14 | ||
15 | AC_ARG_ENABLE([debug], | |
16 | [AS_HELP_STRING([--enable-debug], [enable internal debugging routines @<:@no@:>@])], | |
17 | [], | |
18 | [enable_debug=no] | |
19 | ) | |
20 | ||
4f082dfa MM |
21 | AC_ARG_ENABLE([debug-generated], |
22 | [AS_HELP_STRING([--enable-debug-generated], [enable this to abstain from generating #line @<:@no@:>@])], | |
23 | [], | |
24 | [enable_debug_generated=no] | |
25 | ) | |
26 | ||
a0d0a71a MM |
27 | AC_ARG_ENABLE([debug-expensive], |
28 | [AS_HELP_STRING([--enable-debug-expensive], [enable expensive consistency checks (implies --enable-debug) @<:@no@:>@])], | |
29 | [], | |
30 | [enable_debug_expensive=no] | |
31 | ) | |
32 | ||
b81a73d1 OZ |
33 | AC_ARG_ENABLE([memcheck], |
34 | [AS_HELP_STRING([--enable-memcheck], [check memory allocations when debugging @<:@yes@:>@])], | |
35 | [], | |
36 | [enable_memcheck=yes] | |
37 | ) | |
38 | ||
39 | AC_ARG_ENABLE([pthreads], | |
40 | [AS_HELP_STRING([--enable-pthreads], [enable POSIX threads support @<:@try@:>@])], | |
41 | [], | |
42 | [enable_pthreads=try] | |
43 | ) | |
44 | ||
1c5b4c5d | 45 | AC_ARG_ENABLE([libssh], |
027a3e66 | 46 | [AS_HELP_STRING([--enable-libssh], [enable LibSSH support in RPKI @<:@try@:>@])], |
1c5b4c5d OZ |
47 | [], |
48 | [enable_libssh=try] | |
49 | ) | |
50 | ||
6b0f5f68 MJM |
51 | AC_ARG_ENABLE([mpls-kernel], |
52 | [AS_HELP_STRING([--enable-mpls-kernel], [enable MPLS support in kernel protocol @<:@try@:>@])], | |
53 | [], | |
54 | [enable_mpls_kernel=try] | |
55 | ) | |
56 | ||
b81a73d1 OZ |
57 | AC_ARG_WITH([protocols], |
58 | [AS_HELP_STRING([--with-protocols=LIST], [include specified routing protocols @<:@all@:>@])], | |
59 | [], | |
60 | [with_protocols="all"] | |
61 | ) | |
62 | ||
b81a73d1 | 63 | AC_ARG_WITH([sysconfig], |
66934ace | 64 | [AS_HELP_STRING([--with-sysconfig=FILE], [use specified BIRD system configuration file])] |
b81a73d1 OZ |
65 | ) |
66 | ||
67 | AC_ARG_WITH([runtimedir], | |
d0b45978 | 68 | [AS_HELP_STRING([--with-runtimedir=PATH], [run-state data, obsolete variant of --runstatedir])], |
66934ace | 69 | [runstatedir="$with_runtimedir"] |
b81a73d1 OZ |
70 | ) |
71 | ||
72 | AC_ARG_WITH([iproutedir], | |
73 | [AS_HELP_STRING([--with-iproutedir=PATH], [path to iproute2 config files @<:@/etc/iproute2@:>@])], | |
74 | [given_iproutedir="yes"] | |
75 | ) | |
76 | ||
ab188fb7 OZ |
77 | AC_ARG_VAR([FLEX], [location of the Flex program]) |
78 | AC_ARG_VAR([BISON], [location of the Bison program]) | |
79 | AC_ARG_VAR([M4], [location of the M4 program]) | |
80 | ||
a0d0a71a | 81 | if test "$enable_debug_expensive" = yes; then |
a08853a2 | 82 | enable_debug=yes |
a0d0a71a | 83 | fi |
2f9bcf97 | 84 | |
49e7e5ee | 85 | if test "$srcdir" = . ; then |
b81a73d1 OZ |
86 | # Building in current directory => create obj directory holding all objects |
87 | objdir=obj | |
49e7e5ee | 88 | else |
b81a73d1 OZ |
89 | # Building in separate directory |
90 | objdir=. | |
49e7e5ee | 91 | fi |
7152e5ef JMM |
92 | |
93 | exedir=. | |
94 | ||
b81a73d1 OZ |
95 | AC_SUBST([objdir]) |
96 | AC_SUBST([exedir]) | |
1c5b4c5d | 97 | AC_SUBST([srcdir]) |
d0b45978 OZ |
98 | |
99 | # Workaround for older Autoconfs that do not define runstatedir | |
100 | AS_IF([test -z "${runstatedir}"], [runstatedir='${localstatedir}/run']) | |
101 | AC_SUBST([runstatedir]) | |
49e7e5ee | 102 | |
3fda08e4 | 103 | CONFIG_FILE="\$(sysconfdir)/bird.conf" |
b81a73d1 | 104 | AC_SUBST([CONFIG_FILE]) |
3fda08e4 OZ |
105 | |
106 | CONTROL_SOCKET="\$(runstatedir)/bird.ctl" | |
b81a73d1 | 107 | AC_SUBST([CONTROL_SOCKET]) |
ab188fb7 | 108 | |
b81a73d1 OZ |
109 | AC_SEARCH_LIBS([clock_gettime], [rt posix4], |
110 | [], | |
111 | [AC_MSG_ERROR([Function clock_gettime not available.])] | |
112 | ) | |
fd91ae33 | 113 | |
2f9bcf97 | 114 | AC_CANONICAL_HOST |
416e3ee4 | 115 | |
b1c030b0 | 116 | # Store this value because ac_test_CFLAGS is overwritten by AC_PROG_CC |
416e3ee4 | 117 | if test "$ac_test_CFLAGS" != set ; then |
b81a73d1 | 118 | bird_cflags_default=yes |
416e3ee4 | 119 | fi |
416e3ee4 | 120 | |
4e276a89 | 121 | AC_PROG_CC |
9b0a0ba9 | 122 | AC_PROG_CC_C99 |
e81b440f | 123 | if test -z "$GCC" ; then |
b81a73d1 | 124 | AC_MSG_ERROR([This program requires the GNU C Compiler.]) |
e81b440f OZ |
125 | fi |
126 | ||
6479e403 JMM |
127 | BIRD_CHECK_THREAD_LOCAL |
128 | if test "$bird_cv_thread_local" = yes ; then | |
129 | AC_DEFINE([HAVE_THREAD_LOCAL], [1], [Define to 1 if _Thread_local is available]) | |
130 | fi | |
131 | ||
1ec52253 | 132 | if test "$enable_pthreads" != no ; then |
b81a73d1 OZ |
133 | BIRD_CHECK_PTHREADS |
134 | ||
135 | if test "$bird_cv_lib_pthreads" = yes ; then | |
136 | AC_DEFINE([USE_PTHREADS], [1], [Define to 1 if pthreads are enabled]) | |
137 | CFLAGS="$CFLAGS -pthread" | |
138 | LDFLAGS="$LDFLAGS -pthread" | |
139 | proto_bfd=bfd | |
140 | elif test "$enable_pthreads" = yes ; then | |
141 | AC_MSG_ERROR([POSIX threads not available.]) | |
142 | fi | |
143 | ||
144 | if test "$enable_pthreads" = try ; then | |
145 | enable_pthreads="$bird_cv_lib_pthreads" | |
146 | fi | |
1ec52253 OZ |
147 | fi |
148 | ||
8c42205e OZ |
149 | # This is assumed to be necessary for proper BIRD build |
150 | CFLAGS="$CFLAGS -fno-strict-aliasing -fno-strict-overflow" | |
151 | ||
bed41728 | 152 | if test "$bird_cflags_default" = yes ; then |
b81a73d1 OZ |
153 | BIRD_CHECK_GCC_OPTION([bird_cv_c_option_wno_pointer_sign], [-Wno-pointer-sign], [-Wall]) |
154 | BIRD_CHECK_GCC_OPTION([bird_cv_c_option_wno_missing_init], [-Wno-missing-field-initializers], [-Wall -Wextra]) | |
8c42205e OZ |
155 | |
156 | if test "$enable_debug" = no; then | |
157 | BIRD_CHECK_LTO | |
158 | fi | |
159 | ||
160 | if test "$bird_cv_c_lto" = yes; then | |
161 | CFLAGS="$CFLAGS -flto" | |
368f7060 | 162 | LDFLAGS="$LDFLAGS -flto=4 -g" |
cc95b459 MM |
163 | else |
164 | LDFLAGS="$LDFLAGS -g" | |
8c42205e | 165 | fi |
b81a73d1 OZ |
166 | |
167 | CFLAGS="$CFLAGS -Wall -Wextra -Wstrict-prototypes -Wno-parentheses" | |
168 | BIRD_ADD_GCC_OPTION([bird_cv_c_option_wno_pointer_sign], [-Wno-pointer-sign]) | |
169 | BIRD_ADD_GCC_OPTION([bird_cv_c_option_wno_missing_init], [-Wno-missing-field-initializers]) | |
b1c030b0 | 170 | fi |
b1c030b0 OZ |
171 | |
172 | ||
de41d24a OZ |
173 | AC_MSG_CHECKING([CFLAGS]) |
174 | AC_MSG_RESULT([$CFLAGS]) | |
175 | ||
cc02da81 OZ |
176 | AC_MSG_CHECKING([LDFLAGS]) |
177 | AC_MSG_RESULT([$LDFLAGS]) | |
178 | ||
416e3ee4 MM |
179 | AC_PROG_CPP |
180 | AC_PROG_INSTALL | |
181 | AC_PROG_RANLIB | |
b81a73d1 OZ |
182 | AC_CHECK_PROG([FLEX], [flex], [flex]) |
183 | AC_CHECK_PROG([BISON], [bison], [bison]) | |
184 | AC_CHECK_PROGS([M4], [gm4 m4]) | |
8de11deb OZ |
185 | |
186 | test -z "$FLEX" && AC_MSG_ERROR([Flex is missing.]) | |
187 | test -z "$BISON" && AC_MSG_ERROR([Bison is missing.]) | |
188 | test -z "$M4" && AC_MSG_ERROR([M4 is missing.]) | |
b81a73d1 | 189 | |
86b9e8e3 JMM |
190 | AC_MSG_CHECKING([bison version]) |
191 | BIRD_CHECK_BISON_VERSION(BISON_VERSION) | |
192 | AC_MSG_RESULT([$BISON_VERSION]) | |
4f082dfa | 193 | if test "$bird_bison_synclines" = yes && test "$enable_debug_generated" = no; then |
86b9e8e3 JMM |
194 | M4FLAGS="$M4FLAGS -s" |
195 | fi | |
196 | ||
7ffc0a65 JMM |
197 | if test "$bird_bison_enhanced_error" = yes; then |
198 | BISONFLAGS="$BISONFLAGS -Dparse.lac=full -Dparse.error=verbose" | |
199 | fi | |
200 | ||
86b9e8e3 | 201 | AC_SUBST([M4FLAGS]) |
7ffc0a65 | 202 | AC_SUBST([BISONFLAGS]) |
86b9e8e3 | 203 | |
b81a73d1 OZ |
204 | BIRD_CHECK_PROG_FLAVOR_GNU([$M4], |
205 | [], | |
206 | [AC_MSG_ERROR([Provided M4 is not GNU M4.])] | |
207 | ) | |
416e3ee4 | 208 | |
2f9bcf97 | 209 | if test -n "$with_sysconfig" -a "$with_sysconfig" != no ; then |
b81a73d1 OZ |
210 | if test -f $with_sysconfig ; then |
211 | sysdesc=$with_sysconfig | |
212 | else | |
213 | sysdesc=$srcdir/sysdep/cf/$with_sysconfig | |
214 | if ! test -f $sysdesc ; then | |
215 | sysdesc=$sysdesc.h | |
216 | fi | |
217 | fi | |
2f9bcf97 | 218 | elif test -f sysconfig.h ; then |
b81a73d1 | 219 | sysdesc=sysconfig |
2f9bcf97 | 220 | else |
1c5b4c5d OZ |
221 | case "$host_os" in |
222 | linux*) | |
b81a73d1 OZ |
223 | sysdesc=linux |
224 | default_iproutedir="/etc/iproute2" | |
225 | ;; | |
1c5b4c5d | 226 | freebsd*) |
b81a73d1 | 227 | sysdesc=bsd |
09c1e370 JMM |
228 | CPPFLAGS="$CPPFLAGS -I/usr/local/include" |
229 | LDFLAGS="$LDFLAGS -L/usr/local/lib" | |
b81a73d1 | 230 | ;; |
1c5b4c5d | 231 | kfreebsd*) |
b81a73d1 OZ |
232 | sysdesc=bsd |
233 | ;; | |
1c5b4c5d | 234 | netbsd*) |
b81a73d1 | 235 | sysdesc=bsd |
1c5b4c5d OZ |
236 | CPPFLAGS="$CPPFLAGS -I/usr/pkg/include" |
237 | LDFLAGS="$LDFLAGS -L/usr/pkg/lib -R/usr/pkg/lib" | |
b81a73d1 | 238 | ;; |
1c5b4c5d | 239 | openbsd*) |
b81a73d1 OZ |
240 | sysdesc=bsd |
241 | ;; | |
1c5b4c5d | 242 | dragonfly*) |
b81a73d1 OZ |
243 | sysdesc=bsd |
244 | ;; | |
245 | *) | |
246 | AC_MSG_ERROR([Cannot determine correct system configuration. Please use --with-sysconfig to set it manually.]) | |
247 | ;; | |
1c5b4c5d OZ |
248 | esac |
249 | sysdesc=$srcdir/sysdep/cf/$sysdesc.h | |
2f9bcf97 | 250 | fi |
416e3ee4 | 251 | AC_MSG_CHECKING([which OS configuration should we use]) |
b81a73d1 | 252 | AC_MSG_RESULT([$sysdesc]) |
49e7e5ee | 253 | if ! test -f $sysdesc ; then |
b81a73d1 | 254 | AC_MSG_ERROR([The system configuration file is missing.]) |
2f9bcf97 | 255 | fi |
49e7e5ee | 256 | sysname=`echo $sysdesc | sed 's/\.h$//'` |
7a855725 | 257 | AC_DEFINE_UNQUOTED([SYSCONF_INCLUDE], ["$sysdesc"], [Which sysdep header to include]) |
49e7e5ee MM |
258 | |
259 | AC_MSG_CHECKING([system-dependent directories]) | |
7152e5ef | 260 | sysdep_dirs="`sed <$sysdesc '/^Link: /!d;s/^Link: \(.*\)$/\1/' | tr '\012' ' '`" |
b81a73d1 OZ |
261 | AC_MSG_RESULT([$sysdep_dirs]) |
262 | AC_SUBST([sysdep_dirs]) | |
2f9bcf97 | 263 | |
acc93efd OZ |
264 | if test "$with_iproutedir" = no ; then with_iproutedir= ; fi |
265 | ||
266 | if test -n "$given_iproutedir" | |
267 | then iproutedir=$with_iproutedir | |
268 | else iproutedir=$default_iproutedir | |
269 | fi | |
270 | ||
b81a73d1 | 271 | AC_SUBST([iproutedir]) |
acc93efd | 272 | |
144c10fa OZ |
273 | DAEMON_LIBS= |
274 | AC_SUBST(DAEMON_LIBS) | |
275 | ||
276 | if test "$enable_libssh" != no ; then | |
7d5e61a6 OZ |
277 | AC_CHECK_HEADER([libssh/libssh.h], [true], [fail=yes], [ ]) |
278 | AC_CHECK_LIB([ssh], [ssh_connect], [true], [fail=yes]) | |
144c10fa OZ |
279 | |
280 | if test "$fail" != yes ; then | |
281 | AC_DEFINE([HAVE_LIBSSH], [1], [Define to 1 if you have the `ssh' library (-lssh).]) | |
282 | DAEMON_LIBS="-lssh $DAEMON_LIBS" | |
144c10fa OZ |
283 | enable_libssh=yes |
284 | else | |
285 | if test "$enable_libssh" = yes ; then | |
286 | AC_MSG_ERROR([LibSSH not available.]) | |
287 | else | |
288 | enable_libssh=no | |
289 | fi | |
290 | fi | |
937e75d8 | 291 | fi |
144c10fa | 292 | |
6b0f5f68 MJM |
293 | if test "$enable_mpls_kernel" != no ; then |
294 | BIRD_CHECK_MPLS_KERNEL | |
295 | ||
296 | if test "$bird_cv_mpls_kernel" = yes ; then | |
297 | AC_DEFINE([HAVE_MPLS_KERNEL], [1], [Define to 1 if kernel is MPLS capable]) | |
298 | elif test "$enable_mpls_kernel" = yes ; then | |
299 | AC_MSG_ERROR([Kernel MPLS support not found.]) | |
300 | fi | |
301 | ||
302 | if test "$enable_mpls_kernel" = try ; then | |
303 | enable_mpls_kernel="$bird_cv_mpls_kernel" | |
304 | fi | |
305 | fi | |
306 | ||
027a3e66 | 307 | all_protocols="$proto_bfd babel bgp mrt ospf perf pipe radv rip rpki static" |
d549b83f | 308 | |
1ec52253 OZ |
309 | all_protocols=`echo $all_protocols | sed 's/ /,/g'` |
310 | ||
311 | if test "$with_protocols" = all ; then | |
b81a73d1 | 312 | with_protocols="$all_protocols" |
1ec52253 OZ |
313 | fi |
314 | ||
7a855725 OZ |
315 | AH_TEMPLATE([CONFIG_BABEL], [Babel protocol]) |
316 | AH_TEMPLATE([CONFIG_BFD], [BFD protocol]) | |
317 | AH_TEMPLATE([CONFIG_BGP], [BGP protocol]) | |
863ecfc7 | 318 | AH_TEMPLATE([CONFIG_MRT], [MRT protocol]) |
7a855725 OZ |
319 | AH_TEMPLATE([CONFIG_OSPF], [OSPF protocol]) |
320 | AH_TEMPLATE([CONFIG_PIPE], [Pipe protocol]) | |
321 | AH_TEMPLATE([CONFIG_RADV], [RAdv protocol]) | |
322 | AH_TEMPLATE([CONFIG_RIP], [RIP protocol]) | |
525a88d8 | 323 | AH_TEMPLATE([CONFIG_RPKI], [RPKI protocol]) |
7a855725 OZ |
324 | AH_TEMPLATE([CONFIG_STATIC], [Static protocol]) |
325 | ||
2f9bcf97 MM |
326 | AC_MSG_CHECKING([protocols]) |
327 | protocols=`echo "$with_protocols" | sed 's/,/ /g'` | |
b296730c | 328 | if test "$protocols" = no ; then protocols= ; fi |
2f9bcf97 | 329 | for a in $protocols ; do |
b81a73d1 OZ |
330 | if ! test -f $srcdir/proto/$a/Makefile ; then |
331 | AC_MSG_RESULT([failed]) | |
332 | AC_MSG_ERROR([Requested protocol $a not found]) | |
333 | fi | |
334 | AC_DEFINE_UNQUOTED([CONFIG_`echo $a | tr 'a-z' 'A-Z'`]) | |
335 | done | |
336 | AC_MSG_RESULT([ok]) | |
337 | AC_SUBST([protocols]) | |
2f9bcf97 | 338 | |
a07e9d82 | 339 | case $sysdesc in |
1c5b4c5d | 340 | */linux*) |
b81a73d1 OZ |
341 | AC_CHECK_HEADER([linux/rtnetlink.h], |
342 | [], | |
343 | [AC_MSG_ERROR([Appropriate version of Linux kernel headers not found.])], | |
81edd3b3 OZ |
344 | [ |
345 | dnl Some older versions of Linux kernel headers require these includes | |
346 | #include <asm/types.h> | |
347 | #include <sys/socket.h> | |
348 | ] | |
b81a73d1 OZ |
349 | ) |
350 | ;; | |
a07e9d82 MM |
351 | esac |
352 | ||
5d6dc930 | 353 | AC_CHECK_HEADERS_ONCE([alloca.h syslog.h]) |
71652572 | 354 | AC_CHECK_MEMBERS([struct sockaddr.sa_len], [], [], [#include <sys/socket.h>]) |
7a855725 OZ |
355 | |
356 | AC_C_BIGENDIAN( | |
357 | [AC_DEFINE([CPU_BIG_ENDIAN], [1], [Define to 1 if cpu is big endian])], | |
358 | [AC_DEFINE([CPU_LITTLE_ENDIAN], [1], [Define to 1 if cpu is little endian])], | |
359 | [AC_MSG_ERROR([Cannot determine CPU endianity.])] | |
360 | ) | |
e6ff7a08 | 361 | |
da16b33a MM |
362 | BIRD_CHECK_ANDROID_GLOB |
363 | if test "$bird_cv_lib_glob" = no ; then | |
364 | AC_MSG_ERROR([glob.h not found.]) | |
365 | elif test "$bird_cv_lib_glob" != yes ; then | |
366 | LIBS="$LIBS $bird_cv_lib_glob" | |
367 | fi | |
368 | ||
369 | BIRD_CHECK_ANDROID_LOG | |
370 | if test "$bird_cv_lib_log" = no ; then | |
371 | AC_MSG_ERROR([don't know how to link syslog.]) | |
372 | elif test "$bird_cv_lib_log" != yes ; then | |
373 | LIBS="$LIBS $bird_cv_lib_log" | |
374 | fi | |
375 | ||
2f9bcf97 | 376 | if test "$enable_debug" = yes ; then |
b81a73d1 | 377 | AC_DEFINE([DEBUGGING], [1], [Define to 1 if debugging is enabled]) |
1c5b4c5d | 378 | LDFLAGS="$LDFLAGS -rdynamic" |
78131eee JMM |
379 | CFLAGS="$CFLAGS -O0 -ggdb -g3" |
380 | ||
381 | BIRD_CHECK_GCC_OPTION([bird_cv_c_option_dwarf4], [-gdwarf-4], []) | |
382 | BIRD_ADD_GCC_OPTION([bird_cv_c_option_dwarf4], [-gdwarf-4]) | |
1c5b4c5d OZ |
383 | |
384 | AC_CHECK_HEADER([execinfo.h], | |
385 | [ | |
386 | AC_DEFINE([HAVE_EXECINFO_H], [1], [Define to 1 if you have the <execinfo.h> header file.]) | |
387 | AC_SEARCH_LIBS([backtrace], [execinfo], | |
b4a33e21 | 388 | [], |
1c5b4c5d OZ |
389 | [AC_MSG_ERROR([Function backtrace not available.])] |
390 | ) | |
391 | ] | |
392 | ) | |
393 | ||
b81a73d1 OZ |
394 | if test "$enable_memcheck" = yes ; then |
395 | AC_CHECK_LIB([dmalloc], [dmalloc_debug]) | |
396 | if test $ac_cv_lib_dmalloc_dmalloc_debug != yes ; then | |
397 | AC_CHECK_LIB([efence], [malloc]) | |
398 | fi | |
399 | fi | |
a0d0a71a MM |
400 | |
401 | if test "enable_debug_expensive" = yes ; then | |
402 | AC_DEFINE([ENABLE_EXPENSIVE_CHECKS], [1], [Define to 1 if you want to run expensive consistency checks.]) | |
403 | fi | |
2f9bcf97 MM |
404 | fi |
405 | ||
7152e5ef | 406 | CLIENT=birdcl |
7211be1c | 407 | CLIENT_LIBS= |
9fac310d | 408 | if test "$enable_client" = yes ; then |
1c5b4c5d | 409 | CLIENT="$CLIENT birdc" |
a01e951d OZ |
410 | BASE_LIBS="$LIBS" |
411 | LIBS="" | |
412 | ||
413 | AC_CHECK_HEADERS([curses.h], | |
414 | [], | |
415 | [AC_MSG_ERROR([The client requires ncurses library. Either install the library or use --disable-client to compile without the client.])], | |
81edd3b3 | 416 | [AC_INCLUDES_DEFAULT] |
b81a73d1 OZ |
417 | ) |
418 | ||
a01e951d OZ |
419 | AC_SEARCH_LIBS([tgetent], [tinfo tinfow ncurses curses termcap], |
420 | [TINFO_LIBS="$LIBS"; LIBS=""], | |
421 | [AC_MSG_ERROR([The client requires ncurses library. Either install the library or use --disable-client to compile without the client.])], | |
422 | ) | |
423 | ||
424 | AC_CHECK_HEADERS([readline/readline.h readline/history.h], | |
425 | [], | |
426 | [AC_MSG_ERROR([The client requires GNU Readline library. Either install the library or use --disable-client to compile without the client.])], | |
81edd3b3 | 427 | [AC_INCLUDES_DEFAULT] |
a01e951d OZ |
428 | ) |
429 | ||
a01e951d OZ |
430 | AC_SEARCH_LIBS([rl_callback_read_char], [readline], |
431 | [READLINE_LIBS="$LIBS"; LIBS=""], | |
a01e951d | 432 | [AC_MSG_ERROR([The client requires GNU Readline library. Either install the library or use --disable-client to compile without the client.])], |
a01e951d | 433 | [$TINFO_LIBS] |
a01e951d OZ |
434 | ) |
435 | ||
b81a73d1 OZ |
436 | AC_CHECK_LIB([readline], [rl_crlf], |
437 | [AC_DEFINE([HAVE_RL_CRLF], [1], [Define to 1 if you have rl_crlf()])], | |
438 | [], | |
a01e951d | 439 | [$TINFO_LIBS] |
b81a73d1 OZ |
440 | ) |
441 | ||
442 | AC_CHECK_LIB([readline], [rl_ding], | |
443 | [AC_DEFINE([HAVE_RL_DING], [1], [Define to 1 if you have rl_ding()])], | |
444 | [], | |
a01e951d | 445 | [$TINFO_LIBS] |
b81a73d1 | 446 | ) |
a01e951d OZ |
447 | |
448 | LIBS="$BASE_LIBS" | |
cce6ba4d | 449 | CLIENT_LIBS="$READLINE_LIBS $TINFO_LIBS" |
9fac310d | 450 | fi |
b81a73d1 OZ |
451 | AC_SUBST([CLIENT]) |
452 | AC_SUBST([CLIENT_LIBS]) | |
9fac310d | 453 | |
54165b13 | 454 | mkdir -p $objdir/sysdep |
7cb37e6f | 455 | AC_CONFIG_HEADERS([$objdir/sysdep/autoconf.h:sysdep/autoconf.h.in]) |
1c5b4c5d | 456 | AC_CONFIG_FILES([Makefile:Makefile.in]) |
22122d4d | 457 | AC_OUTPUT |
2f9bcf97 | 458 | |
7a855725 OZ |
459 | AC_MSG_RESULT() |
460 | AC_MSG_RESULT([BIRD was configured with the following options:]) | |
461 | AC_MSG_RESULT([ Source directory: $srcdir]) | |
462 | AC_MSG_RESULT([ Object directory: $objdir]) | |
463 | AC_MSG_RESULT([ Iproute2 directory: $iproutedir]) | |
464 | AC_MSG_RESULT([ System configuration: $sysdesc]) | |
465 | AC_MSG_RESULT([ Debugging: $enable_debug]) | |
466 | AC_MSG_RESULT([ POSIX threads: $enable_pthreads]) | |
467 | AC_MSG_RESULT([ Routing protocols: $protocols]) | |
027a3e66 | 468 | AC_MSG_RESULT([ LibSSH support in RPKI: $enable_libssh]) |
6b0f5f68 | 469 | AC_MSG_RESULT([ Kernel MPLS support: $enable_mpls_kernel]) |
7a855725 | 470 | AC_MSG_RESULT([ Client: $enable_client]) |
525a88d8 | 471 | |
b296730c | 472 | rm -f $objdir/.*-stamp |