-# Registry backends
-
-################################################
-# Start MODULE registry_nt4
-[MODULE::registry_nt4]
-INIT_FUNCTION = registry_nt4_init
-SUBSYSTEM = REGISTRY
-INIT_OBJ_FILES = \
- reg_backend_nt4.o
-REQUIRED_SUBSYSTEMS = TDR_REGF
-# End MODULE registry_nt4
-################################################
-
[SUBSYSTEM::TDR_REGF]
-REQUIRED_SUBSYSTEMS = TDR
-NOPROTO = YES
-INIT_OBJ_FILES = tdr_regf.o
-
-./lib/registry/reg_backend_nt4.c: ./lib/registry/tdr_regf.c
-./lib/registry/tdr_regf.c: lib/registry/regf.idl
- @CPP="$(CPP)" pidl/pidl $(PIDL_ARGS) --header --outputdir=lib/registry --tdr-header --tdr-parser -- lib/registry/regf.idl
-
-################################################
-# Start MODULE registry_w95
-[MODULE::registry_w95]
-INIT_FUNCTION = registry_w95_init
-SUBSYSTEM = REGISTRY
-INIT_OBJ_FILES = \
- reg_backend_w95.o
-# End MODULE registry_w95
-################################################
-
-################################################
-# Start MODULE registry_dir
-[MODULE::registry_dir]
-INIT_FUNCTION = registry_dir_init
-SUBSYSTEM = REGISTRY
-INIT_OBJ_FILES = \
- reg_backend_dir.o
-# End MODULE registry_dir
-################################################
-
-################################################
-# Start MODULE registry_rpc
-[MODULE::registry_rpc]
-INIT_FUNCTION = registry_rpc_init
-SUBSYSTEM = REGISTRY
-INIT_OBJ_FILES = \
- reg_backend_rpc.o
-REQUIRED_SUBSYSTEMS = RPC_NDR_WINREG
-# End MODULE registry_rpc
-################################################
-
-
-
-################################################
-# Start MODULE registry_gconf
-[MODULE::registry_gconf]
-INIT_FUNCTION = registry_gconf_init
-SUBSYSTEM = REGISTRY
-INIT_OBJ_FILES = \
- reg_backend_gconf.o
-REQUIRED_SUBSYSTEMS = EXT_LIB_gconf
-# End MODULE registry_gconf
-################################################
-
-################################################
-# Start MODULE registry_ldb
-[MODULE::registry_ldb]
-INIT_FUNCTION = registry_ldb_init
-SUBSYSTEM = REGISTRY
-INIT_OBJ_FILES = \
- reg_backend_ldb.o
-REQUIRED_SUBSYSTEMS = \
- LIBLDB
+PUBLIC_DEPENDENCIES = TDR
+OBJ_FILES = tdr_regf.o
+
+# Special support for external builddirs
+lib/registry/regf.c: lib/registry/tdr_regf.c
+$(srcdir)/lib/registry/regf.c: lib/registry/tdr_regf.c
+lib/registry/tdr_regf.h: lib/registry/tdr_regf.c
+lib/registry/tdr_regf.c: $(srcdir)/lib/registry/regf.idl
+ @CPP="$(CPP)" srcdir="$(srcdir)" $(PERL) $(srcdir)/pidl/pidl $(PIDL_ARGS) \
+ --header --outputdir=lib/registry \
+ --tdr-parser -- $(srcdir)/lib/registry/regf.idl
+
+clean::
+ @-rm -f lib/registry/regf.h lib/registry/tdr_regf*
+
+################################################
+# Start SUBSYSTEM registry
+[LIBRARY::registry]
+VERSION = 0.0.1
+PC_FILE = registry.pc
+SO_VERSION = 0
+DESCRIPTION = Windows-style registry library
+OBJ_FILES = \
+ interface.o \
+ util.o \
+ samba.o \
+ patchfile_dotreg.o \
+ patchfile_preg.o \
+ patchfile.o \
+ regf.o \
+ hive.o \
+ local.o \
+ ldb.o \
+ dir.o \
+ rpc.o
+PUBLIC_DEPENDENCIES = \
+ LIBSAMBA-UTIL CHARSET TDR_REGF LIBLDB \
+ RPC_NDR_WINREG LDB_WRAP
+PUBLIC_HEADERS = registry.h hive.h patchfile.h
# End MODULE registry_ldb
################################################
-################################################
-# Start SUBSYSTEM REGISTRY
-[SUBSYSTEM::REGISTRY]
-INIT_OBJ_FILES = \
- common/reg_interface.o
-ADD_OBJ_FILES = \
- common/reg_util.o \
- reg_samba.o \
- patchfile.o
-REQUIRED_SUBSYSTEMS = \
- LIBBASIC
-# End MODULE registry_ldb
-################################################
-
-################################################
-# Start LIBRARY libwinregistry
-[LIBRARY::libwinregistry]
-MAJOR_VERSION = 0
-MINOR_VERSION = 0
-RELEASE_VERSION = 1
-REQUIRED_SUBSYSTEMS = \
- REGISTRY
-#
-# End LIBRARY libwinregistry
-################################################
+[SUBSYSTEM::registry_common]
+PUBLIC_DEPENDENCIES = registry
+OBJ_FILES = tools/common.o
+PRIVATE_PROTO_HEADER = tools/common.h
################################################
# Start BINARY regdiff
[BINARY::regdiff]
INSTALLDIR = BINDIR
-OBJ_FILES= \
- tools/regdiff.o
-REQUIRED_SUBSYSTEMS = \
- CONFIG LIBCMDLINE REGISTRY
+OBJ_FILES = tools/regdiff.o
+PRIVATE_DEPENDENCIES = \
+ LIBSAMBA-CONFIG registry LIBPOPT POPT_SAMBA POPT_CREDENTIALS
MANPAGE = man/regdiff.1
# End BINARY regdiff
################################################
# Start BINARY regpatch
[BINARY::regpatch]
INSTALLDIR = BINDIR
-OBJ_FILES= \
- tools/regpatch.o
-REQUIRED_SUBSYSTEMS = \
- CONFIG LIBCMDLINE REGISTRY
+OBJ_FILES = tools/regpatch.o
+PRIVATE_DEPENDENCIES = \
+ LIBSAMBA-CONFIG registry LIBPOPT POPT_SAMBA POPT_CREDENTIALS \
+ registry_common
MANPAGE = man/regpatch.1
# End BINARY regpatch
################################################
# Start BINARY regshell
[BINARY::regshell]
INSTALLDIR = BINDIR
-OBJ_FILES= \
- tools/regshell.o
-REQUIRED_SUBSYSTEMS = \
- CONFIG LIBCMDLINE REGISTRY
+OBJ_FILES = tools/regshell.o
+PRIVATE_DEPENDENCIES = \
+ LIBSAMBA-CONFIG LIBPOPT registry POPT_SAMBA POPT_CREDENTIALS \
+ SMBREADLINE registry_common
MANPAGE = man/regshell.1
# End BINARY regshell
################################################
# Start BINARY regtree
[BINARY::regtree]
INSTALLDIR = BINDIR
-OBJ_FILES= \
- tools/regtree.o
-REQUIRED_SUBSYSTEMS = \
- CONFIG LIBCMDLINE REGISTRY
+OBJ_FILES = tools/regtree.o
+PRIVATE_DEPENDENCIES = \
+ LIBSAMBA-CONFIG LIBPOPT registry POPT_SAMBA POPT_CREDENTIALS \
+ registry_common
MANPAGE = man/regtree.1
# End BINARY regtree
################################################
+
+[SUBSYSTEM::torture_registry]
+PRIVATE_DEPENDENCIES = registry
+PRIVATE_PROTO_HEADER = tests/proto.h
+OBJ_FILES = \
+ tests/generic.o \
+ tests/hive.o \
+ tests/diff.o \
+ tests/registry.o
+
+[PYTHON::swig_registry]
+PUBLIC_DEPENDENCIES = registry
+SWIG_FILE = registry.i
+