2 AC_INIT(ctdb, m4_esyscmd([grep 'Version:' ./packaging/RPM/ctdb.spec 2>/dev/null | head -1 | sed -e 's/[ \t]*Version:[ \t]*\([^ \t]*\)[ \t]*.*/\1/' | tr -d '\n']))
3 AC_DEFUN([SMB_MODULE_DEFAULT], [echo -n ""])
4 AC_DEFUN([SMB_LIBRARY_ENABLE], [echo -n ""])
5 AC_DEFUN([SMB_EXT_LIB], [echo -n ""])
6 AC_DEFUN([SMB_ENABLE], [echo -n ""])
7 AC_CONFIG_SRCDIR([server/ctdbd.c])
9 if test "${libdir}" = '${exec_prefix}/lib'; then
11 x86_64|ppc64|powerpc64)
12 libdir='${exec_prefix}/lib64'
15 libdir='${exec_prefix}/lib'
22 CTDB_SYSTEM_OBJ=common/system_linux.o
23 CTDB_SCSI_IO=bin/scsi_io
27 CTDB_SYSTEM_OBJ=common/system_aix.o
29 CTDB_PCAP_LDFLAGS=-lpcap
32 CTDB_SYSTEM_OBJ=common/system_kfreebsd.o
34 CTDB_PCAP_LDFLAGS=-lpcap
37 CTDB_SYSTEM_OBJ=common/system_freebsd.o
39 CTDB_PCAP_LDFLAGS=-lpcap
40 LDFLAGS="$LDFLAGS -L/usr/local/lib -lexecinfo"
42 CPPFLAGS="$CPPFLAGS -I/usr/local/include -D_FREEBSD_=1"
46 CTDB_SYSTEM_OBJ=common/system_gnu.o
48 CTDB_PCAP_LDFLAGS=-lpcap
51 echo unknown system cant configure
56 AC_LIBREPLACE_ALL_CHECKS
57 AC_LIBREPLACE_NETWORK_CHECKS
59 if test "$ac_cv_prog_gcc" = yes; then
60 CFLAGS="$CFLAGS -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings"
63 LOGDIR='${localstatedir}/log'
65 [ --with-logdir=DIR path to log directory [[LOCALSTATEDIR/log]]],
67 if test ! -z "$LOGDIR"; then
68 if test "$LOGDIR" = "yes" -o "$LOGDIR" = "no"; then
69 AC_MSG_ERROR([--with-logdir must specify a path])
74 SOCKPATH='/tmp/ctdb.socket'
75 AC_ARG_WITH([socketpath],
76 [ --with-socketpath=FILE path to CTDB daemon socket [[/tmp/ctdb.socket]]],
78 if test ! -z "$SOCKPATH"; then
79 if test "$SOCKPATH" = "yes" -o "$SOCKPATH" = "no"; then
80 AC_MSG_ERROR([--with-socketpath must specify a file path])
85 AC_CONFIG_HEADER(config.h)
89 m4_include(libpopt.m4)
90 m4_include(libtalloc.m4)
92 m4_include(libtevent.m4)
93 m4_include(ib/config.m4)
94 m4_include(lib/util/signal.m4)
95 m4_include(lib/util/fault.m4)
96 m4_include(lib/socket_wrapper/config.m4)
98 AC_CHECK_HEADERS(sched.h)
99 AC_CHECK_HEADERS(pcp/pmapi.h pcp/impl.h pcp/pmda.h, [], [],
100 [[#ifdef HAVE_PCP_PMAPI_H
101 # include <pcp/pmapi.h>
103 #ifdef HAVE_PCP_IMPL_H
104 # include <pcp/impl.h>
108 AC_CHECK_DECL([ETIME], [],[AC_DEFINE([ETIME], ETIMEDOUT, [ETIME on non-supporting platforms])], [
112 AC_CHECK_FUNCS(sched_setscheduler)
113 AC_CHECK_FUNCS(mlockall)
115 AC_CACHE_CHECK([for sin_len in sock],ctdb_cv_HAVE_SOCK_SIN_LEN,[
116 AC_TRY_COMPILE([#include <sys/types.h>
117 #include <sys/socket.h>
118 #include <netinet/in.h>],
119 [struct sockaddr_in sock; sock.sin_len = sizeof(sock);],
120 ctdb_cv_HAVE_SOCK_SIN_LEN=yes,ctdb_cv_HAVE_SOCK_SIN_LEN=no)])
121 if test x"$ctdb_cv_HAVE_SOCK_SIN_LEN" = x"yes"; then
122 AC_DEFINE(HAVE_SOCK_SIN_LEN,1,[Whether the sockaddr_in struct has a sin_len property])
125 if test x"$ac_cv_header_pcp_pmda_h" = x"yes"; then
126 CTDB_PMDA=bin/pmdactdb
127 CTDB_PMDA_INSTALL=install_pmda
135 AC_SUBST(CTDB_SYSTEM_OBJ)
136 AC_SUBST(CTDB_SCSI_IO)
137 AC_SUBST(CTDB_PCAP_LDFLAGS)
139 AC_SUBST(CTDB_PMDA_INSTALL)
141 AC_OUTPUT(Makefile ctdb.pc)