Merge branch 'obnox'
[sahlberg/ctdb.git] / configure.ac
1 AC_PREREQ(2.50)
2 AC_DEFUN([AC_CHECK_LIB_EXT], [
3         AC_CHECK_LIB([$1],[$3],[$4],[$5],[$7])
4         ac_cv_lib_ext_$1_$3=$ac_cv_lib_$1_$3
5 ])
6 AC_DEFUN([AC_CHECK_FUNC_EXT], [
7         AC_CHECK_FUNC([$1],[$3],[$4])
8         ac_cv_func_ext_$1=$ac_cv_func_$1
9 ])
10 AC_DEFUN([SMB_MODULE_DEFAULT], [echo -n ""])
11 AC_DEFUN([SMB_LIBRARY_ENABLE], [echo -n ""])
12 AC_DEFUN([SMB_EXT_LIB], [echo -n ""])
13 AC_DEFUN([SMB_ENABLE], [echo -n ""])
14 AC_INIT(ctdb.h)
15 AC_CONFIG_SRCDIR([server/ctdbd.c])
16
17 case `uname` in
18   Linux*)
19     CTDB_SYSTEM_OBJ=common/system_linux.o
20     CTDB_SCSI_IO=bin/scsi_io
21     CTDB_PCAP_LDFLAGS=
22     ;;
23   AIX*)
24     CTDB_SYSTEM_OBJ=common/system_aix.o
25     CTDB_SCSI_IO=
26     CTDB_PCAP_LDFLAGS=-lpcap
27     ;;
28   *)
29     echo unknown system  cant configure
30     exit
31     ;;
32 esac
33
34 AC_LIBREPLACE_ALL_CHECKS
35
36 if test "$ac_cv_prog_gcc" = yes; then
37    CFLAGS="$CFLAGS -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings"
38 fi
39
40 LOGDIR='${localstatedir}/log'
41 AC_ARG_WITH([logdir],
42         [  --with-logdir=DIR       path to log directory [[LOCALSTATEDIR/log]]],
43         LOGDIR=$withval)
44 if test ! -z "$LOGDIR"; then
45   if test "$LOGDIR" = "yes" -o "$LOGDIR" = "no"; then
46     AC_MSG_ERROR([--with-logdir must specify a path])
47   fi
48 fi
49 AC_SUBST(LOGDIR)
50
51 AC_CONFIG_HEADER(config.h)
52
53 EXTRA_OBJ=""
54
55 m4_include(libpopt.m4)
56 m4_include(libtalloc.m4)
57 m4_include(libtdb.m4)
58 m4_include(libevents.m4)
59 m4_include(ib/config.m4)
60
61 AC_CHECK_HEADERS(libipq.h linux/netfilter.h)
62
63 IPQ_LIBS=""
64 if test x"$ac_cv_header_libipq_h" = x"yes"; then
65    IPQ_LIBS="-lipq"
66 fi
67 AC_SUBST(IPQ_LIBS)
68
69 AC_CHECK_HEADERS(sched.h)
70 AC_CHECK_FUNCS(sched_setscheduler)
71
72 AC_CACHE_CHECK([for sin_len in sock],ctdb_cv_HAVE_SOCK_SIN_LEN,[
73 AC_TRY_COMPILE([#include <sys/types.h>
74 #include <sys/socket.h>
75 #include <netinet/in.h>],
76 [struct sockaddr_in sock; sock.sin_len = sizeof(sock);],
77 ctdb_cv_HAVE_SOCK_SIN_LEN=yes,ctdb_cv_HAVE_SOCK_SIN_LEN=no)])
78 if test x"$ctdb_cv_HAVE_SOCK_SIN_LEN" = x"yes"; then
79     AC_DEFINE(HAVE_SOCK_SIN_LEN,1,[Whether the sockaddr_in struct has a sin_len property])
80 fi
81
82 AC_SUBST(EXTRA_OBJ)
83 AC_SUBST(CTDB_SYSTEM_OBJ)
84 AC_SUBST(CTDB_SCSI_IO)
85 AC_SUBST(CTDB_PCAP_LDFLAGS)
86
87 AC_OUTPUT(Makefile)