EXTRA_CFLAGS=-Wno-format-zero-length -Wno-deprecated-declarations -fPIC
endif
-CFLAGS=@CPPFLAGS@ -g -I$(srcdir)/include -Iinclude -Ilib -Ilib/util -I$(srcdir) \
+CFLAGS=@CPPFLAGS@ -g -I$(srcdir)/include -I$(srcdir)/include/internal \
+ -Iinclude -Ilib -Ilib/util -I$(srcdir) \
$(TALLOC_CFLAGS) $(TEVENT_CFLAGS) $(TDB_CFLAGS) -I@libreplacedir@ \
-DVARDIR=\"$(localstatedir)\" -DETCDIR=\"$(etcdir)\" \
-DCTDB_VARDIR=\"$(localstatedir)/lib/ctdb\" \
CTDB_COMMON_OBJ = common/ctdb_io.o common/ctdb_util.o \
common/ctdb_ltdb.o common/ctdb_message.o common/cmdline.o \
lib/util/debug.o common/rb_tree.o @CTDB_SYSTEM_OBJ@ common/system_common.o \
- common/ctdb_logging.o common/ctdb_fork.o
+ common/ctdb_logging.o common/ctdb_fork.o common/system_util.o
CTDB_TCP_OBJ = tcp/tcp_connect.o tcp/tcp_io.o tcp/tcp_init.o
+CTDB_IB_OBJ = @INFINIBAND_WRAPPER_OBJ@
+
CTDB_EXTERNAL_OBJ = $(POPT_OBJ) $(TALLOC_OBJ) $(TDB_OBJ) \
$(REPLACE_OBJ) $(EXTRA_OBJ) $(TEVENT_OBJ) $(SOCKET_WRAPPER_OBJ)
server/ctdb_keepalive.o server/ctdb_logging.o server/ctdb_uptime.o \
server/ctdb_vacuum.o server/ctdb_banning.o server/ctdb_statistics.o \
server/ctdb_update_record.o server/ctdb_lock.o \
- $(CTDB_CLIENT_OBJ) $(CTDB_TCP_OBJ) @INFINIBAND_WRAPPER_OBJ@
+ $(CTDB_CLIENT_OBJ) $(CTDB_TCP_OBJ) $(CTDB_IB_OBJ)
TEST_BINS=tests/bin/ctdb_bench tests/bin/ctdb_fetch tests/bin/ctdb_fetch_one \
tests/bin/ctdb_fetch_readonly_once tests/bin/ctdb_fetch_readonly_loop \
@INFINIBAND_BINS@
BINS = bin/ctdb @CTDB_SCSI_IO@ bin/smnotify bin/ping_pong bin/ltdbtool \
- bin/ctdb_lock_helper @CTDB_PMDA@
+ bin/ctdb_lock_helper bin/ctdb_event_helper @CTDB_PMDA@
SBINS = bin/ctdbd
@echo Generating $@
$(WRAPPER) ./packaging/mkversion.sh
+server/ctdb_daemon.o: $(CTDB_VERSION_H)
+tools/ctdb.o: $(CTDB_VERSION_H)
+
bin/ctdbd: $(CTDB_SERVER_OBJ)
@echo Linking $@
$(WRAPPER) $(CC) $(CFLAGS) -o $@ $(CTDB_SERVER_OBJ) $(LIB_FLAGS)
bin/ltdbtool: tools/ltdbtool.o $(TDB_OBJ)
@echo Linking $@
- $(WRAPPER) $(CC) $(CFLAGS) -o $@ $+ $(TDB_LIBS) $(LIB_FLAGS)
+ $(WRAPPER) $(CC) $(CFLAGS) -o $@ $+ $(LIB_FLAGS)
+
+HELPER_COMMON_OBJ = common/system_util.o common/ctdb_logging.o \
+ lib/util/debug.o lib/util/util_time.o lib/util/util_file.o
+
+bin/ctdb_lock_helper: server/ctdb_lock_helper.o $(HELPER_COMMON_OBJ) $(CTDB_EXTERNAL_OBJ)
+ @echo Linking $@
+ $(WRAPPER) $(CC) $(CFLAGS) -o $@ server/ctdb_lock_helper.o $(HELPER_COMMON_OBJ) $(CTDB_EXTERNAL_OBJ) $(LIB_FLAGS)
-bin/ctdb_lock_helper: server/ctdb_lock_helper.o lib/util/util_file.o $(CTDB_EXTERNAL_OBJ)
+bin/ctdb_event_helper: server/ctdb_event_helper.o $(HELPER_COMMON_OBJ) $(CTDB_EXTERNAL_OBJ)
@echo Linking $@
- $(WRAPPER) $(CC) $(CFLAGS) -o $@ server/ctdb_lock_helper.o lib/util/util_file.o $(CTDB_EXTERNAL_OBJ) $(TDB_LIBS) $(LIB_FLAGS)
+ $(WRAPPER) $(CC) $(CFLAGS) -o $@ server/ctdb_event_helper.o $(HELPER_COMMON_OBJ) $(CTDB_EXTERNAL_OBJ) $(LIB_FLAGS)
bin/smnotify: utils/smnotify/gen_xdr.o utils/smnotify/gen_smnotify.o utils/smnotify/smnotify.o $(POPT_OBJ)
@echo Linking $@
tests/src/ctdb_takeover_tests.o: tests/src/ctdb_takeover_tests.c $(CTDBD_TEST_C)
-tests/bin/ctdb_takeover_tests: $(CTDB_TEST_OBJ) tests/src/ctdb_takeover_tests.o
+tests/bin/ctdb_takeover_tests: $(CTDB_TEST_OBJ) tests/src/ctdb_takeover_tests.o $(CTDB_IB_OBJ)
@echo Linking $@
- $(WRAPPER) $(CC) $(CFLAGS) -o $@ tests/src/ctdb_takeover_tests.o $(CTDB_TEST_OBJ) $(LIB_FLAGS)
+ $(WRAPPER) $(CC) $(CFLAGS) -o $@ tests/src/ctdb_takeover_tests.o $(CTDB_IB_OBJ) $(CTDB_TEST_OBJ) $(LIB_FLAGS)
tests/src/ctdb_functest.o: tests/src/ctdb_functest.c tests/src/ctdb_test.c $(CTDB_TEST_C)
@echo Linking $@
$(WRAPPER) $(CC) $(CFLAGS) -o $@ $^ $(LIB_FLAGS)
-tests/bin/ibwrapper_test: $(CTDB_CLIENT_OBJ) ib/ibwrapper_test.o
+tests/bin/ibwrapper_test: $(CTDB_CLIENT_OBJ) ib/ibwrapper_test.o $(CTDB_IB_OBJ)
@echo Linking $@
- $(WRAPPER) $(CC) $(CFLAGS) -o $@ ib/ibwrapper_test.o $(CTDB_CLIENT_OBJ) $(LIB_FLAGS)
+ $(WRAPPER) $(CC) $(CFLAGS) -o $@ ib/ibwrapper_test.o $(CTDB_CLIENT_OBJ) $(CTDB_IB_OBJ) $(LIB_FLAGS)
manpages:
$(MAKE) -C doc
rm -rf bin
rm -f config.log config.status config.cache config.h
rm -f Makefile
+ rm -f $(CTDB_VERSION_H)
install: all manpages $(PMDA_INSTALL)
mkdir -p $(DESTDIR)$(libdir)/pkgconfig
$(INSTALLCMD) -m 755 bin/ping_pong $(DESTDIR)$(bindir)
$(INSTALLCMD) -m 755 bin/ltdbtool $(DESTDIR)$(bindir)
$(INSTALLCMD) -m 755 bin/ctdb_lock_helper $(DESTDIR)$(bindir)
+ $(INSTALLCMD) -m 755 bin/ctdb_event_helper $(DESTDIR)$(bindir)
${INSTALLCMD} -m 644 include/ctdb.h $(DESTDIR)$(includedir)
${INSTALLCMD} -m 644 include/ctdb_client.h $(DESTDIR)$(includedir)
${INSTALLCMD} -m 644 include/ctdb_protocol.h $(DESTDIR)$(includedir)
if [ -f doc/ctdb.1 ];then ${INSTALLCMD} -d $(DESTDIR)$(mandir)/man1; fi
if [ -f doc/ctdb.1 ];then ${INSTALLCMD} -m 644 doc/ctdb.1 $(DESTDIR)$(mandir)/man1; fi
if [ -f doc/ctdbd.1 ];then ${INSTALLCMD} -m 644 doc/ctdbd.1 $(DESTDIR)$(mandir)/man1; fi
+ if [ -f doc/ctdbd_wrapper.1 ];then ${INSTALLCMD} -m 644 doc/ctdbd_wrapper.1 $(DESTDIR)$(mandir)/man1; fi
if [ -f doc/onnode.1 ];then ${INSTALLCMD} -m 644 doc/onnode.1 $(DESTDIR)$(mandir)/man1; fi
if [ -f doc/ltdbtool.1 ]; then ${INSTALLCMD} -m 644 doc/ltdbtool.1 $(DESTDIR)$(mandir)/man1; fi
if [ -f doc/ping_pong.1 ];then ${INSTALLCMD} -m 644 doc/ping_pong.1 $(DESTDIR)$(mandir)/man1; fi
+ if [ -f doc/ctdb.7 ]; then ${INSTALLCMD} -d $(DESTDIR)$(mandir)/man7; fi
+ if [ -f doc/ctdb.7 ]; then ${INSTALLCMD} -m 644 doc/ctdb.7 $(DESTDIR)$(mandir)/man7; fi
+ if [ -f doc/ctdb-statistics.7 ]; then ${INSTALLCMD} -m 644 doc/ctdb-statistics.7 $(DESTDIR)$(mandir)/man7; fi
+ if [ -f doc/ctdb-tunables.7 ]; then ${INSTALLCMD} -m 644 doc/ctdb-tunables.7 $(DESTDIR)$(mandir)/man7; fi
+ if [ -f doc/ctdbd.conf.5 ]; then ${INSTALLCMD} -d $(DESTDIR)$(mandir)/man5; fi
+ if [ -f doc/ctdbd.conf.5 ]; then ${INSTALLCMD} -m 644 doc/ctdbd.conf.5 $(DESTDIR)$(mandir)/man5; fi
${INSTALLCMD} -m 755 config/notify.sh $(DESTDIR)$(etcdir)/ctdb
${INSTALLCMD} -m 755 config/debug-hung-script.sh $(DESTDIR)$(etcdir)/ctdb
${INSTALLCMD} -m 755 config/ctdb-crash-cleanup.sh $(DESTDIR)$(etcdir)/ctdb