Annotation of embedaddon/bird2/aclocal.m4, revision 1.1.1.1

1.1       misho       1: dnl ** Additional Autoconf tests for BIRD configure script
                      2: dnl ** (c) 1999 Martin Mares <mj@ucw.cz>
                      3: 
                      4: AC_DEFUN([BIRD_CHECK_THREAD_LOCAL],
                      5: [
                      6:   AC_CACHE_CHECK(
                      7:     [whether _Thread_local is known],
                      8:     [bird_cv_thread_local],
                      9:     AC_COMPILE_IFELSE([
                     10:       AC_LANG_PROGRAM(
                     11:         [
                     12:          _Thread_local static int x = 42;
                     13:        ],
                     14:        []
                     15:       )
                     16:     ],
                     17:     [bird_cv_thread_local=yes],
                     18:     [bird_cv_thread_local=no]
                     19:     )
                     20:   )
                     21: ])
                     22: 
                     23: AC_DEFUN([BIRD_CHECK_PTHREADS],
                     24: [
                     25:   bird_tmp_cflags="$CFLAGS"
                     26:   CFLAGS="$CFLAGS -pthread"
                     27: 
                     28:   AC_CACHE_CHECK(
                     29:     [whether POSIX threads are available],
                     30:     [bird_cv_lib_pthreads],
                     31:     [
                     32:       AC_LINK_IFELSE(
                     33:        [
                     34:          AC_LANG_PROGRAM(
                     35:            [ #include <pthread.h> ],
                     36:            [
                     37:              pthread_t pt;
                     38:              pthread_create(&pt, NULL, NULL, NULL);
                     39:              pthread_spinlock_t lock;
                     40:              pthread_spin_lock(&lock);
                     41:            ]
                     42:          )
                     43:        ],
                     44:        [bird_cv_lib_pthreads=yes],
                     45:        [bird_cv_lib_pthreads=no]
                     46:       )
                     47:     ]
                     48:   )
                     49: 
                     50:   CFLAGS="$bird_tmp_cflags"
                     51: ])
                     52: 
                     53: AC_DEFUN([BIRD_CHECK_MPLS_KERNEL],
                     54: [
                     55:   AC_CACHE_CHECK(
                     56:     [for Linux MPLS headers],
                     57:     [bird_cv_mpls_kernel],
                     58:     [
                     59:       AC_COMPILE_IFELSE(
                     60:        [
                     61:          AC_LANG_PROGRAM(
                     62:            [
                     63:              #include <linux/lwtunnel.h>
                     64:              #include <linux/netlink.h>
                     65:              #include <linux/rtnetlink.h>
                     66:              #include <sys/socket.h>
                     67:              void t(int arg);
                     68:            ],
                     69:            [
                     70:              t(AF_MPLS);
                     71:              t(RTA_VIA);
                     72:              t(RTA_NEWDST);
                     73:              t(RTA_ENCAP_TYPE);
                     74:              t(RTA_ENCAP);
                     75:              struct rtvia rtvia;
                     76:              t(LWTUNNEL_ENCAP_MPLS);
                     77:            ]
                     78:          )
                     79:        ],
                     80:        [bird_cv_mpls_kernel=yes],
                     81:        [bird_cv_mpls_kernel=no]
                     82:       )
                     83:     ]
                     84:   )
                     85: ])
                     86: 
                     87: AC_DEFUN([BIRD_CHECK_ANDROID_GLOB],
                     88: [
                     89:   AC_CACHE_CHECK(
                     90:     [for glob.h],
                     91:     [bird_cv_lib_glob],
                     92:     AC_LINK_IFELSE([
                     93:       AC_LANG_PROGRAM(
                     94:         [
                     95:          #include <glob.h>
                     96:          #include <stdlib.h>
                     97:        ],
                     98:         [ glob(NULL, 0, NULL, NULL); ]
                     99:       )
                    100:     ],
                    101:     [bird_cv_lib_glob=yes],
                    102:       [
                    103:         bird_tmp_libs="$LIBS"
                    104:         LIBS="$LIBS -landroid-glob"
                    105:         AC_LINK_IFELSE([
                    106:           AC_LANG_PROGRAM(
                    107:             [
                    108:              #include <glob.h>
                    109:              #include <stdlib.h>
                    110:            ],
                    111:             [ glob(NULL, 0, NULL, NULL); ]
                    112:           )
                    113:         ],
                    114:         [bird_cv_lib_glob=-landroid-glob],
                    115:         [bird_cv_lib_glob=no]
                    116:         )
                    117:         LIBS="$bird_tmp_libs"
                    118:       ]
                    119:     )
                    120:   )
                    121: ])
                    122: 
                    123: AC_DEFUN([BIRD_CHECK_ANDROID_LOG],
                    124: [
                    125:   AC_CACHE_CHECK(
                    126:     [for syslog lib flags],
                    127:     [bird_cv_lib_log],
                    128:     AC_LINK_IFELSE([
                    129:       AC_LANG_PROGRAM(
                    130:         [ #include <sys/syslog.h> ],
                    131:         [ syslog(0, ""); ]
                    132:       )
                    133:     ],
                    134:     [bird_cv_lib_log=yes],
                    135:       [
                    136:         bird_tmp_libs="$LIBS"
                    137:         LIBS="$LIBS -llog"
                    138:         AC_LINK_IFELSE([
                    139:           AC_LANG_PROGRAM(
                    140:             [ #include <sys/syslog.h> ],
                    141:             [ syslog(0, ""); ]
                    142:           )
                    143:         ],
                    144:         [bird_cv_lib_log=-llog],
                    145:         [bird_cv_lib_log=no]
                    146:         )
                    147:         LIBS="$bird_tmp_libs"
                    148:       ]
                    149:     )
                    150:   )
                    151: ])
                    152: 
                    153: AC_DEFUN([BIRD_CHECK_LTO],
                    154: [
                    155:   bird_tmp_cflags="$CFLAGS"
                    156:   bird_tmp_ldflags="$LDFLAGS"
                    157:   CFLAGS="-flto"
                    158:   LDFLAGS="-flto=4"
                    159: 
                    160:   AC_CACHE_CHECK(
                    161:     [whether link time optimizer is available],
                    162:     [bird_cv_c_lto],
                    163:     [
                    164:       AC_LINK_IFELSE(
                    165:        [AC_LANG_PROGRAM()],
                    166:        [bird_cv_c_lto=yes],
                    167:        [bird_cv_c_lto=no]
                    168:       )
                    169:     ]
                    170:   )
                    171: 
                    172:   CFLAGS="$bird_tmp_cflags"
                    173:   LDFLAGS="$bird_tmp_ldflags"
                    174: ])
                    175: 
                    176: 
                    177: AC_DEFUN([BIRD_CHECK_GCC_OPTION],
                    178: [
                    179:   bird_tmp_cflags="$CFLAGS"
                    180:   CFLAGS="$3 $2"
                    181: 
                    182:   AC_CACHE_CHECK(
                    183:     [whether CC supports $2],
                    184:     [$1],
                    185:     [
                    186:       AC_COMPILE_IFELSE(
                    187:        [AC_LANG_PROGRAM()],
                    188:        [$1=yes],
                    189:        [$1=no]
                    190:       )
                    191:     ]
                    192:   )
                    193: 
                    194:   CFLAGS="$bird_tmp_cflags"
                    195: ])
                    196: 
                    197: AC_DEFUN([BIRD_ADD_GCC_OPTION],
                    198: [
                    199:   if test "$$1" = yes ; then
                    200:     CFLAGS="$CFLAGS $2"
                    201:   fi
                    202: ])
                    203: 
                    204: # BIRD_CHECK_PROG_FLAVOR_GNU(PROGRAM-PATH, IF-SUCCESS, [IF-FAILURE])
                    205: # copied from autoconf internal _AC_PATH_PROG_FLAVOR_GNU
                    206: AC_DEFUN([BIRD_CHECK_PROG_FLAVOR_GNU],
                    207: [
                    208:   # Check for GNU $1
                    209:   case `"$1" --version 2>&1` in
                    210:     *GNU*)
                    211:       $2
                    212:       ;;
                    213:   m4_ifval([$3],
                    214:     [*)
                    215:       $3
                    216:       ;;
                    217:     ]
                    218:   )
                    219:   esac
                    220: ])
                    221: 
                    222: AC_DEFUN([BIRD_CHECK_BISON_VERSION],
                    223: [
                    224:   $1=`bison --version | ( read line; echo ${line##* } )`
                    225:   case "$$1" in
                    226:     1.* | 2.0* | 2.1* | 2.2* | 2.3*)
                    227:       AC_MSG_ERROR([Provided Bison version $$1 is too old, need at least 2.4])
                    228:       ;;
                    229:     2.*)
                    230:       bird_bison_synclines=no
                    231:       bird_bison_enhanced_error=no
                    232:       ;;
                    233:     3.* | 4.* | 5.* | 6.* | 7.* | 8.* | 9.*)
                    234:       bird_bison_synclines=yes
                    235:       bird_bison_enhanced_error=yes
                    236:       ;;
                    237:     *)
                    238:       AC_MSG_ERROR([Couldn't parse Bison version $$1. Call the developers for help.])
                    239:       ;;
                    240:   esac
                    241: ])

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>