Merge commit 'ronnie/master'
[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 -m` in
18   x86_64)
19     libdir='${exec_prefix}/lib64'
20     ;;
21   *)
22     libdir='${exec_prefix}/lib'
23     ;;
24 esac
25
26 case `uname` in
27   Linux*)
28     CTDB_SYSTEM_OBJ=common/system_linux.o
29     CTDB_SCSI_IO=bin/scsi_io
30     CTDB_PCAP_LDFLAGS=
31     ;;
32   AIX*)
33     CTDB_SYSTEM_OBJ=common/system_aix.o
34     CTDB_SCSI_IO=
35     CTDB_PCAP_LDFLAGS=-lpcap
36     ;;
37   *)
38     echo unknown system  cant configure
39     exit
40     ;;
41 esac
42
43 AC_LIBREPLACE_ALL_CHECKS
44
45 if test "$ac_cv_prog_gcc" = yes; then
46    CFLAGS="$CFLAGS -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings"
47 fi
48
49 LOGDIR='${localstatedir}/log'
50 AC_ARG_WITH([logdir],
51         [  --with-logdir=DIR       path to log directory [[LOCALSTATEDIR/log]]],
52         LOGDIR=$withval)
53 if test ! -z "$LOGDIR"; then
54   if test "$LOGDIR" = "yes" -o "$LOGDIR" = "no"; then
55     AC_MSG_ERROR([--with-logdir must specify a path])
56   fi
57 fi
58 AC_SUBST(LOGDIR)
59
60 AC_CONFIG_HEADER(config.h)
61
62 EXTRA_OBJ=""
63
64 m4_include(libpopt.m4)
65 m4_include(libtalloc.m4)
66 m4_include(libtdb.m4)
67 m4_include(libevents.m4)
68 m4_include(ib/config.m4)
69
70 AC_CHECK_HEADERS(libipq.h linux/netfilter.h)
71
72 IPQ_LIBS=""
73 if test x"$ac_cv_header_libipq_h" = x"yes"; then
74    IPQ_LIBS="-lipq"
75 fi
76 AC_SUBST(IPQ_LIBS)
77
78 AC_CHECK_HEADERS(sched.h)
79 AC_CHECK_FUNCS(sched_setscheduler)
80
81 AC_CACHE_CHECK([for sin_len in sock],ctdb_cv_HAVE_SOCK_SIN_LEN,[
82 AC_TRY_COMPILE([#include <sys/types.h>
83 #include <sys/socket.h>
84 #include <netinet/in.h>],
85 [struct sockaddr_in sock; sock.sin_len = sizeof(sock);],
86 ctdb_cv_HAVE_SOCK_SIN_LEN=yes,ctdb_cv_HAVE_SOCK_SIN_LEN=no)])
87 if test x"$ctdb_cv_HAVE_SOCK_SIN_LEN" = x"yes"; then
88     AC_DEFINE(HAVE_SOCK_SIN_LEN,1,[Whether the sockaddr_in struct has a sin_len property])
89 fi
90
91 AC_SUBST(EXTRA_OBJ)
92 AC_SUBST(CTDB_SYSTEM_OBJ)
93 AC_SUBST(CTDB_SCSI_IO)
94 AC_SUBST(CTDB_PCAP_LDFLAGS)
95
96 AC_OUTPUT(Makefile ctdb.pc)