r25084: Move samba-specific code out of lib/ldb directory.
[kai/samba.git] / source4 / lib / ldb / config.mk
index dfbf3db449ecbbb2f58f77a01940bfdd214b8e84..dcc66d3bb0c6836c4a68a7576db3be4db56c06c2 100644 (file)
@@ -1,8 +1,10 @@
 ################################################
 # Start MODULE ldb_asq
 [MODULE::ldb_asq]
+PRIVATE_DEPENDENCIES = LIBTALLOC
+CFLAGS = -Ilib/ldb/include
 INIT_FUNCTION = ldb_asq_init
-SUBSYSTEM = ldb
+SUBSYSTEM = LIBLDB
 OBJ_FILES = \
                modules/asq.o
 # End MODULE ldb_asq
@@ -11,8 +13,10 @@ OBJ_FILES = \
 ################################################
 # Start MODULE ldb_server_sort
 [MODULE::ldb_server_sort]
+PRIVATE_DEPENDENCIES = LIBTALLOC
+CFLAGS = -Ilib/ldb/include
 INIT_FUNCTION = ldb_sort_init
-SUBSYSTEM = ldb
+SUBSYSTEM = LIBLDB
 OBJ_FILES = \
                modules/sort.o
 # End MODULE ldb_sort
@@ -22,7 +26,9 @@ OBJ_FILES = \
 # Start MODULE ldb_paged_results
 [MODULE::ldb_paged_results]
 INIT_FUNCTION = ldb_paged_results_init
-SUBSYSTEM = ldb
+CFLAGS = -Ilib/ldb/include
+PRIVATE_DEPENDENCIES = LIBTALLOC
+SUBSYSTEM = LIBLDB
 OBJ_FILES = \
                modules/paged_results.o
 # End MODULE ldb_paged_results
@@ -32,7 +38,9 @@ OBJ_FILES = \
 # Start MODULE ldb_paged_results
 [MODULE::ldb_paged_searches]
 INIT_FUNCTION = ldb_paged_searches_init
-SUBSYSTEM = ldb
+CFLAGS = -Ilib/ldb/include
+PRIVATE_DEPENDENCIES = LIBTALLOC
+SUBSYSTEM = LIBLDB
 OBJ_FILES = \
                modules/paged_searches.o
 # End MODULE ldb_paged_results
@@ -41,71 +49,59 @@ OBJ_FILES = \
 ################################################
 # Start MODULE ldb_operational
 [MODULE::ldb_operational]
-SUBSYSTEM = ldb
+SUBSYSTEM = LIBLDB
+CFLAGS = -Ilib/ldb/include
+PRIVATE_DEPENDENCIES = LIBTALLOC
 INIT_FUNCTION = ldb_operational_init
 OBJ_FILES = \
                modules/operational.o
 # End MODULE ldb_operational
 ################################################
 
-################################################
-# Start MODULE ldb_objectclass
-[MODULE::ldb_objectclass]
-INIT_FUNCTION = ldb_objectclass_init
-SUBSYSTEM = ldb
-OBJ_FILES = \
-               modules/objectclass.o
-# End MODULE ldb_objectclass
-################################################
-
 ################################################
 # Start MODULE ldb_rdn_name
 [MODULE::ldb_rdn_name]
-SUBSYSTEM = ldb
+SUBSYSTEM = LIBLDB
+CFLAGS = -Ilib/ldb/include
+PRIVATE_DEPENDENCIES = LIBTALLOC
 INIT_FUNCTION = ldb_rdn_name_init
 OBJ_FILES = \
                modules/rdn_name.o
 # End MODULE ldb_rdn_name
 ################################################
 
-# ################################################
-# # Start MODULE ldb_schema
-# [MODULE::ldb_schema]
-# INIT_FUNCTION = ldb_schema_init
-# SUBSYSTEM = ldb
-# OBJ_FILES = \
-#              modules/schema.o
-# # End MODULE ldb_schema
-# ################################################
-
 ################################################
 # Start MODULE ldb_ildap
 [MODULE::ldb_ildap]
-SUBSYSTEM = ldb
+SUBSYSTEM = LIBLDB
+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
-PUBLIC_DEPENDENCIES = \
-               LIBCLI_LDAP
 # End MODULE ldb_ildap
 ################################################
 
 ################################################
 # Start MODULE ldb_map
 [MODULE::ldb_map]
-SUBSYSTEM = ldb
+PRIVATE_DEPENDENCIES = LIBTALLOC
+CFLAGS = -Ilib/ldb/include -Ilib/ldb/ldb_map
+SUBSYSTEM = LIBLDB
 OBJ_FILES = \
-               modules/ldb_map_inbound.o \
-               modules/ldb_map_outbound.o \
-               modules/ldb_map.o
+               ldb_map/ldb_map_inbound.o \
+               ldb_map/ldb_map_outbound.o \
+               ldb_map/ldb_map.o
 # End MODULE ldb_map
 ################################################
 
 ################################################
 # Start MODULE ldb_skel
 [MODULE::ldb_skel]
-SUBSYSTEM = ldb
+SUBSYSTEM = LIBLDB
+CFLAGS = -Ilib/ldb/include
+PRIVATE_DEPENDENCIES = LIBTALLOC
 INIT_FUNCTION = ldb_skel_init
 OBJ_FILES = modules/skel.o
 # End MODULE ldb_skel
@@ -114,19 +110,20 @@ OBJ_FILES = modules/skel.o
 ################################################
 # Start MODULE ldb_sqlite3
 [MODULE::ldb_sqlite3]
-SUBSYSTEM = ldb
+SUBSYSTEM = LIBLDB
+CFLAGS = -Ilib/ldb/include
+PRIVATE_DEPENDENCIES = LIBTALLOC SQLITE3 LIBTALLOC
 INIT_FUNCTION = ldb_sqlite3_init
 OBJ_FILES = \
                ldb_sqlite3/ldb_sqlite3.o
-PUBLIC_DEPENDENCIES = \
-               SQLITE3
 # End MODULE ldb_sqlite3
 ################################################
 
 ################################################
 # Start MODULE ldb_tdb
 [MODULE::ldb_tdb]
-SUBSYSTEM = ldb
+SUBSYSTEM = LIBLDB
+CFLAGS = -Ilib/ldb/include -Ilib/ldb/ldb_tdb
 INIT_FUNCTION = ldb_tdb_init
 OBJ_FILES = \
                ldb_tdb/ldb_tdb.o \
@@ -135,20 +132,32 @@ OBJ_FILES = \
                ldb_tdb/ldb_index.o \
                ldb_tdb/ldb_cache.o \
                ldb_tdb/ldb_tdb_wrap.o
-PUBLIC_DEPENDENCIES = \
-               LIBTDB
+PRIVATE_DEPENDENCIES = \
+               LIBTDB LIBTALLOC
 # End MODULE ldb_tdb
 ################################################
 
+# NOTE: this rule is broken for some systems when $builddir != $srcdir because
+# it hardcodes the use of $<. See smb_build/makefile.pm.
 ./lib/ldb/common/ldb_modules.o: lib/ldb/common/ldb_modules.c Makefile
        @echo Compiling $<
-       @$(CC) $(CFLAGS) $(PICFLAG) -DMODULESDIR=\"$(MODULESDIR)/ldb\" -DSHLIBEXT=\"$(SHLIBEXT)\" -c $< -o $@
+       @$(CC) `$(PERL) $(srcdir)/script/cflags.pl $@` $(CFLAGS) $(PICFLAG) \
+       -DSHLIBEXT=\"$(SHLIBEXT)\" \
+       -c $< -o $@
+
+./lib/ldb/common/ldb.o: lib/ldb/common/ldb.c Makefile
+       @echo Compiling $<
+       @$(CC) `$(PERL) $(srcdir)/script/cflags.pl $@` $(CFLAGS) $(PICFLAG) \
+       -DLDB_MODULESDIR=\"$(MODULESDIR)/ldb\" \
+       -c $< -o $@
+
 
 ################################################
 # Start SUBSYSTEM ldb
-[LIBRARY::ldb]
+[LIBRARY::LIBLDB]
 VERSION = 0.0.1
 SO_VERSION = 0
+CFLAGS = -Ilib/ldb/include
 DESCRIPTION = LDAP-like embedded database library
 INIT_FUNCTION_TYPE = int (*) (void)
 OBJ_FILES = \
@@ -166,30 +175,24 @@ OBJ_FILES = \
                common/ldb_controls.o \
                common/qsort.o
 PUBLIC_DEPENDENCIES = \
-               LIBREPLACE LIBTALLOC 
+               LIBTALLOC
+PRIVATE_DEPENDENCIES = \
+               DYNCONFIG \
+               SOCKET_WRAPPER
 MANPAGE = man/ldb.3
 PUBLIC_HEADERS = include/ldb.h include/ldb_errors.h
 #
 # End SUBSYSTEM ldb
 ################################################
 
-################################################
-# Start SUBSYSTEM LDBSAMBA
-[SUBSYSTEM::LDBSAMBA]
-PRIVATE_PROTO_HEADER = samba/ldif_handlers.h
-PUBLIC_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 LIBSAMBA-UTIL LIBPOPT POPT_SAMBA POPT_CREDENTIALS
-PRIVATE_DEPENDENCIES = gensec
+PUBLIC_DEPENDENCIES = LIBLDB LIBPOPT
+PRIVATE_DEPENDENCIES = LIBSAMBA-UTIL POPT_SAMBA POPT_CREDENTIALS gensec
 # End SUBSYSTEM LIBLDB_CMDLINE
 ################################################
 
@@ -304,7 +307,7 @@ PRIVATE_DEPENDENCIES = \
 #######################
 # Start LIBRARY swig_ldb
 [LIBRARY::swig_ldb]
-PUBLIC_DEPENDENCIES = ldb DYNCONFIG
+PUBLIC_DEPENDENCIES = LIBLDB DYNCONFIG
 LIBRARY_REALNAME = swig/_ldb.$(SHLIBEXT)
 OBJ_FILES = swig/ldb_wrap.o
 # End LIBRARY swig_ldb