Make up the right dependencies now that ldb depends on libevents
[metze/samba/wip.git] / source / lib / ldb / config.mk
index 66e6075ed5e0bb3688d60c54c09f727b6ab22723..40b4e31cc7357dcc95f51cf73fd93f362593287e 100644 (file)
 ################################################
 # Start MODULE ldb_asq
 [MODULE::ldb_asq]
-PRIVATE_DEPENDENCIES = LIBTALLOC
-CFLAGS = -Ilib/ldb/include
-INIT_FUNCTION = ldb_asq_init
-SUBSYSTEM = ldb
-OBJ_FILES = \
-               modules/asq.o
+PRIVATE_DEPENDENCIES = LIBTALLOC LIBEVENTS
+CFLAGS = -I$(ldbdir)/include
+INIT_FUNCTION = LDB_MODULE(asq)
+SUBSYSTEM = LIBLDB
+
+ldb_asq_OBJ_FILES = $(ldbdir)/modules/asq.o
 # End MODULE ldb_asq
 ################################################
 
 ################################################
 # Start MODULE ldb_server_sort
 [MODULE::ldb_server_sort]
-PRIVATE_DEPENDENCIES = LIBTALLOC
-CFLAGS = -Ilib/ldb/include
-INIT_FUNCTION = ldb_sort_init
-SUBSYSTEM = ldb
-OBJ_FILES = \
-               modules/sort.o
+PRIVATE_DEPENDENCIES = LIBTALLOC LIBEVENTS
+CFLAGS = -I$(ldbdir)/include
+INIT_FUNCTION = LDB_MODULE(server_sort)
+SUBSYSTEM = LIBLDB
+
 # End MODULE ldb_sort
 ################################################
+ldb_server_sort_OBJ_FILES = $(ldbdir)/modules/sort.o
 
 ################################################
 # Start MODULE ldb_paged_results
 [MODULE::ldb_paged_results]
-INIT_FUNCTION = ldb_paged_results_init
-CFLAGS = -Ilib/ldb/include
-PRIVATE_DEPENDENCIES = LIBTALLOC
-SUBSYSTEM = ldb
-OBJ_FILES = \
-               modules/paged_results.o
+INIT_FUNCTION = LDB_MODULE(paged_results)
+CFLAGS = -I$(ldbdir)/include
+PRIVATE_DEPENDENCIES = LIBTALLOC LIBEVENTS
+SUBSYSTEM = LIBLDB
 # End MODULE ldb_paged_results
 ################################################
 
+ldb_paged_results_OBJ_FILES = $(ldbdir)/modules/paged_results.o
+
 ################################################
 # Start MODULE ldb_paged_results
 [MODULE::ldb_paged_searches]
-INIT_FUNCTION = ldb_paged_searches_init
-CFLAGS = -Ilib/ldb/include
-PRIVATE_DEPENDENCIES = LIBTALLOC
-SUBSYSTEM = ldb
-OBJ_FILES = \
-               modules/paged_searches.o
+INIT_FUNCTION = LDB_MODULE(paged_searches)
+CFLAGS = -I$(ldbdir)/include
+PRIVATE_DEPENDENCIES = LIBTALLOC LIBEVENTS
+SUBSYSTEM = LIBLDB
 # End MODULE ldb_paged_results
 ################################################
 
+ldb_paged_searches_OBJ_FILES = $(ldbdir)/modules/paged_searches.o
+
 ################################################
 # Start MODULE ldb_operational
 [MODULE::ldb_operational]
-SUBSYSTEM = ldb
-CFLAGS = -Ilib/ldb/include
-PRIVATE_DEPENDENCIES = LIBTALLOC
-INIT_FUNCTION = ldb_operational_init
-OBJ_FILES = \
-               modules/operational.o
+SUBSYSTEM = LIBLDB
+CFLAGS = -I$(ldbdir)/include
+PRIVATE_DEPENDENCIES = LIBTALLOC LIBEVENTS
+INIT_FUNCTION = LDB_MODULE(operational)
 # End MODULE ldb_operational
 ################################################
 
-################################################
-# Start MODULE ldb_objectclass
-[MODULE::ldb_objectclass]
-INIT_FUNCTION = ldb_objectclass_init
-CFLAGS = -Ilib/ldb/include
-PRIVATE_DEPENDENCIES = LIBTALLOC
-SUBSYSTEM = ldb
-OBJ_FILES = \
-               modules/objectclass.o
-# End MODULE ldb_objectclass
-################################################
+ldb_operational_OBJ_FILES = $(ldbdir)/modules/operational.o
 
 ################################################
 # Start MODULE ldb_rdn_name
 [MODULE::ldb_rdn_name]
-SUBSYSTEM = ldb
-CFLAGS = -Ilib/ldb/include
-PRIVATE_DEPENDENCIES = LIBTALLOC
-INIT_FUNCTION = ldb_rdn_name_init
-OBJ_FILES = \
-               modules/rdn_name.o
+SUBSYSTEM = LIBLDB
+CFLAGS = -I$(ldbdir)/include
+PRIVATE_DEPENDENCIES = LIBTALLOC LIBEVENTS
+INIT_FUNCTION = LDB_MODULE(rdn_name)
 # End MODULE ldb_rdn_name
 ################################################
 
-################################################
-# Start MODULE ldb_ildap
-[MODULE::ldb_ildap]
-SUBSYSTEM = ldb
-CFLAGS = -Ilib/ldb/include
-PRIVATE_DEPENDENCIES = LIBTALLOC LIBCLI_LDAP
-INIT_FUNCTION = ldb_ildap_init
-ALIASES = ldapi ldaps ldap
-OBJ_FILES = \
-               ldb_ildap/ldb_ildap.o
-# End MODULE ldb_ildap
-################################################
+ldb_rdn_name_OBJ_FILES = $(ldbdir)/modules/rdn_name.o
 
-################################################
-# Start MODULE ldb_map
-[MODULE::ldb_map]
-PRIVATE_DEPENDENCIES = LIBTALLOC
-CFLAGS = -Ilib/ldb/include -Ilib/ldb/modules
-SUBSYSTEM = ldb
-OBJ_FILES = \
-               modules/ldb_map_inbound.o \
-               modules/ldb_map_outbound.o \
-               modules/ldb_map.o
-# End MODULE ldb_map
-################################################
+ldb_map_OBJ_FILES = $(addprefix $(ldbdir)/ldb_map/, ldb_map_inbound.o ldb_map_outbound.o ldb_map.o)
+
+$(ldb_map_OBJ_FILES): CFLAGS+=-I$(ldbdir)/ldb_map
 
 ################################################
 # Start MODULE ldb_skel
 [MODULE::ldb_skel]
-SUBSYSTEM = ldb
-CFLAGS = -Ilib/ldb/include
-PRIVATE_DEPENDENCIES = LIBTALLOC
-INIT_FUNCTION = ldb_skel_init
-OBJ_FILES = modules/skel.o
+SUBSYSTEM = LIBLDB
+CFLAGS = -I$(ldbdir)/include
+PRIVATE_DEPENDENCIES = LIBTALLOC LIBEVENTS
+INIT_FUNCTION = LDB_MODULE(skel)
 # End MODULE ldb_skel
 ################################################
 
+ldb_skel_OBJ_FILES = $(ldbdir)/modules/skel.o
+
 ################################################
 # Start MODULE ldb_sqlite3
 [MODULE::ldb_sqlite3]
-SUBSYSTEM = ldb
-CFLAGS = -Ilib/ldb/include
-PRIVATE_DEPENDENCIES = LIBTALLOC SQLITE3 LIBTALLOC
-INIT_FUNCTION = ldb_sqlite3_init
-OBJ_FILES = \
-               ldb_sqlite3/ldb_sqlite3.o
+SUBSYSTEM = LIBLDB
+CFLAGS = -I$(ldbdir)/include
+PRIVATE_DEPENDENCIES = LIBTALLOC SQLITE3 LIBEVENTS
 # End MODULE ldb_sqlite3
 ################################################
 
+ldb_sqlite3_OBJ_FILES = $(ldbdir)/ldb_sqlite3/ldb_sqlite3.o
+
 ################################################
 # Start MODULE ldb_tdb
 [MODULE::ldb_tdb]
-SUBSYSTEM = ldb
-CFLAGS = -Ilib/ldb/include -Ilib/ldb/ldb_tdb
-INIT_FUNCTION = ldb_tdb_init
-OBJ_FILES = \
-               ldb_tdb/ldb_tdb.o \
-               ldb_tdb/ldb_search.o \
-               ldb_tdb/ldb_pack.o \
-               ldb_tdb/ldb_index.o \
-               ldb_tdb/ldb_cache.o \
-               ldb_tdb/ldb_tdb_wrap.o
+SUBSYSTEM = LIBLDB
+CFLAGS = -I$(ldbdir)/include -I$(ldbdir)/ldb_tdb
 PRIVATE_DEPENDENCIES = \
-               LIBTDB LIBTALLOC
+               LIBTDB LIBTALLOC LIBEVENTS
 # End MODULE ldb_tdb
 ################################################
 
-./lib/ldb/common/ldb_modules.o: lib/ldb/common/ldb_modules.c Makefile
-       @echo Compiling $<
-       @$(CC) -Iinclude $(CFLAGS) -Ilib/replace -Ilib/talloc -Ilib/ldb/include $(PICFLAG) -DLDBMODULESDIR=\"$(MODULESDIR)/ldb\" -DSHLIBEXT=\"$(SHLIBEXT)\" -c $< -o $@
+ldb_tdb_OBJ_FILES = $(addprefix $(ldbdir)/ldb_tdb/, ldb_tdb.o ldb_search.o ldb_pack.o ldb_index.o ldb_cache.o ldb_tdb_wrap.o)
+
 
 ################################################
 # Start SUBSYSTEM ldb
-[LIBRARY::ldb]
-VERSION = 0.0.1
-SO_VERSION = 0
-CFLAGS = -Ilib/ldb/include
-DESCRIPTION = LDAP-like embedded database library
-INIT_FUNCTION_TYPE = int (*) (void)
-OBJ_FILES = \
-               common/ldb.o \
-               common/ldb_ldif.o \
-               common/ldb_parse.o \
-               common/ldb_msg.o \
-               common/ldb_utf8.o \
-               common/ldb_debug.o \
-               common/ldb_modules.o \
-               common/ldb_match.o \
-               common/ldb_attributes.o \
-               common/attrib_handlers.o \
-               common/ldb_dn.o \
-               common/ldb_controls.o \
-               common/qsort.o
+[LIBRARY::LIBLDB]
+CFLAGS = -I$(ldbdir)/include
+INIT_FUNCTION_TYPE = extern const struct ldb_module_ops
 PUBLIC_DEPENDENCIES = \
-               LIBTALLOC
+               LIBTALLOC LIBEVENTS
 PRIVATE_DEPENDENCIES = \
-               DYNCONFIG \
                SOCKET_WRAPPER
-MANPAGE = man/ldb.3
-PUBLIC_HEADERS = include/ldb.h include/ldb_errors.h
+
+PC_FILES += $(ldbdir)/ldb.pc
 #
 # End SUBSYSTEM ldb
 ################################################
 
-################################################
-# Start SUBSYSTEM LDBSAMBA
-[SUBSYSTEM::LDBSAMBA]
-PRIVATE_DEPENDENCIES = ldb
-CFLAGS = -Ilib/ldb/include
-PRIVATE_PROTO_HEADER = samba/ldif_handlers.h
-PRIVATE_DEPENDENCIES = LIBSECURITY SAMDB
-OBJ_FILES = \
-               samba/ldif_handlers.o
-# End SUBSYSTEM LDBSAMBA
-################################################
-
-################################################
-# Start SUBSYSTEM LIBLDB_CMDLINE
-[SUBSYSTEM::LIBLDB_CMDLINE]
-CFLAGS = -Ilib/ldb
-OBJ_FILES= \
-               tools/cmdline.o
-PUBLIC_DEPENDENCIES = ldb LIBPOPT
-PRIVATE_DEPENDENCIES = LIBSAMBA-UTIL POPT_SAMBA POPT_CREDENTIALS gensec
-# End SUBSYSTEM LIBLDB_CMDLINE
-################################################
-
-################################################
-# Start BINARY ldbadd
-[BINARY::ldbadd]
-INSTALLDIR = BINDIR
-OBJ_FILES = \
-               tools/ldbadd.o
-PRIVATE_DEPENDENCIES = \
-               LIBLDB_CMDLINE LIBCLI_RESOLVE
-MANPAGE = man/ldbadd.1
-# End BINARY ldbadd
-################################################
-
-################################################
-# Start BINARY ldbdel
-[BINARY::ldbdel]
-INSTALLDIR = BINDIR
-OBJ_FILES= \
-               tools/ldbdel.o
-PRIVATE_DEPENDENCIES = \
-               LIBLDB_CMDLINE
-MANPAGE = man/ldbdel.1
-# End BINARY ldbdel
-################################################
+LIBLDB_VERSION = 0.0.1
+LIBLDB_SOVERSION = 0
 
-################################################
-# Start BINARY ldbmodify
-[BINARY::ldbmodify]
-INSTALLDIR = BINDIR
-OBJ_FILES= \
-               tools/ldbmodify.o
-PRIVATE_DEPENDENCIES = \
-               LIBLDB_CMDLINE
-MANPAGE = man/ldbmodify.1
-# End BINARY ldbmodify
-################################################
+LIBLDB_OBJ_FILES = $(addprefix $(ldbdir)/common/, ldb.o ldb_ldif.o ldb_parse.o ldb_msg.o ldb_utf8.o ldb_debug.o ldb_modules.o ldb_match.o ldb_attributes.o attrib_handlers.o ldb_dn.o ldb_controls.o qsort.o) $(ldb_map_OBJ_FILES)
 
-################################################
-# Start BINARY ldbsearch
-[BINARY::ldbsearch]
-INSTALLDIR = BINDIR
-OBJ_FILES= \
-               tools/ldbsearch.o
-PRIVATE_DEPENDENCIES = \
-               LIBLDB_CMDLINE 
-MANPAGE = man/ldbsearch.1
-# End BINARY ldbsearch
-################################################
+$(LIBLDB_OBJ_FILES): CFLAGS+=-I$(ldbdir)/include
 
-################################################
-# Start BINARY ldbedit
-[BINARY::ldbedit]
-INSTALLDIR = BINDIR
-OBJ_FILES= \
-               tools/ldbedit.o
-PRIVATE_DEPENDENCIES = \
-               LIBLDB_CMDLINE
-MANPAGE = man/ldbedit.1
-# End BINARY ldbedit
-################################################
+PUBLIC_HEADERS += $(ldbdir)/include/ldb.h $(ldbdir)/include/ldb_errors.h
 
-################################################
-# Start BINARY ldbrename
-[BINARY::ldbrename]
-INSTALLDIR = BINDIR
-OBJ_FILES= \
-               tools/ldbrename.o
-PRIVATE_DEPENDENCIES = \
-               LIBLDB_CMDLINE
-MANPAGE = man/ldbrename.1
-# End BINARY ldbrename
-################################################
+MANPAGES += $(ldbdir)/man/ldb.3
 
 ################################################
 # Start BINARY ldbtest
 [BINARY::ldbtest]
-OBJ_FILES= \
-               tools/ldbtest.o
 PRIVATE_DEPENDENCIES = \
                LIBLDB_CMDLINE
 # End BINARY ldbtest
 ################################################
 
+ldbtest_OBJ_FILES = $(ldbdir)/tools/ldbtest.o
+
 ################################################
 # Start BINARY oLschema2ldif
 [BINARY::oLschema2ldif]
 INSTALLDIR = BINDIR
-MANPAGE = man/oLschema2ldif.1
-OBJ_FILES= \
-               tools/convert.o \
-               tools/oLschema2ldif.o
 PRIVATE_DEPENDENCIES = \
                LIBLDB_CMDLINE
 # End BINARY oLschema2ldif
 ################################################
 
+
+oLschema2ldif_OBJ_FILES = $(addprefix $(ldbdir)/tools/, convert.o oLschema2ldif.o)
+
+MANPAGES += $(ldbdir)/man/oLschema2ldif.1
+
 ################################################
 # Start BINARY  ad2oLschema
 [BINARY::ad2oLschema]
 INSTALLDIR = BINDIR
-MANPAGE = man/ad2oLschema.1
-OBJ_FILES= \
-               tools/convert.o \
-               tools/ad2oLschema.o
 PRIVATE_DEPENDENCIES = \
                LIBLDB_CMDLINE
 # End BINARY ad2oLschema
 ################################################
 
-#######################
-# Start LIBRARY swig_ldb
-[LIBRARY::swig_ldb]
-PUBLIC_DEPENDENCIES = ldb DYNCONFIG
-LIBRARY_REALNAME = swig/_ldb.$(SHLIBEXT)
-OBJ_FILES = swig/ldb_wrap.o
-# End LIBRARY swig_ldb
-#######################
+ad2oLschema_OBJ_FILES = $(addprefix $(ldbdir)/tools/, convert.o ad2oLschema.o)
+
+MANPAGES += $(ldbdir)/man/ad2oLschema.1
+
+mkinclude tools/config.mk
+mkinclude ldb_ildap/config.mk