| 
									
										
										
										
											1999-01-09 15:02:11 +00:00
										 |  |  | dnl ** This is a configure script template for BIRD | 
					
						
							|  |  |  | dnl ** Process it with autoconf to get ./configure | 
					
						
							|  |  |  | dnl ** (c) 1999 Martin Mares <mj@ucw.cz> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | AC_REVISION($Id$) | 
					
						
							|  |  |  | AC_INIT(conf/confbase.Y) | 
					
						
							|  |  |  | AC_CONFIG_AUX_DIR(tools) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | AC_ARG_ENABLE(debug,[  --enable-debug          enable internal debugging routines (default: enabled)],,enable_debug=yes) | 
					
						
							|  |  |  | AC_ARG_WITH(sysconfig,[  --with-sysconfig=FILE   use specified BIRD system configuration file]) | 
					
						
							| 
									
										
										
										
											1999-08-03 19:34:26 +00:00
										 |  |  | AC_ARG_WITH(protocols,[  --with-protocols=LIST   include specified routing protocols (default: rip,static,pipe)],,[with_protocols="rip,static,pipe"]) | 
					
						
							| 
									
										
										
										
											1999-05-21 14:09:06 +00:00
										 |  |  | AC_ARG_WITH(sysinclude,[  --with-sysinclude=PATH  search for system includes on specified place]) | 
					
						
							| 
									
										
										
										
											1999-01-09 15:02:11 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											1999-01-10 00:18:32 +00:00
										 |  |  | if test "$srcdir" = . ; then | 
					
						
							|  |  |  | 	# Building in current directory => create obj directory holding all objects | 
					
						
							|  |  |  | 	objdir=obj | 
					
						
							|  |  |  | 	mkdir -p obj | 
					
						
							|  |  |  | 	srcdir_rel=.. | 
					
						
							|  |  |  | 	makefiles="Makefile:tools/Makefile-top.in obj/Makefile:tools/Makefile.in obj/Rules:tools/Rules.in" | 
					
						
							|  |  |  | 	exedir=.. | 
					
						
							|  |  |  | else | 
					
						
							|  |  |  | 	# Building in separate directory | 
					
						
							|  |  |  | 	objdir=. | 
					
						
							|  |  |  | 	srcdir_rel=$srcdir | 
					
						
							|  |  |  | 	makefiles="Makefile:tools/Makefile.in Rules:tools/Rules.in" | 
					
						
							|  |  |  | 	exedir=. | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | case $srcdir_rel in | 
					
						
							|  |  |  | 	/*)	srcdir_rel_mf=$srcdir_rel ;; | 
					
						
							|  |  |  | 	*)	srcdir_rel_mf="\$(root-rel)$srcdir_rel" ;; | 
					
						
							|  |  |  | esac | 
					
						
							|  |  |  | AC_SUBST(objdir) | 
					
						
							|  |  |  | AC_SUBST(exedir) | 
					
						
							|  |  |  | AC_SUBST(srcdir_rel_mf) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											1999-01-09 15:02:11 +00:00
										 |  |  | AC_CANONICAL_HOST | 
					
						
							|  |  |  | AC_MSG_CHECKING([which OS configuration should we use]) | 
					
						
							|  |  |  | if test -n "$with_sysconfig" -a "$with_sysconfig" != no ; then | 
					
						
							|  |  |  | 	if test -f $with_sysconfig ; then | 
					
						
							| 
									
										
										
										
											1999-01-10 00:18:32 +00:00
										 |  |  | 		sysdesc=$with_sysconfig | 
					
						
							| 
									
										
										
										
											1999-01-09 15:02:11 +00:00
										 |  |  | 	else | 
					
						
							| 
									
										
										
										
											1999-01-10 00:18:32 +00:00
										 |  |  | 		sysdesc=$srcdir/sysdep/cf/$with_sysconfig | 
					
						
							|  |  |  | 		if ! test -f $sysdesc ; then | 
					
						
							|  |  |  | 			sysdesc=$sysdesc.h | 
					
						
							|  |  |  | 		fi | 
					
						
							| 
									
										
										
										
											1999-01-09 15:02:11 +00:00
										 |  |  | 	fi | 
					
						
							|  |  |  | elif test -f sysconfig.h ; then | 
					
						
							| 
									
										
										
										
											1999-01-10 00:18:32 +00:00
										 |  |  | 	sysdesc=sysconfig | 
					
						
							| 
									
										
										
										
											1999-01-09 15:02:11 +00:00
										 |  |  | else | 
					
						
							|  |  |  | 	case "$host_os" in | 
					
						
							| 
									
										
										
										
											1999-03-27 22:51:05 +00:00
										 |  |  | 		linux*)		case `uname -r` in | 
					
						
							|  |  |  | 					1.*|2.0.*)	sysdesc=linux-20 ;; | 
					
						
							|  |  |  | 					*)		sysdesc=linux-21 ;; | 
					
						
							|  |  |  | 					esac | 
					
						
							|  |  |  | 				;; | 
					
						
							| 
									
										
										
										
											1999-01-09 15:02:11 +00:00
										 |  |  | 		*)		AC_MSG_RESULT(unknown) | 
					
						
							|  |  |  | 				AC_MSG_ERROR([Cannot determine correct system configuration.]) | 
					
						
							|  |  |  | 				;; | 
					
						
							|  |  |  | 		esac | 
					
						
							| 
									
										
										
										
											1999-01-10 00:18:32 +00:00
										 |  |  | 	sysdesc=$srcdir/sysdep/cf/$sysdesc.h | 
					
						
							| 
									
										
										
										
											1999-01-09 15:02:11 +00:00
										 |  |  | fi | 
					
						
							| 
									
										
										
										
											1999-01-10 00:18:32 +00:00
										 |  |  | AC_MSG_RESULT($sysdesc) | 
					
						
							|  |  |  | if ! test -f $sysdesc ; then | 
					
						
							| 
									
										
										
										
											1999-01-09 15:02:11 +00:00
										 |  |  | 	AC_MSG_ERROR([The system configuration file is missing.]) | 
					
						
							|  |  |  | fi | 
					
						
							| 
									
										
										
										
											1999-01-10 00:18:32 +00:00
										 |  |  | sysname=`echo $sysdesc | sed 's/\.h$//'` | 
					
						
							|  |  |  | AC_DEFINE_UNQUOTED(SYSCONF_INCLUDE, "$sysdesc") | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | AC_MSG_CHECKING([system-dependent directories]) | 
					
						
							|  |  |  | sysdep_dirs="`sed <$sysdesc '/^Link: /!d;s/^Link: \(.*\)$/\1/' | tr '\012' ' '` lib" | 
					
						
							|  |  |  | AC_MSG_RESULT($sysdep_dirs) | 
					
						
							|  |  |  | AC_SUBST(sysdep_dirs) | 
					
						
							| 
									
										
										
										
											1999-01-09 15:02:11 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | AC_MSG_CHECKING([protocols]) | 
					
						
							|  |  |  | protocols=`echo "$with_protocols" | sed 's/,/ /g'` | 
					
						
							| 
									
										
										
										
											1999-01-10 00:25:50 +00:00
										 |  |  | if test "$protocols" = no ; then protocols= ; fi | 
					
						
							| 
									
										
										
										
											1999-01-09 15:02:11 +00:00
										 |  |  | for a in $protocols ; do | 
					
						
							|  |  |  | 	if ! test -f $srcdir/proto/$a/Makefile ; then | 
					
						
							|  |  |  | 		AC_MSG_RESULT(failed) | 
					
						
							|  |  |  | 		AC_MSG_ERROR([Requested protocol $a not found.]) | 
					
						
							|  |  |  | 		fi | 
					
						
							|  |  |  | 	AC_DEFINE_UNQUOTED(CONFIG_`echo $a | tr 'a-z' 'A-Z'`) | 
					
						
							|  |  |  | 	done | 
					
						
							|  |  |  | AC_MSG_RESULT(ok) | 
					
						
							| 
									
										
										
										
											1999-01-10 00:18:32 +00:00
										 |  |  | AC_SUBST(protocols) | 
					
						
							| 
									
										
										
										
											1999-01-09 15:02:11 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | AC_PROG_CC | 
					
						
							|  |  |  | if test -z "$GCC" ; then | 
					
						
							|  |  |  | 	AC_MSG_ERROR([This program requires the GNU C Compiler.]) | 
					
						
							|  |  |  | 	fi | 
					
						
							|  |  |  | AC_MSG_CHECKING([what CFLAGS should we use]) | 
					
						
							|  |  |  | if test "$ac_test_CFLAGS" != set ; then | 
					
						
							|  |  |  | 	CFLAGS="$CFLAGS -Wall -W -Wstrict-prototypes -Wno-unused -Wno-parentheses" | 
					
						
							|  |  |  | fi | 
					
						
							| 
									
										
										
										
											1999-05-21 14:09:06 +00:00
										 |  |  | if test "$with_sysinclude" != no -a -n "$with_sysinclude"; then | 
					
						
							|  |  |  | 	CPPFLAGS="$CPPFLAGS -I$with_sysinclude" | 
					
						
							|  |  |  | fi | 
					
						
							| 
									
										
										
										
											1999-01-09 15:02:11 +00:00
										 |  |  | AC_MSG_RESULT($CFLAGS) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | AC_PROG_CPP | 
					
						
							|  |  |  | AC_PROG_INSTALL | 
					
						
							|  |  |  | AC_PROG_RANLIB | 
					
						
							|  |  |  | AC_CHECK_PROG(FLEX, flex, flex) | 
					
						
							|  |  |  | AC_CHECK_PROG(BISON, bison, bison) | 
					
						
							| 
									
										
										
										
											1999-03-29 20:26:32 +00:00
										 |  |  | AC_CHECK_PROGS(M4, gm4 m4, m4) | 
					
						
							| 
									
										
										
										
											1999-01-09 15:02:11 +00:00
										 |  |  | if test -z "$FLEX" -o -z "$BISON" -o -z "$M4" ; then | 
					
						
							|  |  |  | 	AC_MSG_ERROR([Some tools required for building BIRD are missing.]) | 
					
						
							|  |  |  | 	fi | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											1999-05-21 14:09:06 +00:00
										 |  |  | case $sysdesc in | 
					
						
							|  |  |  | 	*/linux-22*)	AC_CHECK_HEADER(linux/rtnetlink.h,,[AC_MSG_ERROR([Appropriate version of Linux kernel headers not found.])]) | 
					
						
							|  |  |  | 			;; | 
					
						
							|  |  |  | esac | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											1999-01-09 15:02:11 +00:00
										 |  |  | AC_CHECK_HEADER(syslog.h, [AC_DEFINE(HAVE_SYSLOG)]) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | BIRD_CHECK_INTEGERS | 
					
						
							|  |  |  | BIRD_CHECK_ENDIAN | 
					
						
							|  |  |  | BIRD_CHECK_STRUCT_ALIGN | 
					
						
							|  |  |  | BIRD_CHECK_TIME_T | 
					
						
							| 
									
										
										
										
											1999-04-12 17:20:50 +00:00
										 |  |  | BIRD_CHECK_STRUCT_IP_MREQN | 
					
						
							| 
									
										
										
										
											1999-01-09 15:02:11 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | if test "$enable_debug" = yes ; then | 
					
						
							|  |  |  | 	AC_DEFINE(PATH_CONFIG_DIR, ".") | 
					
						
							|  |  |  | 	AC_DEFINE(DEBUGGING) | 
					
						
							| 
									
										
										
										
											1999-03-04 11:36:26 +00:00
										 |  |  | 	AC_CHECK_LIB(dmalloc, dmalloc_debug) | 
					
						
							|  |  |  | 	if test $ac_cv_lib_dmalloc_dmalloc_debug != yes ; then | 
					
						
							|  |  |  | 		AC_CHECK_LIB(efence, malloc) | 
					
						
							|  |  |  | 	fi | 
					
						
							| 
									
										
										
										
											1999-01-09 15:02:11 +00:00
										 |  |  | else | 
					
						
							|  |  |  | 	AC_DEFINE_UNQUOTED(PATH_CONFIG_DIR, "$sysconfdir") | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | AC_CONFIG_HEADER(sysdep/autoconf.h) | 
					
						
							| 
									
										
										
										
											1999-01-23 21:08:36 +00:00
										 |  |  | AC_OUTPUT_COMMANDS(,[CPP="$CPP" $srcdir/tools/mergedirs $srcdir $srcdir_rel $objdir $sysdep_dirs]) | 
					
						
							| 
									
										
										
										
											1999-01-10 00:18:32 +00:00
										 |  |  | AC_OUTPUT($makefiles) | 
					
						
							| 
									
										
										
										
											1999-01-09 15:02:11 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | cat >&AC_FD_MSG <<EOF | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | BIRD was configured with the following options: | 
					
						
							| 
									
										
										
										
											1999-01-10 00:25:50 +00:00
										 |  |  | 	Source directory:	$srcdir | 
					
						
							|  |  |  | 	Object directory:	$objdir | 
					
						
							| 
									
										
										
										
											1999-01-10 00:18:32 +00:00
										 |  |  | 	System configuration:	$sysdesc | 
					
						
							| 
									
										
										
										
											1999-01-09 15:02:11 +00:00
										 |  |  | 	Debugging:		$enable_debug | 
					
						
							|  |  |  | 	Routing protocols:	$protocols | 
					
						
							|  |  |  | EOF | 
					
						
							| 
									
										
										
										
											1999-01-10 00:25:50 +00:00
										 |  |  | rm -f $objdir/.*-stamp |