]> git.ipfire.org Git - thirdparty/bird.git/commitdiff
Some autoconf cleanups
authorOndrej Zajicek (work) <santiago@crfreenet.org>
Tue, 14 Mar 2017 12:46:51 +0000 (13:46 +0100)
committerOndrej Zajicek (work) <santiago@crfreenet.org>
Tue, 14 Mar 2017 12:53:52 +0000 (13:53 +0100)
The patch allows to use autoreconf, replaces some long obsolete
constructs and does some other minor cleanups. Also, the file
configure.in is renamed to configure.ac, as the old name has been
deprecated for a long time.

Thanks to Ruben Kerkhof for the patchset.

aclocal.m4
configure.ac [moved from configure.in with 81% similarity]
sysdep/autoconf.h.in [deleted file]
tools/Makefile-top.in

index 02c0f76b7977685996fe203c1fba0ddbed574a3c..f277542245ca760c362b1da34619f1cc3904f7f7 100644 (file)
@@ -1,12 +1,17 @@
 dnl ** Additional Autoconf tests for BIRD configure script
 dnl ** (c) 1999 Martin Mares <mj@ucw.cz>
 
-AC_DEFUN(BIRD_CHECK_INTEGERS,
+AC_DEFUN([BIRD_CHECK_INTEGERS],
 [AC_CHECK_SIZEOF(char, 0)
 AC_CHECK_SIZEOF(short int, 0)
 AC_CHECK_SIZEOF(int, 0)
 AC_CHECK_SIZEOF(long int, 0)
 AC_CHECK_SIZEOF(long long int, 0)
+AH_TEMPLATE([INTEGER_8],  [8-bit integer type])
+AH_TEMPLATE([INTEGER_16], [16-bit integer type])
+AH_TEMPLATE([INTEGER_32], [32-bit integer type])
+AH_TEMPLATE([INTEGER_64], [64-bit integer type])
+
 for size in 1 2 4 8; do
        bits=`expr $size "*" 8`
        AC_MSG_CHECKING([for $bits-bit type])
@@ -30,7 +35,7 @@ for size in 1 2 4 8; do
 ])
 
 dnl BIRD_CHECK_ENDIAN is unused and obsolete
-AC_DEFUN(BIRD_CHECK_ENDIAN,
+AC_DEFUN([BIRD_CHECK_ENDIAN],
 [AC_CACHE_CHECK([CPU endianity], bird_cv_c_endian,[
 AC_TRY_RUN([
 #include <stdio.h>
@@ -65,7 +70,7 @@ case $bird_cv_c_endian in
        esac
 ])
 
-AC_DEFUN(BIRD_CHECK_STRUCT_ALIGN,
+AC_DEFUN([BIRD_CHECK_STRUCT_ALIGN],
 [AC_CACHE_CHECK([usual alignment of structures],bird_cv_c_struct_align,[
 AC_TRY_RUN([
 #include <stdio.h>
@@ -87,10 +92,10 @@ AC_MSG_RESULT([test program failed])
 AC_MSG_ERROR([Cannot determine structure alignment])
 ],[bird_cv_c_struct_align=16])
 ])
-AC_DEFINE_UNQUOTED(CPU_STRUCT_ALIGN, $bird_cv_c_struct_align)
+AC_DEFINE_UNQUOTED([CPU_STRUCT_ALIGN], [$bird_cv_c_struct_align], [Usual alignment of structures])
 ])
 
-AC_DEFUN(BIRD_CHECK_TIME_T,
+AC_DEFUN([BIRD_CHECK_TIME_T],
 [AC_CACHE_CHECK([characteristics of time_t], bird_cv_type_time_t, [
 AC_TRY_RUN([
 #include <stdio.h>
@@ -113,15 +118,15 @@ int main(void)
 ],[bird_cv_type_time_t="32-bit signed"])
 ])
 case "$bird_cv_type_time_t" in
-       *64-bit*)       AC_DEFINE(TIME_T_IS_64BIT) ;;
+       *64-bit*)       AC_DEFINE([TIME_T_IS_64BIT], [1], [Define to 1 if time_t is 64 bit]) ;;
        esac
 case "$bird_cv_type_time_t" in
        *unsigned*)     ;;
-       *)              AC_DEFINE(TIME_T_IS_SIGNED) ;;
+       *)              AC_DEFINE([TIME_T_IS_SIGNED], [1], [Define to 1 if time_t is signed]) ;;
        esac
 ])
 
-AC_DEFUN(BIRD_CHECK_STRUCT_IP_MREQN,
+AC_DEFUN([BIRD_CHECK_STRUCT_IP_MREQN],
 [AC_CACHE_CHECK([for struct ip_mreqn], bird_cv_struct_ip_mreqn,[
 AC_TRY_COMPILE([#include <netinet/in.h>
 ],[struct ip_mreqn x;
@@ -129,11 +134,11 @@ AC_TRY_COMPILE([#include <netinet/in.h>
 ],[bird_cv_struct_ip_mreqn=no
 ])])
 if test "$bird_cv_struct_ip_mreqn" = yes ; then
-       AC_DEFINE(HAVE_STRUCT_IP_MREQN)
+       AC_DEFINE([HAVE_STRUCT_IP_MREQN], [1], [Define to 1 if you have struct ip_mreqn])
 fi
 ])
 
-AC_DEFUN(BIRD_CHECK_PTHREADS,
+AC_DEFUN([BIRD_CHECK_PTHREADS],
 [
   bird_tmp_cflags="$CFLAGS"
 
@@ -145,7 +150,7 @@ AC_DEFUN(BIRD_CHECK_PTHREADS,
   CFLAGS="$bird_tmp_cflags"
 ])
 
-AC_DEFUN(BIRD_CHECK_GCC_OPTION,
+AC_DEFUN([BIRD_CHECK_GCC_OPTION],
 [
   bird_tmp_cflags="$CFLAGS"
 
@@ -156,7 +161,7 @@ AC_DEFUN(BIRD_CHECK_GCC_OPTION,
   CFLAGS="$bird_tmp_cflags"
 ])
 
-AC_DEFUN(BIRD_ADD_GCC_OPTION,
+AC_DEFUN([BIRD_ADD_GCC_OPTION],
 [
   if test "$$1" = yes ; then
     CFLAGS="$CFLAGS $2"
similarity index 81%
rename from configure.in
rename to configure.ac
index 57fa00797295da49bb3d009ab66d35d75179a986..c06677c558ca9bdb1b2ab954ac39a92f1529b91a 100644 (file)
@@ -2,8 +2,8 @@ dnl ** This is a configure script template for BIRD
 dnl ** Process it with autoconf to get ./configure
 dnl ** (c) 1999--2000 Martin Mares <mj@ucw.cz>
 
-AC_REVISION($Id$)
-AC_INIT(conf/confbase.Y)
+AC_INIT
+AC_CONFIG_SRCDIR([conf/confbase.Y])
 AC_CONFIG_AUX_DIR(tools)
 
 AC_ARG_ENABLE(debug,   [  --enable-debug          enable internal debugging routines (default: disabled)],,enable_debug=no)
@@ -96,7 +96,7 @@ if test "$enable_pthreads" != no ; then
        BIRD_CHECK_PTHREADS
 
        if test "$bird_cv_lib_pthreads" = yes ; then
-               AC_DEFINE(USE_PTHREADS)
+               AC_DEFINE([USE_PTHREADS], [1], [Define to 1 if pthreads are enabled])
                CFLAGS="$CFLAGS -pthread"
                LDFLAGS="$LDFLAGS -pthread"
                proto_bfd=bfd
@@ -191,7 +191,7 @@ if ! test -f $sysdesc ; then
        AC_MSG_ERROR([The system configuration file is missing.])
 fi
 sysname=`echo $sysdesc | sed 's/\.h$//'`
-AC_DEFINE_UNQUOTED(SYSCONF_INCLUDE, "$sysdesc")
+AC_DEFINE_UNQUOTED([SYSCONF_INCLUDE], ["$sysdesc"], [Which sysdep header to include])
 
 AC_MSG_CHECKING([system-dependent directories])
 sysdep_dirs="`sed <$sysdesc '/^Link: /!d;s/^Link: \(.*\)$/\1/' | tr '\012' ' '` lib"
@@ -217,6 +217,15 @@ if test "$with_protocols" = all ; then
        with_protocols="$all_protocols"
 fi
 
+AH_TEMPLATE([CONFIG_BABEL],    [Babel protocol])
+AH_TEMPLATE([CONFIG_BFD],      [BFD protocol])
+AH_TEMPLATE([CONFIG_BGP],      [BGP protocol])
+AH_TEMPLATE([CONFIG_OSPF],     [OSPF protocol])
+AH_TEMPLATE([CONFIG_PIPE],     [Pipe protocol])
+AH_TEMPLATE([CONFIG_RADV],     [RAdv protocol])
+AH_TEMPLATE([CONFIG_RIP],      [RIP protocol])
+AH_TEMPLATE([CONFIG_STATIC],   [Static protocol])
+
 AC_MSG_CHECKING([protocols])
 protocols=`echo "$with_protocols" | sed 's/,/ /g'`
 if test "$protocols" = no ; then protocols= ; fi
@@ -239,18 +248,32 @@ case $sysdesc in
                ;;
 esac
 
-AC_CHECK_HEADER(syslog.h, [AC_DEFINE(HAVE_SYSLOG)])
-AC_CHECK_HEADER(alloca.h, [AC_DEFINE(HAVE_ALLOCA_H)])
+AC_CHECK_HEADER(syslog.h, [AC_DEFINE([HAVE_SYSLOG], [1], [Define to 1 if you have the <syslog.h> header file])])
+AC_CHECK_HEADER(alloca.h, [AC_DEFINE([HAVE_ALLOCA_H], [1], [Define to 1 if you have the <alloca.h> header file])])
 AC_MSG_CHECKING(whether 'struct sockaddr' has sa_len)
-AC_TRY_COMPILE([#include <sys/types.h>
-  #include <sys/socket.h>
-  ], [static struct sockaddr sa; int i = sizeof(sa.sa_len);],
-  [AC_MSG_RESULT(yes)
-  AC_DEFINE(HAVE_SIN_LEN,,sin_len)],
-  AC_MSG_RESULT(no))
-
-AC_C_BIGENDIAN([AC_DEFINE(CPU_BIG_ENDIAN)], [AC_DEFINE(CPU_LITTLE_ENDIAN)],
-                [AC_MSG_ERROR([Cannot determine CPU endianity.])])
+AC_COMPILE_IFELSE([
+  AC_LANG_PROGRAM(
+    [[
+      #include <sys/types.h>
+      #include <sys/socket.h>
+    ]],
+    [[
+      static struct sockaddr sa;
+      int i = sizeof(sa.sa_len);
+    ]]
+  )],
+  [
+    AC_MSG_RESULT(yes)
+    AC_DEFINE(HAVE_SIN_LEN,,sin_len)
+  ],
+  [AC_MSG_RESULT(no)]
+)
+
+AC_C_BIGENDIAN(
+  [AC_DEFINE([CPU_BIG_ENDIAN], [1], [Define to 1 if cpu is big endian])],
+  [AC_DEFINE([CPU_LITTLE_ENDIAN], [1], [Define to 1 if cpu is little endian])],
+  [AC_MSG_ERROR([Cannot determine CPU endianity.])]
+)
 
 BIRD_CHECK_INTEGERS
 BIRD_CHECK_STRUCT_ALIGN
@@ -258,7 +281,7 @@ BIRD_CHECK_TIME_T
 BIRD_CHECK_STRUCT_IP_MREQN
 
 if test "$enable_debug" = yes ; then
-       AC_DEFINE(DEBUGGING)
+       AC_DEFINE([DEBUGGING], [1], [Define to 1 if debugging is enabled])
        if test "$enable_memcheck" = yes ; then
                AC_CHECK_LIB(dmalloc, dmalloc_debug)
                if test $ac_cv_lib_dmalloc_dmalloc_debug != yes ; then
@@ -280,8 +303,8 @@ if test "$enable_client" = yes ; then
                                                AC_MSG_ERROR([[The client requires ncurses library. Either install the library or use --disable-client to compile without the client.]]))))))
        AC_CHECK_LIB(readline, rl_callback_read_char, CLIENT_LIBS="-lreadline $CLIENT_LIBS $USE_TERMCAP_LIB",
                AC_MSG_ERROR([[The client requires GNU readline library 2.1 or newer. Either install the library or use --disable-client to compile without the client.]]), $USE_TERMCAP_LIB)
-       AC_CHECK_LIB(readline, rl_crlf, AC_DEFINE(HAVE_RL_CRLF),,$USE_TERMCAP_LIB)
-       AC_CHECK_LIB(readline, rl_ding, AC_DEFINE(HAVE_RL_DING),,$USE_TERMCAP_LIB)
+       AC_CHECK_LIB(readline, rl_crlf, AC_DEFINE([HAVE_RL_CRLF], [1], [Define to 1 if you have rl_crlf()]),,$USE_TERMCAP_LIB)
+       AC_CHECK_LIB(readline, rl_ding, AC_DEFINE([HAVE_RL_DING], [1], [Define to 1 if you have rl_ding()]),,$USE_TERMCAP_LIB)
 fi
 AC_SUBST(CLIENT)
 AC_SUBST(CLIENT_LIBS)
@@ -299,16 +322,14 @@ AC_OUTPUT
 
 rm -f $objdir/sysdep/paths.h
 
-cat >&AC_FD_MSG <<EOF
-
-BIRD was configured with the following options:
-       Source directory:       $srcdir
-       Object directory:       $objdir
-       Iproute2 directory:     $iproutedir
-       System configuration:   $sysdesc
-       Debugging:              $enable_debug
-       POSIX threads:          $enable_pthreads
-       Routing protocols:      $protocols
-       Client:                 $enable_client
-EOF
+AC_MSG_RESULT()
+AC_MSG_RESULT([BIRD was configured with the following options:])
+AC_MSG_RESULT([        Source directory:       $srcdir])
+AC_MSG_RESULT([        Object directory:       $objdir])
+AC_MSG_RESULT([        Iproute2 directory:     $iproutedir])
+AC_MSG_RESULT([        System configuration:   $sysdesc])
+AC_MSG_RESULT([        Debugging:              $enable_debug])
+AC_MSG_RESULT([        POSIX threads:          $enable_pthreads])
+AC_MSG_RESULT([        Routing protocols:      $protocols])
+AC_MSG_RESULT([        Client:                 $enable_client])
 rm -f $objdir/.*-stamp
diff --git a/sysdep/autoconf.h.in b/sysdep/autoconf.h.in
deleted file mode 100644 (file)
index c73270c..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- *     This file contains all system parameters automatically
- *     discovered by the configure script.
- */
-
-/* System configuration file */
-#define SYSCONF_INCLUDE ?
-
-/* Include debugging code */
-#undef DEBUGGING
-
-/* 8-bit integer type */
-#define INTEGER_8 ?
-
-/* 16-bit integer type */
-#define INTEGER_16 ?
-
-/* 32-bit integer type */
-#define INTEGER_32 ?
-
-/* 64-bit integer type */
-#define INTEGER_64 ?
-
-/* CPU endianity */
-#undef CPU_LITTLE_ENDIAN
-#undef CPU_BIG_ENDIAN
-
-/* Usual alignment for structures */
-#define CPU_STRUCT_ALIGN 1
-
-/* Characteristics of time_t */
-#undef TIME_T_IS_64BIT
-#undef TIME_T_IS_SIGNED
-
-/* We have struct ip_mreqn in <netinet/in.h> */
-#undef HAVE_STRUCT_IP_MREQN
-
-/* Protocols compiled in */
-#undef CONFIG_STATIC
-#undef CONFIG_RIP
-#undef CONFIG_RADV
-#undef CONFIG_BFD
-#undef CONFIG_BGP
-#undef CONFIG_OSPF
-#undef CONFIG_PIPE
-#undef CONFIG_BABEL
-
-/* We use multithreading */
-#undef USE_PTHREADS
-
-/* We have <syslog.h> and syslog() */
-#undef HAVE_SYSLOG
-
-/* We have <alloca.h> */
-#undef HAVE_ALLOCA_H
-
-/* Are we using dmalloc? */
-#undef HAVE_LIBDMALLOC
-
-/* Readline stuff */
-#undef HAVE_RL_CRLF
-#undef HAVE_RL_DING
-
-/* struct sockaddr_in(6) */
-#undef HAVE_SIN_LEN
-
-/* We have stdint.h */
-#undef HAVE_STDINT_H
-
-#define CONFIG_PATH ?
index cf59f7a1742717f5d3a70e4291f7a23be6513528..fa02b5e6a9b16c316bf5f6b313b5f29f8cf7fbb8 100644 (file)
@@ -16,5 +16,5 @@ clean:
 distclean: clean
        $(MAKE) -C doc distclean
        rm -rf $(objdir) autom4te.cache
-       rm -f config.* configure sysdep/autoconf.h sysdep/paths.h Makefile
+       rm -f config.* configure sysdep/autoconf.h.in sysdep/paths.h Makefile