ldb: Fix linking against tevent library (rather than events)
[metze/samba/wip.git] / source4 / lib / ldb / Makefile.in
index ceadc3d9d6cebb56e102ba6015aa6853e76cfc37..5f59def4af94006c4970ab72fc89d431ba881d2b 100644 (file)
@@ -11,14 +11,18 @@ includedir = @includedir@
 libdir = @libdir@
 bindir = @bindir@
 mandir = @mandir@
-VPATH = @srcdir@:@tdbdir@:@tallocdir@:@libreplacedir@:@poptdir@
+VPATH = @srcdir@:@libreplacedir@
 srcdir = @srcdir@
 builddir = @builddir@
+sharedbuilddir = @sharedbuilddir@
+INSTALLCMD = @INSTALL@
 SLAPD = @SLAPD@
-SWIG = swig
 EXTRA_OBJ=@EXTRA_OBJ@
 TESTS=test-tdb.sh @TESTS@
 PACKAGE_VERSION = @PACKAGE_VERSION@
+PYTHON = @PYTHON@
+PYTHON_CONFIG = @PYTHON_CONFIG@
+ldbdir = $(srcdir)
 
 TALLOC_LIBS = @TALLOC_LIBS@
 TALLOC_CFLAGS = @TALLOC_CFLAGS@
@@ -28,6 +32,10 @@ TDB_LIBS = @TDB_LIBS@
 TDB_CFLAGS = @TDB_CFLAGS@
 TDB_OBJ = @TDB_OBJ@
 
+TEVENT_LIBS = @TEVENT_LIBS@
+TEVENT_CFLAGS = @TEVENT_CFLAGS@
+TEVENT_OBJ = @TEVENT_OBJ@
+
 POPT_LIBS = @POPT_LIBS@
 POPT_CFLAGS = @POPT_CFLAGS@
 POPT_OBJ = @POPT_OBJ@
@@ -47,17 +55,17 @@ LIBS = @LIBS@
 
 PICFLAG = @PICFLAG@
 CFLAGS=-g -I$(srcdir)/include -Iinclude -I$(srcdir) -I$(srcdir)/.. \
-       $(POPT_CFLAGS) $(TALLOC_CFLAGS) $(TDB_CFLAGS) \
+       $(POPT_CFLAGS) $(TALLOC_CFLAGS) $(TDB_CFLAGS) $(TEVENT_CFLAGS) \
        -DLIBDIR=\"$(libdir)\" -DSHLIBEXT=\"$(SHLIBEXT)\" -DUSE_MMAP=1 @CFLAGS@
 
 MDLD = @MDLD@
 MDLD_FLAGS = @MDLD_FLAGS@
 
-OBJS = $(MODULES_OBJ) $(COMMON_OBJ) $(LDB_TDB_OBJ) $(TDB_OBJ) $(TALLOC_OBJ) $(POPT_OBJ) $(LDB_MAP_OBJ) @LIBREPLACEOBJ@ $(EXTRA_OBJ) 
+OBJS = $(MODULES_OBJ) $(COMMON_OBJ) $(LDB_TDB_OBJ) $(TDB_OBJ) $(TEVENT_OBJ) $(TALLOC_OBJ) $(POPT_OBJ) $(LDB_MAP_OBJ) @LIBREPLACEOBJ@ $(EXTRA_OBJ) 
 
 headers = $(srcdir)/include/ldb.h $(srcdir)/include/ldb_errors.h $(srcdir)/include/ldb_handlers.h
 
-BINS = bin/ldbadd bin/ldbsearch bin/ldbdel bin/ldbmodify bin/ldbedit bin/ldbrename bin/ldbtest bin/oLschema2ldif
+BINS = bin/ldbadd bin/ldbsearch bin/ldbdel bin/ldbmodify bin/ldbedit bin/ldbrename bin/ldbtest
 
 EXAMPLES = examples/ldbreader examples/ldifreader
 
@@ -65,30 +73,45 @@ DIRS = lib bin common ldb_tdb ldb_ldap ldb_sqlite3 modules tools examples
 
 default: all
 
+include $(ldbdir)/rules.mk
+
 nss: nssdir all $(NSS_LIB)
 
 nssdir:
        @mkdir -p $(NSSDIR)
 
 SONAME = libldb.$(SHLIBEXT).0
-SOLIB = lib/libldb.$(SHLIBEXT).$(PACKAGE_VERSION)
+SOLIB = libldb.$(SHLIBEXT).$(PACKAGE_VERSION)
+LIBSOLIB = lib/$(SOLIB)
 STATICLIB = lib/libldb.a
 
-lib/$(SONAME): $(SOLIB)
+lib/$(SONAME): $(LIBSOLIB)
        ln -fs libldb.$(SHLIBEXT).$(PACKAGE_VERSION) $@
 
-lib/libldb.$(SHLIBEXT): $(SOLIB)
+lib/libldb.$(SHLIBEXT): $(LIBSOLIB)
        ln -fs libldb.$(SHLIBEXT).$(PACKAGE_VERSION) $@
 
-lib/libnss_ldb.$(SHLIBEXT).2: $(NSS_OBJ) $(SOLIB)
-       $(SHLD) $(SHLD_FLAGS) -o $@ $(NSS_OBJ) $(LDFLAGS) $(SOLIB) @SONAMEFLAG@libnss_ldb.$(SHLIBEXT).2
+lib/libnss_ldb.$(SHLIBEXT).2: $(NSS_OBJ) $(LIBSOLIB)
+       $(SHLD) $(SHLD_FLAGS) -o $@ $(NSS_OBJ) $(LDFLAGS) $(LIBSOLIB) @SONAMEFLAG@libnss_ldb.$(SHLIBEXT).2
 
-$(SOLIB): $(OBJS)
-       $(SHLD) $(SHLD_FLAGS) -o $@ $(OBJS) $(LDFLAGS) $(LIBS) $(TALLOC_LIBS) $(TDB_LIBS) $(LIBDL) $(LDAP_LIBS) @SONAMEFLAG@$(SONAME)
+$(LIBSOLIB): $(OBJS)
+       $(SHLD) $(SHLD_FLAGS) -o $@ $(OBJS) $(LDFLAGS) $(LIBS) $(TALLOC_LIBS) $(TDB_LIBS) $(TEVENT_LIBS) $(LIBDL) $(LDAP_LIBS) @SONAMEFLAG@$(SONAME)
+       ln -sf libldb.$(SHLIBEXT).$(PACKAGE_VERSION) lib/libldb.$(SHLIBEXT)
 
-all: showflags dirs $(OBJS) $(STATICLIB) $(SOLIB) $(BINS) $(EXAMPLES) manpages \
+all: showflags dirs $(OBJS) $(STATICLIB) $(LIBSOLIB) $(BINS) $(EXAMPLES) manpages \
        @PYTHON_BUILD_TARGET@
 
+shared-build: all
+       ${INSTALLCMD} -d $(sharedbuilddir)/lib
+       ${INSTALLCMD} -m 644 $(STATICLIB) $(sharedbuilddir)/lib
+       ${INSTALLCMD} -m 755 $(LIBSOLIB) $(sharedbuilddir)/lib
+       ln -sf $(SOLIB) $(sharedbuilddir)/lib/$(SONAME)
+       ln -sf $(SOLIB) $(sharedbuilddir)/lib/libldb.so
+       ${INSTALLCMD} -d $(sharedbuilddir)/include
+       ${INSTALLCMD} -m 644 $(srcdir)/include/ldb.h $(sharedbuilddir)/include
+       ${INSTALLCMD} -m 644 $(srcdir)/include/ldb_errors.h $(sharedbuilddir)/include
+       ${INSTALLCMD} -m 644 $(srcdir)/include/ldb_handlers.h $(sharedbuilddir)/include
+
 dirs:
        @mkdir -p $(DIRS)
 
@@ -100,7 +123,7 @@ doxygen::
 
 clean::
        rm -f *.o */*.o *.gcov */*.gc?? tdbtest.ldb*
-       rm -f $(BINS) $(TDB_OBJ) $(TALLOC_OBJ) $(STATICLIB) $(NSS_LIB) $(SOLIB)
+       rm -f $(BINS) $(TDB_OBJ) $(TALLOC_OBJ) $(STATICLIB) $(NSS_LIB) $(LIBSOLIB)
        rm -f $(POPT_OBJ)
        rm -f man/*.1 man/*.3 man/*.html
        rm -f $(EXAMPLES)
@@ -108,24 +131,23 @@ clean::
        rm -rf tests/schema/
 
 distclean:: clean
-       rm -f *~ */*~
        rm -rf bin lib
        rm -f config.log config.status config.cache include/config.h
        rm -f ldb.pc
        rm -f Makefile
 
 realdistclean:: distclean
-       rm -f configure.in include/config.h.in
+       rm -f configure include/config.h.in
 
-check:: test check-soloading
+check:: test @PYTHON_CHECK_TARGET@
 
-check-soloading: sample_module.$(SHLIBEXT)
+check-soloading: sample.$(SHLIBEXT)
        LDB_MODULES_PATH=$(builddir) $(srcdir)/tests/test-soloading.sh
 
-test: all check-soloading
+test:: all check-soloading
        for t in $(TESTS); do echo STARTING $${t}; $(srcdir)/tests/$${t} || exit 1; done
 
-valgrindtest: all
+valgrindtest:: all
        for t in $(TESTS); do echo STARTING $${t}; VALGRIND="valgrind -q --db-attach=yes --num-callers=30" $(srcdir)/tests/$${t} || exit 1; done
 
 installcheck:: install test
@@ -140,7 +162,7 @@ installheaders:: installdirs
        cp $(headers) $(DESTDIR)$(includedir)
 
 installlibs:: installdirs
-       cp $(STATICLIB) $(SOLIB) $(DESTDIR)$(libdir)
+       cp $(STATICLIB) $(LIBSOLIB) $(DESTDIR)$(libdir)
        cp ldb.pc $(DESTDIR)$(libdir)/pkgconfig
 
 installbin:: installdirs
@@ -157,5 +179,4 @@ gcov::
        $(GCOV) -po modules $(srcdir)/modules/*.c 2| tee modules.report.gcov
        $(GCOV) -po tools $(srcdir)/tools/*.c 2| tee tools.report.gcov
 
-include ldb.mk
-include rules.mk
+include $(ldbdir)/ldb.mk