Merge branch 'v4-0-test' into v4-0-gmake3
authorJelmer Vernooij <jelmer@samba.org>
Fri, 7 Mar 2008 17:59:03 +0000 (18:59 +0100)
committerJelmer Vernooij <jelmer@samba.org>
Fri, 7 Mar 2008 17:59:03 +0000 (18:59 +0100)
(This used to be commit 2bf43c7932d886b0db3e1c2f5a4b8697435b0c5c)

97 files changed:
source4/Makefile
source4/auth/auth.c
source4/auth/config.mk
source4/auth/credentials/config.mk
source4/auth/gensec/config.mk
source4/auth/gensec/gensec.c
source4/auth/kerberos/config.mk
source4/auth/ntlmssp/config.mk
source4/build/m4/public.m4
source4/build/make/lex_compile.sh [moved from source4/script/lex_compile.sh with 100% similarity]
source4/build/make/python.mk [new file with mode: 0644]
source4/build/make/rules.mk [moved from source4/rules.mk with 73% similarity]
source4/build/make/yacc_compile.sh [moved from source4/script/yacc_compile.sh with 100% similarity]
source4/build/smb_build/config_mk.pm
source4/build/smb_build/header.pm [deleted file]
source4/build/smb_build/input.pm
source4/build/smb_build/main.pl
source4/build/smb_build/makefile.pm
source4/build/smb_build/output.pm
source4/cldap_server/config.mk
source4/client/config.mk
source4/cluster/config.mk
source4/cluster/ctdb/config.mk
source4/dsdb/config.mk
source4/dsdb/samdb/ldb_modules/config.mk
source4/dynconfig.mk
source4/heimdal_build/asn1_deps.pl
source4/heimdal_build/config.mk
source4/kdc/config.mk
source4/ldap_server/config.mk
source4/lib/appweb/config.mk
source4/lib/basic.mk
source4/lib/charset/config.mk
source4/lib/cmdline/config.mk
source4/lib/crypto/config.mk
source4/lib/dbwrap/config.mk
source4/lib/events/config.mk
source4/lib/events/events.c
source4/lib/ldb-samba/config.mk
source4/lib/ldb/common/ldb_modules.c
source4/lib/ldb/config.mk
source4/lib/ldb/include/ldb_private.h
source4/lib/ldb/ldb_ildap/config.mk
source4/lib/ldb/python.mk
source4/lib/ldb/tools/config.mk
source4/lib/messaging/config.mk
source4/lib/nss_wrapper/config.mk
source4/lib/policy/config.mk
source4/lib/popt/config.mk
source4/lib/registry/config.mk
source4/lib/registry/interface.c
source4/lib/registry/local.c
source4/lib/samba3/config.mk
source4/lib/socket/config.mk
source4/lib/socket_wrapper/config.mk
source4/lib/stream/config.mk
source4/lib/talloc/config.mk
source4/lib/tdb/config.mk
source4/lib/tdb/python.mk
source4/lib/tdr/config.mk
source4/lib/tls/config.mk
source4/lib/util/config.mk
source4/libcli/auth/config.mk
source4/libcli/config.mk
source4/libcli/ldap/config.mk
source4/libcli/security/config.mk
source4/libcli/smb2/config.mk
source4/libnet/config.mk
source4/librpc/config.mk
source4/nbt_server/config.mk
source4/nsswitch/config.mk
source4/ntptr/config.mk
source4/ntvfs/common/config.mk
source4/ntvfs/config.mk
source4/ntvfs/posix/config.mk
source4/ntvfs/sysdep/config.mk
source4/ntvfs/unixuid/config.mk
source4/param/config.mk
source4/rpc_server/config.mk
source4/scripting/ejs/config.mk
source4/scripting/ejs/ejsnet/config.mk
source4/scripting/ejs/smbcalls.c
source4/scripting/python/config.mk
source4/smb_server/config.mk
source4/smb_server/smb/config.mk
source4/smb_server/smb2/config.mk
source4/smbd/config.mk
source4/smbd/process_model.mk
source4/torture/config.mk
source4/torture/local/config.mk
source4/torture/smb2/config.mk
source4/torture/winbind/config.mk
source4/utils/config.mk
source4/utils/net/config.mk
source4/web_server/config.mk
source4/winbind/config.mk
source4/wrepl_server/config.mk

index 914f15826a1fad450c66bd16154322ce7215aeeb..bdcdf2507eef8a832eda75482f28839cf660ed3f 100644 (file)
@@ -19,6 +19,25 @@ BNLD_FLAGS = $(LDFLAGS) $(SYS_LDFLAGS)
 HOSTCC_FLAGS = -D_SAMBA_HOSTCC_ $(CFLAGS)
 HOSTLD_FLAGS = $(LDFLAGS) $(SYS_LDFLAGS)
 
+$(srcdir)/version.h: $(srcdir)/VERSION
+       @$(SHELL) script/mkversion.sh VERSION $(srcdir)/version.h $(srcdir)/
+
+.DEFAULT_GOAL := all
+
+ifneq ($(automatic_deps),yes)
+ALL_PREDEP = proto
+.NOTPARALLEL:
+endif
+
+regen_version::
+       @$(SHELL) script/mkversion.sh VERSION $(srcdir)/version.h $(srcdir)/
+
+clean_pch::
+       @echo "Removing precompiled headers"
+       @-rm -f include/includes.h.gch
+
+pch:: clean_pch include/includes.h.gch
+
 .DEFAULT_GOAL := all
 
 ifneq ($(automatic_dependencies),yes)
@@ -26,7 +45,8 @@ ALL_PREDEP = proto
 .NOTPARALLEL:
 endif
 
-include rules.mk
+include build/make/rules.mk
+include build/make/python.mk
 include data.mk
 
 DEP_FILES = $(patsubst %.ho,%.hd,$(patsubst %.o,%.d,$(ALL_OBJS))) \
@@ -55,7 +75,7 @@ endif
 DEFAULT_HEADERS = $(srcdir)/lib/util/dlinklist.h \
                  $(srcdir)/version.h
 
-binaries::
+binaries:: $(BIN_PROGS) $(SBIN_PROGS)
 libraries:: $(STATIC_LIBS) $(SHARED_LIBS)
 modules:: $(PLUGINS)
 headers:: $(PUBLIC_HEADERS) $(DEFAULT_HEADERS)
index ed590f2ced520b974e9de772940de055bc882924..4aecc8dfeedb34b66a9e978aa8e146625315e0aa 100644 (file)
@@ -22,7 +22,6 @@
 #include "lib/util/dlinklist.h"
 #include "auth/auth.h"
 #include "lib/events/events.h"
-#include "build.h"
 #include "param/param.h"
 
 /***************************************************************************
@@ -515,6 +514,11 @@ const struct auth_critical_sizes *auth_interface_version(void)
 NTSTATUS auth_init(void)
 {
        static bool initialized = false;
+       extern NTSTATUS auth_developer_init(void);
+       extern NTSTATUS auth_winbind_init(void);
+       extern NTSTATUS auth_anonymous_init(void);
+       extern NTSTATUS auth_unix_init(void);
+       extern NTSTATUS auth_sam_init(void);
 
        init_module_fn static_init[] = { STATIC_auth_MODULES };
        
index 369c5bb4e622e2a5ea267cef40236a5a855e45ff..c738c83bf4040783b75681360bf5abccd432e1b8 100644 (file)
@@ -5,92 +5,95 @@ mkinclude ntlmssp/config.mk
 mkinclude credentials/config.mk
 
 [SUBSYSTEM::auth_session]
-OBJ_FILES = session.o
 PRIVATE_PROTO_HEADER = session_proto.h
 PUBLIC_DEPENDENCIES = CREDENTIALS
 
 PUBLIC_HEADERS += auth/session.h
 
+auth_session_OBJ_FILES = $(addprefix auth/, session.o)
+
 [SUBSYSTEM::auth_system_session]
-OBJ_FILES = system_session.o
 PRIVATE_PROTO_HEADER = system_session_proto.h
 PUBLIC_DEPENDENCIES = CREDENTIALS
 PRIVATE_DEPENDENCIES = auth_session LIBSAMBA-UTIL LIBSECURITY 
 
+auth_system_session_OBJ_FILES = $(addprefix auth/, system_session.o)
+
 [SUBSYSTEM::auth_sam]
 PRIVATE_PROTO_HEADER = auth_sam.h
-OBJ_FILES = sam.o ntlm_check.o 
 PUBLIC_DEPENDENCIES = SAMDB UTIL_LDB LIBSECURITY
 PRIVATE_DEPENDENCIES = LDAP_ENCODE
 
+auth_sam_OBJ_FILES = $(addprefix auth/, sam.o ntlm_check.o)
+
 [SUBSYSTEM::auth_sam_reply]
 PRIVATE_PROTO_HEADER = auth_sam_reply.h
-OBJ_FILES = auth_sam_reply.o
+
+auth_sam_reply_OBJ_FILES = $(addprefix auth/, auth_sam_reply.o)
 
 #######################
 # Start MODULE auth_sam
 [MODULE::auth_sam_module]
 # gensec_krb5 and gensec_gssapi depend on it
 INIT_FUNCTION = auth_sam_init
-SUBSYSTEM = auth
-OBJ_FILES = auth_sam.o
+SUBSYSTEM = service_auth
 PRIVATE_DEPENDENCIES = \
                SAMDB auth_sam
 # End MODULE auth_sam
 #######################
 
+auth_sam_module_OBJ_FILES = $(addprefix auth/, auth_sam.o)
+
 #######################
 # Start MODULE auth_anonymous
 [MODULE::auth_anonymous]
 INIT_FUNCTION = auth_anonymous_init
-SUBSYSTEM = auth
-OBJ_FILES = auth_anonymous.o
+SUBSYSTEM = service_auth
 # End MODULE auth_anonymous
 #######################
 
+auth_anonymous_OBJ_FILES = $(addprefix auth/, auth_anonymous.o)
+
 #######################
 # Start MODULE auth_winbind
 [MODULE::auth_winbind]
 INIT_FUNCTION = auth_winbind_init
-SUBSYSTEM = auth
-OBJ_FILES = auth_winbind.o
+SUBSYSTEM = service_auth
 PRIVATE_DEPENDENCIES = NDR_WINBIND MESSAGING LIBWINBIND-CLIENT
 # End MODULE auth_winbind
 #######################
 
+auth_winbind_OBJ_FILES = $(addprefix auth/, auth_winbind.o)
+
 #######################
 # Start MODULE auth_developer
 [MODULE::auth_developer]
 INIT_FUNCTION = auth_developer_init
-SUBSYSTEM = auth
-OBJ_FILES = auth_developer.o
+SUBSYSTEM = service_auth
 # End MODULE auth_developer
 #######################
 
+auth_developer_OBJ_FILES = $(addprefix auth/, auth_developer.o)
+
 [MODULE::auth_unix]
 INIT_FUNCTION = auth_unix_init
-SUBSYSTEM = auth
-OBJ_FILES = auth_unix.o
+SUBSYSTEM = service_auth
 PRIVATE_DEPENDENCIES = CRYPT PAM PAM_ERRORS NSS_WRAPPER
 
+auth_unix_OBJ_FILES = $(addprefix auth/, auth_unix.o)
+
 [SUBSYSTEM::PAM_ERRORS]
 PRIVATE_PROTO_HEADER = pam_errors.h
-OBJ_FILES = pam_errors.o
 
-#######################
-# Start SUBSYSTEM auth
-[SUBSYSTEM::auth]
-#VERSION = 0.0.1
-#SO_VERSION = 0
+PAM_ERRORS_OBJ_FILES = $(addprefix auth/, pam_errors.o)
+
+[MODULE::service_auth]
+INIT_FUNCTION = server_service_auth_init
+SUBSYSTEM = service
 PRIVATE_PROTO_HEADER = auth_proto.h
-OBJ_FILES = \
-               auth.o \
-               auth_util.o \
-               auth_simple.o
-PUBLIC_DEPENDENCIES = LIBSECURITY SAMDB CREDENTIALS
-PRIVATE_DEPENDENCIES = LIBSAMBA-UTIL
-# End SUBSYSTEM auth
-#######################
+PRIVATE_DEPENDENCIES = LIBSAMBA-UTIL LIBSECURITY SAMDB CREDENTIALS 
+
+service_auth_OBJ_FILES = $(addprefix auth/, auth.o auth_util.o auth_simple.o)
 
 PUBLIC_HEADERS += auth/auth.h
 
@@ -98,3 +101,5 @@ PUBLIC_HEADERS += auth/auth.h
 PUBLIC_DEPENDENCIES = auth_system_session
 PRIVATE_DEPENDENCIES = SAMDB 
 SWIG_FILE = auth.i
+
+swig_auth_OBJ_FILES = auth/auth_wrap.o
index ef8db50109722f379a28ec1c3a5f92910d1cbbe0..d8c02ebea82514a0cbd41639045c3129fd5981d6 100644 (file)
@@ -2,18 +2,17 @@
 # Start SUBSYSTEM CREDENTIALS
 [SUBSYSTEM::CREDENTIALS]
 PRIVATE_PROTO_HEADER = credentials_proto.h
-OBJ_FILES = credentials.o \
-               credentials_files.o \
-               credentials_ntlm.o \
-               credentials_krb5.o \
-               ../kerberos/kerberos_util.o
 PUBLIC_DEPENDENCIES = \
                LIBCLI_AUTH SECRETS LIBCRYPTO KERBEROS UTIL_LDB HEIMDAL_GSSAPI 
 PRIVATE_DEPENDENCIES = \
                SECRETS
 
+CREDENTIALS_OBJ_FILES = $(addprefix auth/credentials/, credentials.o credentials_files.o credentials_ntlm.o credentials_krb5.o ../kerberos/kerberos_util.o)
+
 PUBLIC_HEADERS += $(addprefix auth/credentials/, credentials.h credentials_krb5.h)
 
 [PYTHON::swig_credentials]
 PUBLIC_DEPENDENCIES = CREDENTIALS LIBCMDLINE_CREDENTIALS
 SWIG_FILE = credentials.i
+
+swig_credentials_OBJ_FILES = auth/credentials/credentials_wrap.o
index b60f039284f17c8cdb4527cc0414cee8bd9f2892..2ab643764359c25cc3963b2986502e89a55fe877 100644 (file)
@@ -5,12 +5,14 @@ PC_FILE = gensec.pc
 VERSION = 0.0.1
 SO_VERSION = 0
 PRIVATE_PROTO_HEADER = gensec_proto.h
-OBJ_FILES = gensec.o socket.o
 PUBLIC_DEPENDENCIES = \
                CREDENTIALS LIBSAMBA-UTIL LIBCRYPTO ASN1_UTIL samba-socket LIBPACKET
 # End SUBSYSTEM gensec
 #################################
 
+
+gensec_OBJ_FILES = $(addprefix auth/gensec/, gensec.o socket.o)
+
 PUBLIC_HEADERS += $(addprefix auth/gensec/, gensec.h spnego.h)
 
 ################################################
@@ -18,31 +20,34 @@ PUBLIC_HEADERS += $(addprefix auth/gensec/, gensec.h spnego.h)
 [MODULE::gensec_krb5]
 SUBSYSTEM = gensec
 INIT_FUNCTION = gensec_krb5_init
-OBJ_FILES = gensec_krb5.o 
-PRIVATE_DEPENDENCIES = CREDENTIALS KERBEROS auth auth_sam
+PRIVATE_DEPENDENCIES = CREDENTIALS KERBEROS service_auth auth_sam
 # End MODULE gensec_krb5
 ################################################
 
+gensec_krb5_OBJ_FILES = $(addprefix auth/gensec/, gensec_krb5.o)
+
 ################################################
 # Start MODULE gensec_gssapi
 [MODULE::gensec_gssapi]
 SUBSYSTEM = gensec
 INIT_FUNCTION = gensec_gssapi_init
-OBJ_FILES = gensec_gssapi.o 
 PRIVATE_DEPENDENCIES = HEIMDAL_GSSAPI CREDENTIALS KERBEROS 
 # End MODULE gensec_gssapi
 ################################################
 
+gensec_gssapi_OBJ_FILES = $(addprefix auth/gensec/, gensec_gssapi.o)
+
 ################################################
 # Start MODULE cyrus_sasl
 [MODULE::cyrus_sasl]
 SUBSYSTEM = gensec
 INIT_FUNCTION = gensec_sasl_init
-OBJ_FILES = cyrus_sasl.o 
 PRIVATE_DEPENDENCIES = CREDENTIALS SASL 
 # End MODULE cyrus_sasl
 ################################################
 
+cyrus_sasl_OBJ_FILES = $(addprefix auth/gensec/, cyrus_sasl.o)
+
 ################################################
 # Start MODULE gensec_spnego
 [MODULE::gensec_spnego]
@@ -50,31 +55,31 @@ SUBSYSTEM = gensec
 INIT_FUNCTION = gensec_spnego_init
 PRIVATE_PROTO_HEADER = spnego_proto.h
 PRIVATE_DEPENDENCIES = ASN1_UTIL CREDENTIALS
-OBJ_FILES = spnego.o spnego_parse.o
 # End MODULE gensec_spnego
 ################################################
 
+gensec_spnego_OBJ_FILES = $(addprefix auth/gensec/, spnego.o spnego_parse.o)
+
 ################################################
 # Start MODULE gensec_schannel
 [MODULE::gensec_schannel]
 SUBSYSTEM = gensec
 PRIVATE_PROTO_HEADER = schannel_proto.h
 INIT_FUNCTION = gensec_schannel_init
-OBJ_FILES = schannel.o \
-                       schannel_sign.o
 PRIVATE_DEPENDENCIES = SCHANNELDB NDR_SCHANNEL CREDENTIALS LIBNDR
 OUTPUT_TYPE = MERGED_OBJ
 # End MODULE gensec_schannel
 ################################################
 
+gensec_schannel_OBJ_FILES = $(addprefix auth/gensec/, schannel.o schannel_sign.o)
+
 ################################################
 # Start SUBSYSTEM SCHANNELDB
 [SUBSYSTEM::SCHANNELDB]
 PRIVATE_PROTO_HEADER = schannel_state.h
-OBJ_FILES = \
-               schannel_state.o
 PRIVATE_DEPENDENCIES = LDB_WRAP SAMDB
-#
 # End SUBSYSTEM SCHANNELDB
 ################################################
 
+SCHANNELDB_OBJ_FILES = $(addprefix auth/gensec/, schannel_state.o)
+
index cd2066d9fd5f93044fa92e68497a9794350410f0..b07a92d4d1cf03001191976dee14dbcecea19485 100644 (file)
@@ -23,7 +23,6 @@
 #include "includes.h"
 #include "auth/auth.h"
 #include "lib/events/events.h"
-#include "build.h"
 #include "librpc/rpc/dcerpc.h"
 #include "auth/credentials/credentials.h"
 #include "auth/gensec/gensec.h"
@@ -1267,6 +1266,12 @@ static int sort_gensec(struct gensec_security_ops **gs1, struct gensec_security_
 NTSTATUS gensec_init(struct loadparm_context *lp_ctx)
 {
        static bool initialized = false;
+       extern NTSTATUS gensec_sasl_init(void);
+       extern NTSTATUS gensec_krb5_init(void);
+       extern NTSTATUS gensec_schannel_init(void);
+       extern NTSTATUS gensec_spnego_init(void);
+       extern NTSTATUS gensec_gssapi_init(void);
+       extern NTSTATUS gensec_ntlmssp_init(void);
 
        init_module_fn static_init[] = { STATIC_gensec_MODULES };
        init_module_fn *shared_init;
index 7493a6d06d7520ae18a7b2740aa4f77bf84c23b0..762d6f8c49f2e2d30aeae867f81ca91d4db9115d 100644 (file)
@@ -2,13 +2,16 @@
 # Start SUBSYSTEM KERBEROS
 [SUBSYSTEM::KERBEROS]
 PRIVATE_PROTO_HEADER = proto.h
-OBJ_FILES = kerberos.o \
-                       clikrb5.o \
-                       kerberos_heimdal.o \
-                       kerberos_pac.o \
-                       gssapi_parse.o \
-                       krb5_init_context.o
 PUBLIC_DEPENDENCIES = HEIMDAL_KRB5 NDR_KRB5PAC samba-socket LIBCLI_RESOLVE
 PRIVATE_DEPENDENCIES = ASN1_UTIL auth_sam_reply LIBPACKET LIBNDR
 # End SUBSYSTEM KERBEROS
 #################################
+
+KERBEROS_OBJ_FILES = $(addprefix auth/kerberos/, \
+       kerberos.o \
+       clikrb5.o \
+       kerberos_heimdal.o \
+       kerberos_pac.o \
+       gssapi_parse.o \
+       krb5_init_context.o)
+
index 9033384b1f73e5d7e3ab121f463790e5d04c50ed..f8e711feda05e0e349e85df294b00bdd777b9a1a 100644 (file)
@@ -1,6 +1,7 @@
 [SUBSYSTEM::MSRPC_PARSE]
 PRIVATE_PROTO_HEADER = msrpc_parse.h
-OBJ_FILES = ntlmssp_parse.o
+
+MSRPC_PARSE_OBJ_FILES = $(addprefix auth/ntlmssp/, ntlmssp_parse.o)
 
 ################################################
 # Start MODULE gensec_ntlmssp
@@ -8,11 +9,9 @@ OBJ_FILES = ntlmssp_parse.o
 SUBSYSTEM = gensec
 INIT_FUNCTION = gensec_ntlmssp_init
 PRIVATE_PROTO_HEADER = proto.h
-OBJ_FILES = ntlmssp.o \
-               ntlmssp_sign.o \
-               ntlmssp_client.o \
-               ntlmssp_server.o
 PRIVATE_DEPENDENCIES = MSRPC_PARSE CREDENTIALS
 OUTPUT_TYPE = MERGED_OBJ
 # End MODULE gensec_ntlmssp
 ################################################
+
+gensec_ntlmssp_OBJ_FILES = $(addprefix auth/ntlmssp/, ntlmssp.o ntlmssp_sign.o ntlmssp_client.o ntlmssp_server.o) 
index eb673446c7af1e1d5024184b8718f3d8e5576f1a..604092c8d7213effc2a444d92520fd7cb9b04c09 100644 (file)
@@ -31,7 +31,6 @@ SMB_INFO_SUBSYSTEMS="$SMB_INFO_SUBSYSTEMS
 ###################################
 # Start Subsystem $1
 @<:@SUBSYSTEM::$1@:>@
-OBJ_FILES = \$($1_OBJ_FILES)
 PRIVATE_DEPENDENCIES = $3
 CFLAGS = \$($1_CFLAGS)
 ENABLE = YES
@@ -54,7 +53,6 @@ SMB_INFO_LIBRARIES="$SMB_INFO_LIBRARIES
 ###################################
 # Start Library $1
 @<:@LIBRARY::$1@:>@
-OBJ_FILES = \$($1_OBJ_FILES)
 PRIVATE_DEPENDENCIES = $3
 VERSION = $4
 SO_VERSION = $5 
diff --git a/source4/build/make/python.mk b/source4/build/make/python.mk
new file mode 100644 (file)
index 0000000..57bf016
--- /dev/null
@@ -0,0 +1,58 @@
+pythonbuilddir = $(builddir)/bin/python
+
+# Install Python
+# Arguments: Module path
+define python_module_template
+
+installpython:: $$(pythonbuilddir)/$(1) ;
+       cp $$< $$(DESTDIR)$$(PYTHONDIR)/$(1)
+
+uninstallpython:: 
+       rm -f $$(DESTDIR)$$(PYTHONDIR)/$(1) ;
+
+pythonmods:: $$(pythonbuilddir)/$(1) ;
+
+endef
+
+define python_py_module_template
+
+$$(pythonbuilddir)/$(1): $(2) ;
+       mkdir -p $$(@D)
+       cp $$< $$@
+
+$(call python_module_template,$(1))
+
+endef
+
+# Python C module
+# Arguments: Module path, object files
+define python_c_module_template
+
+$$(pythonbuilddir)/$(1): $(2) ; 
+       @echo Linking $$@
+       @mkdir -p $$(@D)
+       @$$(MDLD) $$(LDFLAGS) $$(MDLD_FLAGS) $$(INTERN_LDFLAGS) -o $$@ $$(INSTALL_LINK_FLAGS) $(3)
+
+$(call python_module_template,$(1))
+endef
+
+# Swig extensions
+swig:: pythonmods
+
+.SUFFIXES: _wrap.c .i
+
+.i_wrap.c:
+       [ "$(SWIG)" == "no" ] || $(SWIG) -O -Wall -I$(srcdir)/scripting/swig -python -keyword $<
+
+realdistclean::
+       @echo "Removing SWIG output files"
+       # FIXME: Remove _wrap.c files
+
+pythonmods::
+
+clean::
+       @echo "Removing python modules"
+       @rm -rf $(pythonbuilddir)
+
+pydoctor:: pythonmods
+       LD_LIBRARY_PATH=bin/shared PYTHONPATH=$(pythonbuilddir) pydoctor --project-name=Samba --project-url=http://www.samba.org --make-html --docformat=restructuredtext --add-package $(pythonbuilddir)/samba
similarity index 73%
rename from source4/rules.mk
rename to source4/build/make/rules.mk
index 5f91f8132e98cab1d9b22f3d22e8b3f8125747d1..44277fe3e201473afd11b73168f34c70ad962f34 100644 (file)
@@ -1,3 +1,6 @@
+# Rules file for Samba 4
+# This relies on GNU make.
+#
 # Dependencies command
 DEPENDS = $(CC) -M -MG -MP -MT $(<:.c=.o) -MT $@ \
     $(CFLAGS) $(CPPFLAGS) $< -o $@
@@ -26,22 +29,14 @@ PCHCOMPILE = @$(CC) -Ilib/replace \
 # Partial linking
 PARTLINK = @$(PROG_LD) -r
 
+make_utility_dir = $(srcdir)/build/make/
+
 include/config.h:
        @echo "include/config.h not present"
        @echo "You need to rerun ./autogen.sh and ./configure"
        @/bin/false
 
-$(srcdir)/version.h: $(srcdir)/VERSION
-       @$(SHELL) script/mkversion.sh VERSION $(srcdir)/version.h $(srcdir)/
-
-regen_version::
-       @$(SHELL) script/mkversion.sh VERSION $(srcdir)/version.h $(srcdir)/
-
-clean_pch::
-       @echo "Removing precompiled headers"
-       @-rm -f include/includes.h.gch
-
-pch:: clean_pch include/includes.h.gch
+pch::
 
 clean:: clean_pch
        @echo Removing objects
@@ -93,6 +88,54 @@ unused_macros:
        @mkdir -p $(@D)
        @$(STLD) $(STLD_FLAGS) $@ $^
 
+###############################################################################
+# Templates
+###############################################################################
+
+# Partially link
+# Arguments: target object file, source object files
+define partial_link_template 
+$(1): $(2) ;
+       @echo Partially linking $$@
+       @mkdir -p $$(@D)
+       $$(PARTLINK) -o $$@ $$^
+endef
+
+# Link a binary
+# Arguments: target file, depends, flags
+define binary_link_template
+$(1): $(2) ;
+       @echo Linking $$@
+       @$$(BNLD) $$(BNLD_FLAGS) $$(INTERN_LDFLAGS) -o $$@ $$(INSTALL_LINK_FLAGS) $(3)
+endef
+
+# Link a host-machine binary
+# Arguments: target file, depends, flags
+define host_binary_link_template
+$(1): $(2) ;
+       @echo Linking $$@
+       @$$(HOSTLD) $$(HOSTLD_FLAGS) -L$${builddir}/bin/static -o $$@ $$(INSTALL_LINK_FLAGS) $(3)
+endef
+
+# Create a prototype header
+# Arguments: header file, c files
+define proto_header_template
+$(1): $(2) ;
+       @echo "Creating $$@"
+       @$$(PERL) $$(srcdir)/script/mkproto.pl --srcdir=$$(srcdir) --builddir=$$(builddir) --all=$$@ $$^
+endef
+
+# Shared module
+# Arguments: Target, dependencies, objects
+define shared_module_template
+
+$(1): $(2) ;
+       @echo Linking $$@
+       @mkdir -p $$(@D)
+       @$$(MDLD) $$(LDFLAGS) $$(MDLD_FLAGS) $$(INTERN_LDFLAGS) -o $$@ $$(INSTALL_LINK_FLAGS) $(3)
+
+endef
+
 ###############################################################################
 # File types
 ###############################################################################
@@ -139,11 +182,18 @@ include/includes.d: include/includes.h
 
 .y.c:
        @echo "Building $< with $(YACC)"
-       @-$(srcdir)/script/yacc_compile.sh "$(YACC)" "$<" "$@"
+       @-$(make_utility_dir)/yacc_compile.sh "$(YACC)" "$<" "$@"
 
 .l.c:
        @echo "Building $< with $(LEX)"
-       @-$(srcdir)/script/lex_compile.sh "$(LEX)" "$<" "$@"
+       @-$(make_utility_dir)/script/lex_compile.sh "$(LEX)" "$<" "$@"
+
+%.a:
+       @echo Linking $@
+       @rm -f $@
+       @mkdir -p $(@D)
+       @$(STLD) $(STLD_FLAGS) $@ $^
+
 
 DOCBOOK_MANPAGE_URL = http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl
 
index d8ec646910a49472634ae0240019ce8c62d88556..c5e0ac5a74ac9be3acb5a3eb6dbe8d12e4b7b827 100644 (file)
@@ -23,14 +23,11 @@ my $section_types = {
                SWIG_FILE => "string",
                "PRIVATE_DEPENDENCIES"  => "list",
                "PUBLIC_DEPENDENCIES"   => "list",
-               "OBJ_FILES" => "list",
                "ENABLE"                => "bool",
                "LDFLAGS"               => "list",
                "CFLAGS"                => "list",
        },
        "SUBSYSTEM" => {
-               "OBJ_FILES"             => "list",
-
                "PRIVATE_DEPENDENCIES"  => "list",
                "PUBLIC_DEPENDENCIES"   => "list",
 
@@ -47,7 +44,6 @@ my $section_types = {
                "SUBSYSTEM"             => "string",
 
                "INIT_FUNCTION"         => "string",
-               "OBJ_FILES"             => "list",
 
                "PRIVATE_DEPENDENCIES"  => "list",
 
@@ -62,7 +58,6 @@ my $section_types = {
                "CFLAGS"                => "list"
                },
        "BINARY" => {
-               "OBJ_FILES"             => "list",
 
                "PRIVATE_DEPENDENCIES"  => "list",
 
@@ -88,8 +83,6 @@ my $section_types = {
                "INIT_FUNCTION_SENTINEL" => "string",
                "OUTPUT_TYPE"           => "list",
 
-               "OBJ_FILES"             => "list",
-
                "PRIVATE_DEPENDENCIES"  => "list",
                "PUBLIC_DEPENDENCIES"   => "list",
 
@@ -223,6 +216,9 @@ sub run_config_mk($$$$)
                {
                        $section = $1;
                        $infragment = 0;
+
+                       $result->{$section}{EXISTS}{KEY} = "EXISTS";
+                       $result->{$section}{EXISTS}{VAL} = 1;
                        next;
                }
 
@@ -233,6 +229,7 @@ sub run_config_mk($$$$)
                        $subdir =~ s/^\.$//g;
                        $subdir =~ s/^\.\///g;
                        $subdir .= "/" if ($subdir ne "");
+                       $makefile .= "basedir := $subdir\n";
                        $makefile .= run_config_mk($input, $srcdir, $builddir, $subdir.$subfile);
                        next;
                }
@@ -251,7 +248,6 @@ sub run_config_mk($$$$)
                        $infragment = 1;
                        next;
                }
-
                
                # Assignment
                if ($line =~ /^([a-zA-Z0-9_]+)[\t ]*=(.*)$/) {
@@ -280,6 +276,7 @@ sub run_config_mk($$$$)
                $input->{$name}{BASEDIR} = $basedir;
 
                foreach my $key (values %{$result->{$section}}) {
+                       next if ($key->{KEY} eq "EXISTS");
                        $key->{VAL} = smb_build::input::strtrim($key->{VAL});
                        my $vartype = $sectype->{$key->{KEY}};
                        if (not defined($vartype)) {
diff --git a/source4/build/smb_build/header.pm b/source4/build/smb_build/header.pm
deleted file mode 100644 (file)
index c2bdbaf..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-# SMB Build System
-# - create output for build.h
-#
-#  Copyright (C) Stefan (metze) Metzmacher 2004
-#  Copyright (C) Jelmer Vernooij 2005
-#  Released under the GNU GPL
-
-package header;
-use strict;
-
-sub _add_define_section($)
-{
-       my $DEFINE = shift;
-       my $output = "";
-
-       $output .= "
-/* $DEFINE->{COMMENT} */
-#define $DEFINE->{KEY} $DEFINE->{VAL}
-";
-
-       return $output;
-}
-
-sub _prepare_build_h($)
-{
-       my $depend = shift;
-       my @defines = ();
-       my $output = "";
-
-       foreach my $key (values %$depend) {
-               my $DEFINE = ();
-               next if ($key->{TYPE} ne "LIBRARY" and 
-                                $key->{TYPE} ne "MODULE" and
-                                $key->{TYPE} ne "SUBSYSTEM" and
-                                $key->{TYPE} ne "BINARY");
-               next unless defined($key->{INIT_FUNCTIONS});
-
-               my $name = $key->{NAME};
-               $name =~ s/-/_/g;
-               $DEFINE->{COMMENT} = "$key->{TYPE} $key->{NAME} INIT";
-               $DEFINE->{KEY} = "STATIC_$name\_MODULES";
-               $DEFINE->{VAL} = "\\\n";
-               foreach (@{$key->{INIT_FUNCTIONS}}) {
-                       $DEFINE->{VAL} .= "\t$_, \\\n";
-                       unless (/{/) {
-                               my $fn = $key->{INIT_FUNCTION_TYPE};
-                               my $n = $_;
-                               if ($fn =~ /\(\*\)/) {
-                                       $fn =~ s/\(\*\)/$n/;
-                                       $output .= "$fn;\n";
-                               } else {
-                                       $n =~ s/\&//;
-                                       $output .= "$fn $n;\n";
-                               }
-                       }
-               }
-
-               $DEFINE->{VAL} .= "\t$key->{INIT_FUNCTION_SENTINEL} \n";
-
-               push(@defines,$DEFINE);
-       }
-
-       #
-       # loop over all BUILD_H define sections
-       #
-       foreach (@defines) { $output .= _add_define_section($_); }
-
-       return $output;
-}
-
-###########################################################
-# This function creates include/build.h from the SMB_BUILD 
-# context
-#
-# create_build_h($SMB_BUILD_CTX)
-#
-# $SMB_BUILD_CTX -     the global SMB_BUILD context
-#
-# $output -            the resulting output buffer
-sub create_smb_build_h($$)
-{
-       my ($CTX, $file) = @_;
-
-       open(BUILD_H,">$file") || die ("Can't open `$file'\n");
-       print BUILD_H "/* autogenerated by build/smb_build/main.pl */\n";
-       print BUILD_H _prepare_build_h($CTX);
-       close(BUILD_H);
-
-       print __FILE__.": creating $file\n";
-}
-
-1;
index 948f2657b4cb7a9bca621d42646ac78b8696c6aa..eb20a686c1dd8c2db0e794d497b93d8a225b3117 100644 (file)
@@ -107,7 +107,7 @@ sub check_module($$$)
        } 
        if (grep(/MERGED_OBJ/, @{$mod->{OUTPUT_TYPE}})) {
                push (@{$INPUT->{$mod->{SUBSYSTEM}}{INIT_FUNCTIONS}}, $mod->{INIT_FUNCTION}) if defined($mod->{INIT_FUNCTION});
-               unshift (@{$INPUT->{$mod->{SUBSYSTEM}}{PRIVATE_DEPENDENCIES}}, $mod->{NAME});
+               push (@{$INPUT->{$mod->{SUBSYSTEM}}{PRIVATE_DEPENDENCIES}}, $mod->{NAME});
        }
 }
 
@@ -151,7 +151,6 @@ sub check_python($$$)
                $dirname .= "/" unless $dirname =~ /\/$/;
                $dirname = "" if $dirname eq "./";
 
-               $python->{OBJ_FILES} = ["$dirname$basename\_wrap.o"];
                $python->{LIBRARY_REALNAME} = "_$basename.\$(SHLIBEXT)";
                $python->{PYTHON_FILES} = ["$dirname$basename.py"];
                push (@{$python->{CFLAGS}}, "\$(CFLAG_NO_UNUSED_MACROS)");
@@ -189,7 +188,6 @@ sub add_implicit($$)
        $INPUT->{$n} = {
                TYPE => "MAKE_RULE",
                NAME => $n,
-               TARGET => "",
                OUTPUT_TYPE => undef,
                LIBS => ["\$(".uc($n)."_LIBS)"],
                LDFLAGS => ["\$(".uc($n)."_LDFLAGS)"],
@@ -249,7 +247,7 @@ sub check($$$$$)
 
        foreach my $part (values %$INPUT) {
                $part->{LINK_FLAGS} = [];
-               $part->{FULL_OBJ_LIST} = ["\$($part->{NAME}_OBJ_LIST)"];
+               $part->{FULL_OBJ_LIST} = ["\$($part->{NAME}_OBJ_FILES)"];
 
                if ($part->{TYPE} eq "SUBSYSTEM") { 
                        check_subsystem($INPUT, $part, $subsys_ot);
index c3dc46461bdb977abf8b01e9f48ba5807209e77c..cb7bf7439ec30291898fd5b2d8a81750ce70995d 100644 (file)
@@ -6,7 +6,6 @@
 #  Released under the GNU GPL                          
 
 use smb_build::makefile;
-use smb_build::header;
 use smb_build::input;
 use smb_build::config_mk;
 use smb_build::output;
@@ -51,8 +50,8 @@ foreach my $key (values %$OUTPUT) {
 foreach my $key (values %$OUTPUT) {
        next unless defined $key->{OUTPUT_TYPE};
 
+       $mkenv->StaticLibraryPrimitives($key) if grep(/STATIC_LIBRARY/, @{$key->{OUTPUT_TYPE}});
        $mkenv->MergedObj($key) if grep(/MERGED_OBJ/, @{$key->{OUTPUT_TYPE}});
-       $mkenv->StaticLibrary($key) if grep(/STATIC_LIBRARY/, @{$key->{OUTPUT_TYPE}});
        if (defined($key->{PC_FILE})) {
                $mkenv->output("PC_FILES += $key->{BASEDIR}/$key->{PC_FILE}\n");
        } 
@@ -62,27 +61,35 @@ foreach my $key (values %$OUTPUT) {
            ${$key->{OUTPUT_TYPE}}[0] eq "SHARED_LIBRARY") {
                $shared_libs_used = 1;
        }
-       $mkenv->SharedModulePrimitives($key) if ($key->{TYPE} eq "MODULE" or 
-                                                                  $key->{TYPE} eq "PYTHON") and
-                                       grep(/SHARED_LIBRARY/, @{$key->{OUTPUT_TYPE}});
        $mkenv->PythonFiles($key) if defined($key->{PYTHON_FILES});
-       $mkenv->ProtoHeader($key) if defined($key->{PRIVATE_PROTO_HEADER});
+       if ($key->{TYPE} eq "MODULE" and @{$key->{OUTPUT_TYPE}}[0] eq "MERGED_OBJ" and defined($key->{INIT_FUNCTION})) {
+               $mkenv->output("$key->{SUBSYSTEM}_INIT_FUNCTIONS += $key->{INIT_FUNCTION},\n");
+       }
        $mkenv->CFlags($key);
 }
 
 foreach my $key (values %$OUTPUT) {
        next unless defined $key->{OUTPUT_TYPE};
 
+       $mkenv->Integrated($key) if grep(/INTEGRATED/, @{$key->{OUTPUT_TYPE}});
+}
+
+foreach my $key (values %$OUTPUT) {
+       next unless defined $key->{OUTPUT_TYPE};
+
+       $mkenv->StaticLibrary($key) if grep(/STATIC_LIBRARY/, @{$key->{OUTPUT_TYPE}});
        $mkenv->SharedLibrary($key) if ($key->{TYPE} eq "LIBRARY") and
                                        grep(/SHARED_LIBRARY/, @{$key->{OUTPUT_TYPE}});
-       $mkenv->SharedModule($key) if ($key->{TYPE} eq "MODULE" or 
-                                                                  $key->{TYPE} eq "PYTHON") and
-                                       grep(/SHARED_LIBRARY/, @{$key->{OUTPUT_TYPE}});
+       $mkenv->SharedModule($key) if ($key->{TYPE} eq "MODULE" and
+                                       grep(/SHARED_LIBRARY/, @{$key->{OUTPUT_TYPE}}));
+       $mkenv->PythonModule($key) if ($key->{TYPE} eq "PYTHON");
        $mkenv->Binary($key) if grep(/BINARY/, @{$key->{OUTPUT_TYPE}});
+       $mkenv->ProtoHeader($key) if defined($key->{PRIVATE_PROTO_HEADER}) or 
+                                        defined($key->{PUBLIC_PROTO_HEADER});
+       $mkenv->InitFunctions($key) if defined($key->{INIT_FUNCTIONS});
 }
 
 $mkenv->write("data.mk");
-header::create_smb_build_h($OUTPUT, "include/build.h");
 
 summary::show($OUTPUT, \%config::config);
 
index 03198fd944d8ae92102f3219ef867727e67a6326..36139eca4d04a2e1bb2a5f29fc0860b9b11b8293 100644 (file)
@@ -23,12 +23,11 @@ sub new($$$)
 
        $self->{output} = "";
 
-       $self->{mkfile} = $mkfile;
-
        $self->output("################################################\n");
        $self->output("# Autogenerated by build/smb_build/makefile.pm #\n");
        $self->output("################################################\n");
        $self->output("\n");
+       $self->output($mkfile);
 
        return $self;
 }
@@ -73,17 +72,7 @@ sub _prepare_mk_files($)
                push (@tmp, $_);
        }
 
-       $self->output("
-ifneq (\$(MAKECMDGOALS),clean)
-ifneq (\$(MAKECMDGOALS),distclean)
-ifneq (\$(MAKECMDGOALS),realdistclean)
-");
        $self->output("MK_FILES = " . array2oneperline(\@tmp) . "\n");
-       $self->output("
-endif
-endif
-endif
-");
 }
 
 sub array2oneperline($)
@@ -113,94 +102,57 @@ sub _prepare_list($$$)
        $self->output("$ctx->{NAME}_$var =$tmplist\n");
 }
 
-sub SharedModulePrimitives($$)
+sub PythonModule($$)
 {
        my ($self,$ctx) = @_;
-       
-       #FIXME
+
+       $self->output("$ctx->{NAME}_OUTPUT = $ctx->{OUTPUT}\n");
+       $self->_prepare_list($ctx, "FULL_OBJ_LIST");
+       $self->_prepare_list($ctx, "DEPEND_LIST");
+       $self->_prepare_list($ctx, "LINK_FLAGS");
+
+       $self->output("\$(eval \$(call python_c_module_template,$ctx->{LIBRARY_REALNAME},\$($ctx->{NAME}_DEPEND_LIST) \$($ctx->{NAME}_FULL_OBJ_LIST), \$($ctx->{NAME}\_FULL_OBJ_LIST) \$($ctx->{NAME}_LINK_FLAGS)))\n");
 }
 
 sub SharedModule($$)
 {
        my ($self,$ctx) = @_;
 
-       my $init_obj = "";
-
        my $sane_subsystem = lc($ctx->{SUBSYSTEM});
        $sane_subsystem =~ s/^lib//;
        
-       if ($ctx->{TYPE} eq "PYTHON") {
-               $self->output("PYTHON_DSOS += $ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME}\n");
-       } else {
-               $self->output("PLUGINS += $ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME}\n");
-               $self->output("installplugins:: $ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME}\n");
-               $self->output("\t\@echo Installing $ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME} as \$(DESTDIR)\$(modulesdir)/$sane_subsystem/$ctx->{LIBRARY_REALNAME}\n");
-               $self->output("\t\@mkdir -p \$(DESTDIR)\$(modulesdir)/$sane_subsystem/\n");
-               $self->output("\t\@cp $ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME} \$(DESTDIR)\$(modulesdir)/$sane_subsystem/$ctx->{LIBRARY_REALNAME}\n");
-               if (defined($ctx->{ALIASES})) {
-                       foreach (@{$ctx->{ALIASES}}) {
-                               $self->output("\t\@rm -f \$(DESTDIR)\$(modulesdir)/$sane_subsystem/$_.\$(SHLIBEXT)\n");
-                               $self->output("\t\@ln -fs $ctx->{LIBRARY_REALNAME} \$(DESTDIR)\$(modulesdir)/$sane_subsystem/$_.\$(SHLIBEXT)\n");
-                       }
-               }
-
-               $self->output("uninstallplugins::\n");
-               $self->output("\t\@echo Uninstalling \$(DESTDIR)\$(modulesdir)/$sane_subsystem/$ctx->{LIBRARY_REALNAME}\n");
-               $self->output("\t\@-rm \$(DESTDIR)\$(modulesdir)/$sane_subsystem/$ctx->{LIBRARY_REALNAME}\n");
-
-               if (defined($ctx->{ALIASES})) {
-                       foreach (@{$ctx->{ALIASES}}) {
-                               $self->output("\t\@-rm \$(DESTDIR)\$(modulesdir)/$sane_subsystem/$_.\$(SHLIBEXT)\n");
-                       }
-               }
-       }
+       $self->output("PLUGINS += $ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME}\n");
+       $self->output("installplugins:: $ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME}\n");
+       $self->output("\t\@echo Installing $ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME} as \$(DESTDIR)\$(modulesdir)/$sane_subsystem/$ctx->{LIBRARY_REALNAME}\n");
+       $self->output("\t\@mkdir -p \$(DESTDIR)\$(modulesdir)/$sane_subsystem/\n");
+       $self->output("\t\@cp $ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME} \$(DESTDIR)\$(modulesdir)/$sane_subsystem/$ctx->{LIBRARY_REALNAME}\n");
+       $self->output("uninstallplugins::\n");
+       $self->output("\t\@echo Uninstalling \$(DESTDIR)\$(modulesdir)/$sane_subsystem/$ctx->{LIBRARY_REALNAME}\n");
+       $self->output("\t\@-rm \$(DESTDIR)\$(modulesdir)/$sane_subsystem/$ctx->{LIBRARY_REALNAME}\n");
 
        $self->output("$ctx->{NAME}_OUTPUT = $ctx->{OUTPUT}\n");
        $self->_prepare_list($ctx, "FULL_OBJ_LIST");
        $self->_prepare_list($ctx, "DEPEND_LIST");
        $self->_prepare_list($ctx, "LINK_FLAGS");
 
-       if (defined($ctx->{INIT_FUNCTION}) and $ctx->{TYPE} ne "PYTHON" and 
-               $ctx->{INIT_FUNCTION_TYPE} =~ /\(\*\)/) {
-               my $init_fn = $ctx->{INIT_FUNCTION_TYPE};
-               $init_fn =~ s/\(\*\)/init_module/;
-               my $proto_fn = $ctx->{INIT_FUNCTION_TYPE};
-               $proto_fn =~ s/\(\*\)/$ctx->{INIT_FUNCTION}/;
-
-               $self->output(<< "__EOD__"
-bin/$ctx->{NAME}_init_module.c:
-       \@echo Creating \$\@
-       \@echo \"#include \\\"includes.h\\\"\" > \$\@
-       \@echo \"$proto_fn;\" >> \$\@
-       \@echo \"_PUBLIC_ $init_fn\" >> \$\@
-       \@echo \"{\" >> \$\@
-       \@echo \"       return $ctx->{INIT_FUNCTION}();\" >> \$\@
-       \@echo \"}\" >> \$\@
-       \@echo \"\" >> \$\@
-__EOD__
-);
-               $init_obj = "bin/$ctx->{NAME}_init_module.o";
+       if (defined($ctx->{INIT_FUNCTION}) and $ctx->{INIT_FUNCTION_TYPE} =~ /\(\*\)/) {
+               $self->output("\$($ctx->{NAME}_OBJ_FILES): CFLAGS+=-D$ctx->{INIT_FUNCTION}=init_module\n");
        }
 
-       $self->output(<< "__EOD__"
-#
-
-$ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME}: \$($ctx->{NAME}_DEPEND_LIST) \$($ctx->{NAME}_FULL_OBJ_LIST) $init_obj
-       \@echo Linking \$\@
-       \@mkdir -p $ctx->{SHAREDDIR}
-       \@\$(MDLD) \$(LDFLAGS) \$(MDLD_FLAGS) \$(INTERN_LDFLAGS) -o \$\@ \$(INSTALL_LINK_FLAGS) \\
-               \$($ctx->{NAME}\_FULL_OBJ_LIST) $init_obj \\
-               \$($ctx->{NAME}_LINK_FLAGS)
-__EOD__
-);
+       $self->output("\$(eval \$(call shared_module_template,$ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME}, \$($ctx->{NAME}_DEPEND_LIST) \$($ctx->{NAME}_FULL_OBJ_LIST), \$($ctx->{NAME}\_FULL_OBJ_LIST) \$($ctx->{NAME}_LINK_FLAGS)))\n");
 
        if (defined($ctx->{ALIASES})) {
                foreach (@{$ctx->{ALIASES}}) {
-                       $self->output("\t\@rm -f $ctx->{SHAREDDIR}/$_.\$(SHLIBEXT)\n");
-                       $self->output("\t\@ln -fs $ctx->{LIBRARY_REALNAME} $ctx->{SHAREDDIR}/$_.\$(SHLIBEXT)\n");
+                       $self->output("$ctx->{SHAREDDIR}/$_.\$(SHLIBEXT): $ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME}\n");
+                       $self->output("\t\@ln -fs \$(<F) \$@\n");
+                       $self->output("PLUGINS += $ctx->{SHAREDDIR}/$_.\$(SHLIBEXT)\n");
+                       $self->output("\n");
+                       $self->output("uninstallplugins::\n");
+                       $self->output("\t\@-rm \$(DESTDIR)\$(modulesdir)/$sane_subsystem/$_.\$(SHLIBEXT)\n\n");
+                       $self->output("installplugins::\n");
+                       $self->output("\t\@ln -fs $ctx->{LIBRARY_REALNAME} \$(DESTDIR)\$(modulesdir)/$sane_subsystem/$_.\$(SHLIBEXT)\n\n");
                }
        }
-       $self->output("\n");
 }
 
 sub SharedLibraryPrimitives($$)
@@ -220,7 +172,7 @@ sub SharedLibrary($$)
 {
        my ($self,$ctx) = @_;
 
-       $self->output("SHARED_LIBS += $ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME}\n") if (defined($ctx->{SO_VERSION}));
+       $self->output("SHARED_LIBS += $ctx->{RESULT_SHARED_LIBRARY}\n") if (defined($ctx->{SO_VERSION}));
 
        $self->_prepare_list($ctx, "DEPEND_LIST");
        $self->_prepare_list($ctx, "LINK_FLAGS");
@@ -230,48 +182,46 @@ $ctx->{RESULT_SHARED_LIBRARY}: \$($ctx->{NAME}_DEPEND_LIST) \$($ctx->{NAME}_FULL
        \@echo Linking \$\@
        \@mkdir -p \$(\@D)
        \@\$(SHLD) \$(LDFLAGS) \$(SHLD_FLAGS) \$(INTERN_LDFLAGS) -o \$\@ \$(INSTALL_LINK_FLAGS) \\
-               \$($ctx->{NAME}\_FULL_OBJ_LIST) \\
-               \$($ctx->{NAME}_LINK_FLAGS) \\
+               \$($ctx->{NAME}\_FULL_OBJ_LIST) \$($ctx->{NAME}_LINK_FLAGS) \\
                \$(if \$(SONAMEFLAG), \$(SONAMEFLAG)$ctx->{LIBRARY_SONAME})
+ifneq ($ctx->{LIBRARY_REALNAME}, $ctx->{LIBRARY_SONAME})
+       \@test \$($ctx->{NAME}_VERSION) = \$($ctx->{NAME}_SOVERSION) || ln -fs $ctx->{LIBRARY_REALNAME} $ctx->{SHAREDDIR}/$ctx->{LIBRARY_SONAME}
+endif
+ifdef $ctx->{NAME}_SOVERSION
+       \@ln -fs $ctx->{LIBRARY_REALNAME} $ctx->{SHAREDDIR}/$ctx->{LIBRARY_DEBUGNAME}
+endif
 __EOD__
 );
-       if ($ctx->{LIBRARY_REALNAME} ne $ctx->{LIBRARY_SONAME}) {
-               $self->output("\t\@test \$($ctx->{NAME}_VERSION) = \$($ctx->{NAME}_SOVERSION) || ln -fs $ctx->{LIBRARY_REALNAME} $ctx->{SHAREDDIR}/$ctx->{LIBRARY_SONAME}\n");
-       }
-       $self->output("ifdef $ctx->{NAME}_SOVERSION\n");
-       $self->output("\t\@ln -fs $ctx->{LIBRARY_REALNAME} $ctx->{SHAREDDIR}/$ctx->{LIBRARY_DEBUGNAME}\n");
-       $self->output("endif\n");
 }
 
 sub MergedObj($$)
 {
        my ($self, $ctx) = @_;
 
-       return unless defined($ctx->{OUTPUT});
+       $self->output("$ctx->{NAME}_OUTPUT = $ctx->{OUTPUT}\n");
+       $self->output("\$(call partial_link_template, \$($ctx->{NAME}_OUTPUT), \$($ctx->{NAME}_OBJ_FILES))\n");
+}
+
+sub StaticLibraryPrimitives($$)
+{
+       my ($self,$ctx) = @_;
 
        $self->output("$ctx->{NAME}_OUTPUT = $ctx->{OUTPUT}\n");
-       $self->output(<< "__EOD__"
-#
-$ctx->{RESULT_MERGED_OBJ}: \$($ctx->{NAME}_OBJ_LIST)
-       \@echo Partially linking \$@
-       \@mkdir -p \$(\@D)
-       \$(PARTLINK) -o \$@ \$($ctx->{NAME}_OBJ_LIST)
+       $self->_prepare_list($ctx, "FULL_OBJ_LIST");
+}
 
-__EOD__
-);
+sub InitFunctions($$)
+{
+       my ($self, $ctx) = @_;
+       $self->output("\$($ctx->{NAME}_OBJ_FILES): CFLAGS+=-DSTATIC_$ctx->{NAME}_MODULES=\"\$($ctx->{NAME}_INIT_FUNCTIONS)$ctx->{INIT_FUNCTION_SENTINEL}\"\n");
 }
 
 sub StaticLibrary($$)
 {
        my ($self,$ctx) = @_;
 
-       return unless (defined($ctx->{OBJ_FILES}));
-
-       $self->output("STATIC_LIBS += $ctx->{TARGET_STATIC_LIBRARY}\n") if ($ctx->{TYPE} eq "LIBRARY");
-
+       $self->output("STATIC_LIBS += $ctx->{RESULT_STATIC_LIBRARY}\n") if ($ctx->{TYPE} eq "LIBRARY");
        $self->output("$ctx->{NAME}_OUTPUT = $ctx->{OUTPUT}\n");
-       $self->_prepare_list($ctx, "FULL_OBJ_LIST");
-
        $self->output("$ctx->{RESULT_STATIC_LIBRARY}: \$($ctx->{NAME}_FULL_OBJ_LIST)\n");
 }
 
@@ -280,37 +230,21 @@ sub Binary($$)
        my ($self,$ctx) = @_;
 
        unless (defined($ctx->{INSTALLDIR})) {
+               $self->output("binaries:: $ctx->{TARGET_BINARY}\n");
        } elsif ($ctx->{INSTALLDIR} eq "SBINDIR") {
-               $self->output("SBIN_PROGS += bin/$ctx->{BINARY}\n");
+               $self->output("SBIN_PROGS += $ctx->{RESULT_BINARY}\n");
        } elsif ($ctx->{INSTALLDIR} eq "BINDIR") {
-               $self->output("BIN_PROGS += bin/$ctx->{BINARY}\n");
+               $self->output("BIN_PROGS += $ctx->{RESULT_BINARY}\n");
        }
 
-       $self->output("binaries:: $ctx->{TARGET_BINARY}\n");
-
        $self->_prepare_list($ctx, "FULL_OBJ_LIST");
        $self->_prepare_list($ctx, "DEPEND_LIST");
        $self->_prepare_list($ctx, "LINK_FLAGS");
 
-$self->output(<< "__EOD__"
-$ctx->{RESULT_BINARY}: \$($ctx->{NAME}_DEPEND_LIST) \$($ctx->{NAME}_FULL_OBJ_LIST)
-       \@echo Linking \$\@
-__EOD__
-       );
-
        if (defined($ctx->{USE_HOSTCC}) && $ctx->{USE_HOSTCC} eq "YES") {
-               $self->output(<< "__EOD__"
-       \@\$(HOSTLD) \$(HOSTLD_FLAGS) -L\${builddir}/bin/static -o \$\@ \$(INSTALL_LINK_FLAGS) \\
-               \$\($ctx->{NAME}_LINK_FLAGS)
-__EOD__
-               );
+$self->output("\$(call host_binary_link_template, $ctx->{RESULT_BINARY}, \$($ctx->{NAME}_DEPEND_LIST) \$($ctx->{NAME}_FULL_OBJ_LIST), \$($ctx->{NAME}_LINK_FLAGS))\n");
        } else {
-               $self->output(<< "__EOD__"
-       \@\$(BNLD) \$(BNLD_FLAGS) \$(INTERN_LDFLAGS) -o \$\@ \$(INSTALL_LINK_FLAGS) \\
-               \$\($ctx->{NAME}_LINK_FLAGS) 
-
-__EOD__
-               );
+$self->output("\$(call binary_link_template, $ctx->{RESULT_BINARY}, \$($ctx->{NAME}_DEPEND_LIST) \$($ctx->{NAME}_FULL_OBJ_LIST), \$($ctx->{NAME}_LINK_FLAGS))\n");
        }
 }
 
@@ -319,10 +253,7 @@ sub PythonFiles($$)
        my ($self,$ctx) = @_;
 
        foreach (@{$ctx->{PYTHON_FILES}}) {
-               my $target = "bin/python/".basename($_);
-               my $source = output::add_dir_str($ctx->{BASEDIR}, $_);
-               $self->output("$target: $source\n\n");
-               $self->output("PYTHON_PYS += $target\n");
+               $self->output("\$(eval \$(call python_py_module_template," . basename($_) . ",\$(addprefix $ctx->{BASEDIR}/, $_)))\n");
        }
 }
 
@@ -330,25 +261,17 @@ sub ProtoHeader($$)
 {
        my ($self,$ctx) = @_;
 
-       my $priv = output::add_dir_str($ctx->{BASEDIR}, $ctx->{PRIVATE_PROTO_HEADER});
-       $self->output("PROTO_HEADERS += $priv\n");
-
-       $self->output("$priv: $ctx->{MK_FILE} \$($ctx->{NAME}_OBJ_LIST:.o=.c) \$(srcdir)/script/mkproto.pl\n");
-       $self->output("\t\@echo \"Creating \$@\"\n");
-       $self->output("\t\@mkdir -p \$(\@D)\n");
-       $self->output("\t\@\$(PERL) \$(srcdir)/script/mkproto.pl --srcdir=\$(srcdir) --builddir=\$(builddir) --all=\$@ \$($ctx->{NAME}_OBJ_LIST)\n\n");
+       my $target = "\$(addprefix $ctx->{BASEDIR}/, $ctx->{PRIVATE_PROTO_HEADER})";
+       $self->output("PROTO_HEADERS += $target\n");
+       $self->output("\$(call proto_header_template, $target, \$($ctx->{NAME}_OBJ_FILES:.o=.c))\n");
 }
 
 sub write($$)
 {
        my ($self, $file) = @_;
 
-       $self->output("ALL_OBJS = " . array2oneperline($self->{all_objs}) . "\n");
-
        $self->_prepare_mk_files();
 
-       $self->output($self->{mkfile});
-
        open(MAKEFILE,">$file") || die ("Can't open $file\n");
        print MAKEFILE $self->{output};
        close(MAKEFILE);
@@ -374,7 +297,6 @@ sub CFlags($$)
 
        my $src_ne_build = ($srcdir ne $builddir) ? 1 : 0;
 
-       return unless defined ($key->{OBJ_LIST});
        return unless defined ($key->{FINAL_CFLAGS});
        return unless (@{$key->{FINAL_CFLAGS}} > 0);
 
@@ -388,19 +310,19 @@ sub CFlags($$)
        my @cflags = ();
        foreach my $flag (@sorted_cflags) {
                if($src_ne_build) {
-                               if($flag =~ m#^-I([^/].*$)#) {
-                                       my $dir = $1;
-                                       $dir =~ s#^\$\((?:src|build)dir\)/?##;
+                       if($flag =~ m#^-I([^/].*$)#) {
+                               my $dir = $1;
+                               $dir =~ s#^\$\((?:src|build)dir\)/?##;
                                push(@cflags, "-I$builddir/$dir", "-I$srcdir/$dir");
-                                       next;
-                               }
+                               next;
+                       }
                }
                push(@cflags, $flag);
        }
        
        my $cflags = join(' ', @cflags);
 
-       $self->output("\$(patsubst %.ho,%.d,\$($key->{NAME}_OBJ_LIST:.o=.d)) \$($key->{NAME}_OBJ_LIST): CFLAGS+= $cflags\n");
+       $self->output("\$(patsubst %.ho,%.d,\$($key->{NAME}_OBJ_FILES:.o=.d)) \$($key->{NAME}_OBJ_FILES): CFLAGS+= $cflags\n");
 }
 
 1;
index 4ae4a62cf4991ff50c5dc9a83331f18abaa5b510..b2737b0929ec0ddc241db58a2fef4af5dfbc1c71 100644 (file)
@@ -9,38 +9,6 @@ package output;
 use strict;
 use smb_build::config;
 
-sub add_dir_str($$)
-{
-       my ($dir,$file) = @_;
-       my $dirsep = "/";
-
-       $dir =~ s/^\.$//g;
-       $dir =~ s/^\.\///g;
-
-       $dirsep = "" if ($dir eq "");
-
-       my $ret = $file;
-       if (substr($ret, 0, 1) ne "\$") {
-               $ret = "$dir$dirsep$file";
-               $ret =~ s/([^\/\.]+)\/\.\.\///g;
-               $ret =~ s/([^\/\.]+)\/\.\.\///g;
-       }
-
-       return $ret;
-}
-
-sub add_dir_array($$)
-{
-       my ($dir,$files) = @_;
-       my @ret = ();
-
-       foreach (@{$files}) {
-               push (@ret, add_dir_str($dir, $_));
-       }
-
-       return @ret;
-}
-
 sub generate_shared_library($)
 {
        my $lib = shift;
@@ -97,11 +65,9 @@ sub generate_merged_obj($)
        my $link_name = $lib->{NAME};
        $link_name =~ s/^LIB//;
 
-       if (defined($lib->{OBJ_FILES})) {
-               $lib->{MERGED_OBJNAME} = lc($link_name).".o";
-               $lib->{RESULT_MERGED_OBJ} = $lib->{OUTPUT_MERGED_OBJ} = "bin/mergedobj/$lib->{MERGED_OBJNAME}";
-               $lib->{TARGET_MERGED_OBJ} = $lib->{RESULT_MERGED_OBJ};
-       }
+       $lib->{MERGED_OBJNAME} = lc($link_name).".o";
+       $lib->{RESULT_MERGED_OBJ} = $lib->{OUTPUT_MERGED_OBJ} = "bin/mergedobj/$lib->{MERGED_OBJNAME}";
+       $lib->{TARGET_MERGED_OBJ} = $lib->{RESULT_MERGED_OBJ};
 }
 
 sub generate_static_library($)
@@ -116,12 +82,10 @@ sub generate_static_library($)
 
        $lib->{LIBRARY_NAME} = "lib".lc($link_name).".a";
 
-       if (defined($lib->{OBJ_FILES})) {
-               $lib->{RESULT_STATIC_LIBRARY} = "bin/static/$lib->{LIBRARY_NAME}";
-               $lib->{TARGET_STATIC_LIBRARY} = $lib->{RESULT_STATIC_LIBRARY};
-               $lib->{STATICDIR} = 'bin/static';
-               $lib->{OUTPUT_STATIC_LIBRARY} = "-l".lc($link_name);
-       }
+       $lib->{RESULT_STATIC_LIBRARY} = "bin/static/$lib->{LIBRARY_NAME}";
+       $lib->{TARGET_STATIC_LIBRARY} = $lib->{RESULT_STATIC_LIBRARY};
+       $lib->{STATICDIR} = 'bin/static';
+       $lib->{OUTPUT_STATIC_LIBRARY} = "-l".lc($link_name);
 }
 
 sub generate_binary($)
@@ -160,10 +124,6 @@ sub create_output($$)
        foreach $part (values %{$depend}) {
                next unless(defined($part->{OUTPUT_TYPE}));
 
-               # Combine object lists
-               my @list = add_dir_array($part->{BASEDIR}, $part->{OBJ_FILES});
-               push(@{$part->{OBJ_LIST}}, @list) if defined($part->{OBJ_FILES});
-
                generate_binary($part) if grep(/BINARY/, @{$part->{OUTPUT_TYPE}});
                generate_shared_library($part) if grep(/SHARED_LIBRARY/, @{$part->{OUTPUT_TYPE}});
                generate_static_library($part) if grep(/STATIC_LIBRARY/, @{$part->{OUTPUT_TYPE}});
@@ -197,7 +157,7 @@ sub create_output($$)
                                push (@{$part->{FULL_OBJ_LIST}}, $elem->{TARGET});
                        } else {
                                push(@{$part->{LINK_FLAGS}}, "\$($elem->{NAME}_OUTPUT)") if defined($elem->{OUTPUT});
-                               push(@{$part->{DEPEND_LIST}}, $elem->{TARGET}) if defined($elem->{TARGET});
+                               push(@{$part->{DEPEND_LIST}}, $elem->{TARGET}) if (defined($elem->{TARGET}));
                        }
                }
        }
index 9dd3758e7a14df0584f706695a497918e50ed23f..c10cf57b5b2aaaf737aefd533b694b1efc85c62e 100644 (file)
@@ -6,11 +6,13 @@
 INIT_FUNCTION = server_service_cldapd_init
 SUBSYSTEM = service
 PRIVATE_PROTO_HEADER = proto.h
-OBJ_FILES = \
-               cldap_server.o \
-               netlogon.o \
-               rootdse.o
 PRIVATE_DEPENDENCIES = \
                LIBCLI_CLDAP LIBNETIF process_model
 # End SUBSYSTEM CLDAPD
 #######################
+
+CLDAPD_OBJ_FILES = $(addprefix cldap_server/, \
+               cldap_server.o \
+               netlogon.o \
+               rootdse.o)
+
index 9f785004a0163c2d00867db9d36ec0b8c57cd941..513c05dfb330c7da6f52e9ac6747516c97d8c149 100644 (file)
@@ -4,8 +4,6 @@
 # Start BINARY smbclient
 [BINARY::smbclient]
 INSTALLDIR = BINDIR
-OBJ_FILES = \
-               client.o
 PRIVATE_DEPENDENCIES = \
                LIBSAMBA-CONFIG \
                SMBREADLINE \
@@ -20,13 +18,12 @@ PRIVATE_DEPENDENCIES = \
 # End BINARY smbclient
 #################################
 
+smbclient_OBJ_FILES = client/client.o
+
 #################################
 # Start BINARY cifsdd
 [BINARY::cifsdd]
 INSTALLDIR = BINDIR
-OBJ_FILES = \
-               cifsdd.o \
-               cifsddio.o
 PRIVATE_DEPENDENCIES = \
                LIBSAMBA-CONFIG \
                LIBCLI_SMB \
@@ -36,3 +33,4 @@ PRIVATE_DEPENDENCIES = \
 # End BINARY sdd
 #################################
 
+cifsdd_OBJ_FILES = client/cifsdd.o client/cifsddio.o
index 8b225202fba5cdd4bfb3371d71edb6f7a4c8b6f8..00ac597f947926b41d4887f84f02d5b731c7a6e7 100644 (file)
@@ -1,7 +1,6 @@
 mkinclude ctdb/config.mk
 
-####################
 [SUBSYSTEM::CLUSTER]
-OBJ_FILES = cluster.o \
-               local.o
 PRIVATE_DEPENDENCIES = ctdb
+
+CLUSTER_OBJ_FILES = cluster/cluster.o cluster/local.o
index b8199cafe4737e92a0ce17da4a68116367fc8786..01c639d142a658ff6fd0d443eb9ccfad478157da 100644 (file)
@@ -1,20 +1,24 @@
 ##################
 [SUBSYSTEM::brlock_ctdb]
-OBJ_FILES = brlock_ctdb.o
 PUBLIC_DEPENDENCIES = ctdb
 
+brlock_ctdb_OBJ_FILES = cluster/ctdb/brlock_ctdb.o
+
 ##################
 [SUBSYSTEM::opendb_ctdb]
-OBJ_FILES = opendb_ctdb.o
 PUBLIC_DEPENDENCIES = ctdb
 
+opendb_ctdb_OBJ_FILES = cluster/ctdb/opendb_ctdb.o
+
 ##################
 [SUBSYSTEM::ctdb]
-OBJ_FILES = \
+PUBLIC_DEPENDENCIES = TDB_WRAP LIBTALLOC
+
+ctdb_OBJ_FILES = $(addprefix cluster/ctdb/, \
                ctdb_cluster.o \
                client/ctdb_client.o \
                common/ctdb_io.o \
                common/ctdb_ltdb.o \
                common/ctdb_message.o \
-               common/ctdb_util.o
-PUBLIC_DEPENDENCIES = TDB_WRAP LIBTALLOC
+               common/ctdb_util.o)
+
index fb8cd4f5031a6d263831b8bf88759aa9fe58e086..d2ee92081f6136535f95b876638ccf23a70c84da 100644 (file)
@@ -10,31 +10,33 @@ PUBLIC_DEPENDENCIES = HEIMDAL_KRB5
 PRIVATE_DEPENDENCIES = LIBNDR NDR_MISC NDR_DRSUAPI NDR_DRSBLOBS NSS_WRAPPER \
                                           auth_system_session LDAP_ENCODE LIBCLI_AUTH LIBNDR \
                                           SAMDB_SCHEMA LDB_WRAP SAMDB_COMMON
-OBJ_FILES = \
+
+
+SAMDB_OBJ_FILES = $(addprefix dsdb/, \
                samdb/samdb.o \
                samdb/samdb_privilege.o \
                samdb/cracknames.o \
-               repl/replicated_objects.o
-
+               repl/replicated_objects.o)
 
 PUBLIC_HEADERS += dsdb/samdb/samdb.h
 
 [SUBSYSTEM::SAMDB_COMMON]
 PRIVATE_PROTO_HEADER = common/proto.h
 PRIVATE_DEPENDENCIES = LIBLDB
-OBJ_FILES = \
-               common/sidmap.o \
-               common/flag_mapping.o \
-               common/util.o
+
+SAMDB_COMMON_OBJ_FILES = $(addprefix dsdb/common/, \
+               sidmap.o \
+               flag_mapping.o \
+               util.o)
 
 [SUBSYSTEM::SAMDB_SCHEMA]
 PRIVATE_PROTO_HEADER = schema/proto.h
 PRIVATE_DEPENDENCIES = SAMDB_COMMON NDR_DRSUAPI NDR_DRSBLOBS
-OBJ_FILES = \
-               schema/schema_init.o \
-               schema/schema_syntax.o \
-               schema/schema_constructed.o \
 
+SAMDB_SCHEMA_OBJ_FILES = $(addprefix dsdb/schema/, \
+               schema_init.o \
+               schema_syntax.o \
+               schema_constructed.o)
 
 PUBLIC_HEADERS += dsdb/schema/schema.h
 
@@ -43,15 +45,17 @@ PUBLIC_HEADERS += dsdb/schema/schema.h
 [MODULE::DREPL_SRV]
 INIT_FUNCTION = server_service_drepl_init
 SUBSYSTEM = service
-OBJ_FILES = \
-               repl/drepl_service.o \
-               repl/drepl_periodic.o \
-               repl/drepl_partitions.o \
-               repl/drepl_out_pull.o \
-               repl/drepl_out_helpers.o
 PRIVATE_PROTO_HEADER = repl/drepl_service_proto.h
 PRIVATE_DEPENDENCIES = \
                SAMDB \
                process_model 
 # End SUBSYSTEM DREPL_SRV
 #######################
+
+DREPL_SRV_OBJ_FILES = $(addprefix dsdb/repl/, \
+               drepl_service.o \
+               drepl_periodic.o \
+               drepl_partitions.o \
+               drepl_out_pull.o \
+               drepl_out_helpers.o)
+
index de93b5638df22801b951edb15967c7510a6895b5..1708c66d4471c96b77c0d46f0f4c466e69af9623 100644 (file)
@@ -4,12 +4,12 @@
 SUBSYSTEM = LIBLDB
 OUTPUT_TYPE = SHARED_LIBRARY
 PRIVATE_DEPENDENCIES = LIBTALLOC LIBNDR NDR_MISC
-INIT_FUNCTION = objectguid_module_module_ops
-OBJ_FILES = \
-               objectguid.o
+INIT_FUNCTION = LDB_MODULE(objectguid)
 # End MODULE ldb_objectguid
 ################################################
 
+ldb_objectguid_OBJ_FILES = dsdb/samdb/ldb_modules/objectguid.o
+
 ################################################
 # Start MODULE ldb_repl_meta_data
 [MODULE::ldb_repl_meta_data]
@@ -17,107 +17,104 @@ SUBSYSTEM = LIBLDB
 OUTPUT_TYPE = SHARED_LIBRARY
 PRIVATE_DEPENDENCIES = SAMDB LIBTALLOC LIBNDR NDR_MISC NDR_DRSUAPI \
                                           NDR_DRSBLOBS LIBNDR
-INIT_FUNCTION = repl_meta_data_module_module_ops
-OBJ_FILES = \
-               repl_meta_data.o
+INIT_FUNCTION = LDB_MODULE(repl_meta_data)
 # End MODULE ldb_repl_meta_data
 ################################################
 
+ldb_repl_meta_data_OBJ_FILES = dsdb/samdb/ldb_modules/repl_meta_data.o
+
 ################################################
 # Start MODULE ldb_dsdb_cache
 [MODULE::ldb_dsdb_cache]
 SUBSYSTEM = LIBLDB
 OUTPUT_TYPE = SHARED_LIBRARY
 PRIVATE_DEPENDENCIES = SAMDB LIBTALLOC
-INIT_FUNCTION = dsdb_cache_module_module_ops
-OBJ_FILES = \
-               dsdb_cache.o
+INIT_FUNCTION = LDB_MODULE(dsdb_cache)
 # End MODULE ldb_dsdb_cache
 ################################################
 
+ldb_dsdb_cache_OBJ_FILES = dsdb/samdb/ldb_modules/dsdb_cache.o
+
 ################################################
 # Start MODULE ldb_schema_fsmo
 [MODULE::ldb_schema_fsmo]
 SUBSYSTEM = LIBLDB
 OUTPUT_TYPE = SHARED_LIBRARY
 PRIVATE_DEPENDENCIES = SAMDB LIBTALLOC
-INIT_FUNCTION = schema_fsmo_module_module_ops
-OBJ_FILES = \
-               schema_fsmo.o
+INIT_FUNCTION = LDB_MODULE(schema_fsmo)
 # End MODULE ldb_schema_fsmo
 ################################################
 
+ldb_schema_fsmo_OBJ_FILES = dsdb/samdb/ldb_modules/schema_fsmo.o
+
 ################################################
 # Start MODULE ldb_naming_fsmo
 [MODULE::ldb_naming_fsmo]
 SUBSYSTEM = LIBLDB
 OUTPUT_TYPE = SHARED_LIBRARY
 PRIVATE_DEPENDENCIES = SAMDB LIBTALLOC
-INIT_FUNCTION = naming_fsmo_module_module_ops
-OBJ_FILES = \
-               naming_fsmo.o
+INIT_FUNCTION = LDB_MODULE(naming_fsmo)
 # End MODULE ldb_naming_fsmo
 ################################################
 
+ldb_naming_fsmo_OBJ_FILES = dsdb/samdb/ldb_modules/naming_fsmo.o
+
 ################################################
 # Start MODULE ldb_pdc_fsmo
 [MODULE::ldb_pdc_fsmo]
 SUBSYSTEM = LIBLDB
 OUTPUT_TYPE = SHARED_LIBRARY
 PRIVATE_DEPENDENCIES = SAMDB LIBTALLOC
-INIT_FUNCTION = pdc_fsmo_module_module_ops
-OBJ_FILES = \
-               pdc_fsmo.o
+INIT_FUNCTION = LDB_MODULE(pdc_fsmo)
 # End MODULE ldb_pdc_fsmo
 ################################################
 
+ldb_pdc_fsmo_OBJ_FILES = dsdb/samdb/ldb_modules/pdc_fsmo.o
+
 ################################################
 # Start MODULE ldb_samldb
 [MODULE::ldb_samldb]
 SUBSYSTEM = LIBLDB
 OUTPUT_TYPE = SHARED_LIBRARY
 PRIVATE_DEPENDENCIES = LIBTALLOC LDAP_ENCODE NDR_MISC SAMDB
-INIT_FUNCTION = samldb_module_module_ops
-OBJ_FILES = \
-               samldb.o
-#
+INIT_FUNCTION = LDB_MODULE(samldb)
 # End MODULE ldb_samldb
 ################################################
 
+ldb_samldb_OBJ_FILES = dsdb/samdb/ldb_modules/samldb.o
+
 ################################################
 # Start MODULE ldb_samba3sam
 [MODULE::ldb_samba3sam]
 SUBSYSTEM = LIBLDB
 OUTPUT_TYPE = SHARED_LIBRARY
-INIT_FUNCTION = &ldb_samba3sam_module_module_ops
+INIT_FUNCTION = LDB_MODULE(samba3sam)
 PRIVATE_DEPENDENCIES = LIBTALLOC ldb_map SMBPASSWD NSS_WRAPPER LIBSECURITY \
                                           NDR_SECURITY
-OBJ_FILES = \
-               samba3sam.o
-#
 # End MODULE ldb_samldb
 ################################################
 
+ldb_samba3sam_OBJ_FILES = dsdb/samdb/ldb_modules/samba3sam.o
+
 ################################################
 # Start MODULE ldb_simple_ldap_map
 [MODULE::ldb_simple_ldap_map]
 SUBSYSTEM = LIBLDB
 OUTPUT_TYPE = SHARED_LIBRARY
-INIT_FUNCTION = &ldb_simple_ldap_map_module_module_ops
+INIT_FUNCTION = LDB_MODULE(simple_ldap_map)
 PRIVATE_DEPENDENCIES = LIBTALLOC ldb_map LIBNDR NDR_MISC
 ENABLE = YES
 ALIASES = entryuuid nsuniqueid
-OBJ_FILES = \
-               simple_ldap_map.o
-#
 # End MODULE ldb_entryuuid
 ################################################
 
+ldb_simple_ldap_map_OBJ_FILES = dsdb/samdb/ldb_modules/simple_ldap_map.o
+
 # ################################################
 # # Start MODULE ldb_proxy
 # [MODULE::ldb_proxy]
 # SUBSYSTEM = LIBLDB
-# INIT_FUNCTION = proxy_module_module_ops
+# INIT_FUNCTION = LDB_MODULE(proxy)
 # OBJ_FILES = \
 #              proxy.o
 # 
@@ -131,103 +128,98 @@ OBJ_FILES = \
 SUBSYSTEM = LIBLDB
 PRIVATE_DEPENDENCIES = LIBTALLOC SAMDB
 OUTPUT_TYPE = SHARED_LIBRARY
-INIT_FUNCTION = rootdse_module_module_ops
-OBJ_FILES = \
-               rootdse.o
-#
+INIT_FUNCTION = LDB_MODULE(rootdse)
 # End MODULE ldb_rootdse
 ################################################
 
+ldb_rootdse_OBJ_FILES = dsdb/samdb/ldb_modules/rootdse.o
+
 ################################################
 # Start MODULE ldb_password_hash
 [MODULE::ldb_password_hash]
 SUBSYSTEM = LIBLDB
 OUTPUT_TYPE = SHARED_LIBRARY
-INIT_FUNCTION = password_hash_module_module_ops
-OBJ_FILES = password_hash.o
+INIT_FUNCTION = LDB_MODULE(password_hash)
 PRIVATE_DEPENDENCIES = HEIMDAL_HDB_KEYS LIBTALLOC HEIMDAL_KRB5 LDAP_ENCODE \
                                           LIBCLI_AUTH NDR_DRSBLOBS KERBEROS SAMDB
-#
 # End MODULE ldb_password_hash
 ################################################
 
+ldb_password_hash_OBJ_FILES = dsdb/samdb/ldb_modules/password_hash.o
+
 ################################################
 # Start MODULE ldb_local_password
 [MODULE::ldb_local_password]
 PRIVATE_DEPENDENCIES = LIBTALLOC LIBNDR SAMDB
 OUTPUT_TYPE = SHARED_LIBRARY
 SUBSYSTEM = LIBLDB
-INIT_FUNCTION = local_password_module_module_ops
-OBJ_FILES = local_password.o
-#
+INIT_FUNCTION = LDB_MODULE(local_password)
 # End MODULE ldb_local_password
 ################################################
 
+ldb_local_password_OBJ_FILES = dsdb/samdb/ldb_modules/local_password.o
+
 ################################################
 # Start MODULE ldb_kludge_acl
 [MODULE::ldb_kludge_acl]
 PRIVATE_DEPENDENCIES = LIBTALLOC LIBSECURITY SAMDB
 OUTPUT_TYPE = SHARED_LIBRARY
 SUBSYSTEM = LIBLDB
-INIT_FUNCTION = &ldb_kludge_acl_module_ops
-OBJ_FILES = \
-               kludge_acl.o
-#
+INIT_FUNCTION = LDB_MODULE(kludge_acl)
+
 # End MODULE ldb_kludge_acl
 ################################################
 
+ldb_kludge_acl_OBJ_FILES = dsdb/samdb/ldb_modules/kludge_acl.o
+
 ################################################
 # Start MODULE ldb_extended_dn
 [MODULE::ldb_extended_dn]
 SUBSYSTEM = LIBLDB
 OUTPUT_TYPE = SHARED_LIBRARY
 PRIVATE_DEPENDENCIES = LIBTALLOC LIBNDR LIBSECURITY SAMDB
-INIT_FUNCTION = &ldb_extended_dn_module_ops
-OBJ_FILES = \
-               extended_dn.o
-#
+INIT_FUNCTION = LDB_MODULE(extended_dn)
 # End MODULE ldb_extended_dn
 ################################################
 
+ldb_extended_dn_OBJ_FILES = dsdb/samdb/ldb_modules/extended_dn.o
+
 ################################################
 # Start MODULE ldb_show_deleted
 [MODULE::ldb_show_deleted]
 SUBSYSTEM = LIBLDB
 OUTPUT_TYPE = SHARED_LIBRARY
 PRIVATE_DEPENDENCIES = LIBTALLOC
-INIT_FUNCTION = &ldb_show_deleted_module_ops
-OBJ_FILES = \
-               show_deleted.o
-#
+INIT_FUNCTION = LDB_MODULE(show_deleted)
 # End MODULE ldb_show_deleted
 ################################################
 
+ldb_show_deleted_OBJ_FILES = dsdb/samdb/ldb_modules/show_deleted.o
+
 ################################################
 # Start MODULE ldb_partition
 [MODULE::ldb_partition]
 SUBSYSTEM = LIBLDB
 OUTPUT_TYPE = SHARED_LIBRARY
 PRIVATE_DEPENDENCIES = LIBTALLOC SAMDB
-INIT_FUNCTION = &ldb_partition_module_ops
-OBJ_FILES = \
-               partition.o
-#
+INIT_FUNCTION = LDB_MODULE(partition)
 # End MODULE ldb_partition
 ################################################
 
+ldb_partition_OBJ_FILES = dsdb/samdb/ldb_modules/partition.o
+
 ################################################
 # Start MODULE ldb_schema
 [MODULE::ldb_schema]
 SUBSYSTEM = LIBLDB
 OUTPUT_TYPE = SHARED_LIBRARY
 PRIVATE_DEPENDENCIES = LIBTALLOC LIBLDB
-INIT_FUNCTION = &ldb_schema_module_ops
-OBJ_FILES = \
-               schema.o schema_syntax.o
-#
+INIT_FUNCTION = LDB_MODULE(schema)
 # End MODULE ldb_schema
 ################################################
 
+ldb_schema_OBJ_FILES = $(addprefix dsdb/samdb/ldb_modules/, schema.o schema_syntax.o)
+
 ################################################
 # Start MODULE ldb_update_kt
 [MODULE::ldb_update_keytab]
@@ -235,111 +227,110 @@ SUBSYSTEM = LIBLDB
 OUTPUT_TYPE = SHARED_LIBRARY
 PRIVATE_DEPENDENCIES = LIBTALLOC CREDENTIALS
 #Also depends on credentials, but that would loop
-INIT_FUNCTION = &ldb_update_kt_module_ops
-OBJ_FILES = \
-               update_keytab.o 
-#
+INIT_FUNCTION = LDB_MODULE(update_kt)
 # End MODULE ldb_update_kt
 ################################################
 
+ldb_update_keytab_OBJ_FILES = dsdb/samdb/ldb_modules/update_keytab.o 
+
 ################################################
 # Start MODULE ldb_objectclass
 [MODULE::ldb_objectclass]
-INIT_FUNCTION = &ldb_objectclass_module_ops
+INIT_FUNCTION = LDB_MODULE(objectclass)
 OUTPUT_TYPE = SHARED_LIBRARY
 CFLAGS = -Ilib/ldb/include
 PRIVATE_DEPENDENCIES = LIBTALLOC LIBSECURITY NDR_SECURITY SAMDB
 SUBSYSTEM = LIBLDB
-OBJ_FILES = \
-               objectclass.o
 # End MODULE ldb_objectclass
 ################################################
 
+ldb_objectclass_OBJ_FILES = dsdb/samdb/ldb_modules/objectclass.o
+
 ################################################
 # Start MODULE ldb_subtree_rename
 [MODULE::ldb_subtree_rename]
-INIT_FUNCTION = &ldb_subtree_rename_module_ops
+INIT_FUNCTION = LDB_MODULE(subtree_rename)
 CFLAGS = -Ilib/ldb/include
 PRIVATE_DEPENDENCIES = LIBTALLOC
 SUBSYSTEM = LIBLDB
-OBJ_FILES = \
-               subtree_rename.o
 # End MODULE ldb_subtree_rename
 ################################################
 
+ldb_subtree_rename_OBJ_FILES = dsdb/samdb/ldb_modules/subtree_rename.o
+
 ################################################
 # Start MODULE ldb_subtree_rename
 [MODULE::ldb_subtree_delete]
-INIT_FUNCTION = &ldb_subtree_delete_module_ops
+INIT_FUNCTION = LDB_MODULE(subtree_delete)
 CFLAGS = -Ilib/ldb/include
 PRIVATE_DEPENDENCIES = LIBTALLOC
 SUBSYSTEM = LIBLDB
-OBJ_FILES = \
-               subtree_delete.o
 # End MODULE ldb_subtree_rename
 ################################################
 
+ldb_subtree_delete_OBJ_FILES = dsdb/samdb/ldb_modules/subtree_delete.o
+
 ################################################
 # Start MODULE ldb_linked_attributes
 [MODULE::ldb_linked_attributes]
-INIT_FUNCTION = &ldb_linked_attributes_module_ops
+INIT_FUNCTION = LDB_MODULE(linked_attributes)
 CFLAGS = -Ilib/ldb/include
 OUTPUT_TYPE = SHARED_LIBRARY
 PRIVATE_DEPENDENCIES = LIBTALLOC SAMDB
 SUBSYSTEM = LIBLDB
-OBJ_FILES = \
-               linked_attributes.o
 # End MODULE ldb_linked_attributes
 ################################################
 
+ldb_linked_attributes_OBJ_FILES = dsdb/samdb/ldb_modules/linked_attributes.o
+
 ################################################
 # Start MODULE ldb_ranged_results
 [MODULE::ldb_ranged_results]
-INIT_FUNCTION = &ldb_ranged_results_module_ops
+INIT_FUNCTION = LDB_MODULE(ranged_results)
 CFLAGS = -Ilib/ldb/include
 PRIVATE_DEPENDENCIES = LIBTALLOC
 SUBSYSTEM = LIBLDB
-OBJ_FILES = \
-               ranged_results.o
 # End MODULE ldb_ranged_results
 ################################################
 
+ldb_ranged_results_OBJ_FILES = dsdb/samdb/ldb_modules/ranged_results.o
+
 ################################################
 # Start MODULE ldb_anr
 [MODULE::ldb_anr]
-INIT_FUNCTION = &ldb_anr_module_ops
+INIT_FUNCTION = LDB_MODULE(anr)
 CFLAGS = -Ilib/ldb/include
 OUTPUT_TYPE = SHARED_LIBRARY
 PRIVATE_DEPENDENCIES = LIBTALLOC LIBSAMBA-UTIL SAMDB
 SUBSYSTEM = LIBLDB
-OBJ_FILES = \
-               anr.o
 # End MODULE ldb_anr
 ################################################
 
+ldb_anr_OBJ_FILES = dsdb/samdb/ldb_modules/anr.o
+
 ################################################
 # Start MODULE ldb_normalise
 [MODULE::ldb_normalise]
-INIT_FUNCTION = &ldb_normalise_module_ops
+INIT_FUNCTION = LDB_MODULE(normalise)
 CFLAGS = -Ilib/ldb/include
 OUTPUT_TYPE = SHARED_LIBRARY
 PRIVATE_DEPENDENCIES = LIBTALLOC LIBSAMBA-UTIL SAMDB
 SUBSYSTEM = LIBLDB
-OBJ_FILES = \
-               normalise.o
 # End MODULE ldb_normalise
 ################################################
 
+ldb_normalise_OBJ_FILES = dsdb/samdb/ldb_modules/normalise.o
+
 ################################################
 # Start MODULE ldb_instancetype
 [MODULE::ldb_instancetype]
-INIT_FUNCTION = &ldb_instancetype_module_ops
+INIT_FUNCTION = LDB_MODULE(instancetype)
 CFLAGS = -Ilib/ldb/include
 OUTPUT_TYPE = SHARED_LIBRARY
 PRIVATE_DEPENDENCIES = LIBTALLOC
 SUBSYSTEM = LIBLDB
-OBJ_FILES = \
-               instancetype.o
 # End MODULE ldb_instancetype
 ################################################
 
+ldb_instancetype_OBJ_FILES = dsdb/samdb/ldb_modules/instancetype.o
+
index aa0565cd7a21e7a45ae501f8ae491201c16b6a11..487d924036ce6d2468bd3de5f542a492e62fd4b5 100644 (file)
@@ -1,5 +1,6 @@
 [SUBSYSTEM::DYNCONFIG]
-OBJ_FILES = dynconfig.o
+
+DYNCONFIG_OBJ_FILES = dynconfig.o
 
 # set these to where to find various files
 # These can be overridden by command line switches (see smbd(8))
@@ -21,5 +22,4 @@ PATH_FLAGS = -DCONFIGFILE=\"$(CONFIGFILE)\" \
 
 dynconfig.o: dynconfig.c Makefile
        @echo Compiling $<
-       @$(CC) $(CFLAGS) $(CPPFLAGS) $(PICFLAG) \
-               $(PATH_FLAGS) -c $< -o $@
+       @$(CC) $(CFLAGS) $(CPPFLAGS) $(PICFLAG) $(PATH_FLAGS) -c $< -o $@
index b80e00d4446152d5524b7210b289a410e1614d20..a2fbb5e3d0f3d62b5dbf6a7e3000c722ef6a54f6 100755 (executable)
@@ -87,11 +87,14 @@ my $depstr = join(' ', @deps);
 
 print '[SUBSYSTEM::HEIMDAL_'.uc($prefix).']'."\n";
 print "CFLAGS = -Iheimdal_build -Iheimdal/lib/roken -I$dirname\n";
-print "OBJ_FILES = ";
+print "PUBLIC_DEPENDENCIES = $depstr\n\n";
+
+print "HEIMDAL_".uc($prefix)."_OBJ_FILES = ";
 foreach $o_file (@o_files) {
     print "\\\n\t$o_file";
 }
-print "\nPUBLIC_DEPENDENCIES = $depstr\n\n";
+
+print "\n\n";
 
 print "clean:: \n";
 print "\t\@echo \"Deleting ASN1 output files generated from $file\"\n";
index 45bfd8e81f0a79f13b4355c16287f916d403167d..d3d87f7a70f4ed28971131f711fde208430635f7 100644 (file)
 # Start SUBSYSTEM HEIMDAL_KDC
 [SUBSYSTEM::HEIMDAL_KDC]
 CFLAGS = -Iheimdal_build -Iheimdal/kdc
-OBJ_FILES = \
-       ../heimdal/kdc/default_config.o \
-       ../heimdal/kdc/kerberos5.o \
-       ../heimdal/kdc/krb5tgs.o \
-       ../heimdal/kdc/pkinit.o \
-       ../heimdal/kdc/log.o \
-       ../heimdal/kdc/misc.o \
-       ../heimdal/kdc/524.o \
-       ../heimdal/kdc/kerberos4.o \
-       ../heimdal/kdc/kaserver.o \
-       ../heimdal/kdc/digest.o \
-       ../heimdal/kdc/process.o \
-       ../heimdal/kdc/windc.o \
-       ../heimdal/kdc/kx509.o
 PRIVATE_DEPENDENCIES = HEIMDAL_ROKEN HEIMDAL_KRB5 HEIMDAL_HDB HEIMDAL_HEIM_ASN1 HEIMDAL_DIGEST_ASN1 HEIMDAL_KX509_ASN1
 PUBLIC_DEPENDENCIES = HEIMDAL_NTLM HEIMDAL_HCRYPTO
 # End SUBSYSTEM HEIMDAL_KDC
 #######################
 
+HEIMDAL_KDC_OBJ_FILES = \
+       ./heimdal/kdc/default_config.o \
+       ./heimdal/kdc/kerberos5.o \
+       ./heimdal/kdc/krb5tgs.o \
+       ./heimdal/kdc/pkinit.o \
+       ./heimdal/kdc/log.o \
+       ./heimdal/kdc/misc.o \
+       ./heimdal/kdc/524.o \
+       ./heimdal/kdc/kerberos4.o \
+       ./heimdal/kdc/kaserver.o \
+       ./heimdal/kdc/digest.o \
+       ./heimdal/kdc/process.o \
+       ./heimdal/kdc/windc.o \
+       ./heimdal/kdc/kx509.o
+
 [SUBSYSTEM::HEIMDAL_NTLM]
 CFLAGS = -Iheimdal_build -Iheimdal/lib/ntlm
-OBJ_FILES = \
-       ../heimdal/lib/ntlm/ntlm.o
 PRIVATE_DEPENDENCIES = HEIMDAL_ROKEN HEIMDAL_HCRYPTO HEIMDAL_KRB5
 
+HEIMDAL_NTLM_OBJ_FILES = \
+       ./heimdal/lib/ntlm/ntlm.o
+
 [SUBSYSTEM::HEIMDAL_HDB_KEYS]
 CFLAGS = -Iheimdal_build -Iheimdal/lib/hdb
-OBJ_FILES = \
-       ../heimdal/lib/hdb/keys.o
 PRIVATE_DEPENDENCIES = HEIMDAL_ROKEN HEIMDAL_HCRYPTO HEIMDAL_KRB5 \
                                           HEIMDAL_HDB_ASN1
 
+HEIMDAL_HDB_KEYS_OBJ_FILES = ./heimdal/lib/hdb/keys.o
+
 #######################
 # Start SUBSYSTEM HEIMDAL_HDB
 [SUBSYSTEM::HEIMDAL_HDB]
 CFLAGS = -Iheimdal_build -Iheimdal/lib/hdb
-OBJ_FILES = \
-       ../heimdal/lib/hdb/db.o \
-       ../heimdal/lib/hdb/hdb.o \
-       ../heimdal/lib/hdb/ext.o \
-       ../heimdal/lib/hdb/keytab.o \
-       ../heimdal/lib/hdb/mkey.o \
-       ../heimdal/lib/hdb/ndbm.o \
-       ../heimdal/lib/hdb/hdb_err.o
 PRIVATE_DEPENDENCIES = HDB_LDB HEIMDAL_KRB5 HEIMDAL_HDB_KEYS HEIMDAL_ROKEN HEIMDAL_HCRYPTO HEIMDAL_COM_ERR HEIMDAL_HDB_ASN1
 # End SUBSYSTEM HEIMDAL_HDB
 #######################
 
+HEIMDAL_HDB_OBJ_FILES = \
+       ./heimdal/lib/hdb/db.o \
+       ./heimdal/lib/hdb/hdb.o \
+       ./heimdal/lib/hdb/ext.o \
+       ./heimdal/lib/hdb/keytab.o \
+       ./heimdal/lib/hdb/mkey.o \
+       ./heimdal/lib/hdb/ndbm.o \
+       ./heimdal/lib/hdb/hdb_err.o
+
 #######################
 # Start SUBSYSTEM HEIMDAL_GSSAPI
 [SUBSYSTEM::HEIMDAL_GSSAPI]
 CFLAGS = -Iheimdal_build -Iheimdal/lib/gssapi -Iheimdal/lib/gssapi/gssapi -Iheimdal/lib/gssapi/spnego -Iheimdal/lib/gssapi/krb5 -Iheimdal/lib/gssapi/mech
-OBJ_FILES = \
-       ../heimdal/lib/gssapi/mech/context.o \
-       ../heimdal/lib/gssapi/mech/gss_krb5.o \
-       ../heimdal/lib/gssapi/mech/gss_mech_switch.o \
-       ../heimdal/lib/gssapi/mech/gss_process_context_token.o \
-       ../heimdal/lib/gssapi/mech/gss_buffer_set.o \
-       ../heimdal/lib/gssapi/mech/gss_add_cred.o \
-       ../heimdal/lib/gssapi/mech/gss_add_oid_set_member.o \
-       ../heimdal/lib/gssapi/mech/gss_compare_name.o \
-       ../heimdal/lib/gssapi/mech/gss_release_oid_set.o \
-       ../heimdal/lib/gssapi/mech/gss_create_empty_oid_set.o \
-       ../heimdal/lib/gssapi/mech/gss_decapsulate_token.o \
-       ../heimdal/lib/gssapi/mech/gss_inquire_cred_by_oid.o \
-       ../heimdal/lib/gssapi/mech/gss_canonicalize_name.o \
-       ../heimdal/lib/gssapi/mech/gss_inquire_sec_context_by_oid.o \
-       ../heimdal/lib/gssapi/mech/gss_inquire_names_for_mech.o \
-       ../heimdal/lib/gssapi/mech/gss_inquire_mechs_for_name.o \
-       ../heimdal/lib/gssapi/mech/gss_wrap_size_limit.o \
-       ../heimdal/lib/gssapi/mech/gss_names.o \
-       ../heimdal/lib/gssapi/mech/gss_verify.o \
-       ../heimdal/lib/gssapi/mech/gss_display_name.o \
-       ../heimdal/lib/gssapi/mech/gss_duplicate_oid.o \
-       ../heimdal/lib/gssapi/mech/gss_display_status.o \
-       ../heimdal/lib/gssapi/mech/gss_release_buffer.o \
-       ../heimdal/lib/gssapi/mech/gss_release_oid.o \
-       ../heimdal/lib/gssapi/mech/gss_test_oid_set_member.o \
-       ../heimdal/lib/gssapi/mech/gss_release_cred.o \
-       ../heimdal/lib/gssapi/mech/gss_set_sec_context_option.o \
-       ../heimdal/lib/gssapi/mech/gss_export_name.o \
-       ../heimdal/lib/gssapi/mech/gss_seal.o \
-       ../heimdal/lib/gssapi/mech/gss_acquire_cred.o \
-       ../heimdal/lib/gssapi/mech/gss_unseal.o \
-       ../heimdal/lib/gssapi/mech/gss_verify_mic.o \
-       ../heimdal/lib/gssapi/mech/gss_accept_sec_context.o \
-       ../heimdal/lib/gssapi/mech/gss_inquire_cred_by_mech.o \
-       ../heimdal/lib/gssapi/mech/gss_indicate_mechs.o \
-       ../heimdal/lib/gssapi/mech/gss_delete_sec_context.o \
-       ../heimdal/lib/gssapi/mech/gss_sign.o \
-       ../heimdal/lib/gssapi/mech/gss_utils.o \
-       ../heimdal/lib/gssapi/mech/gss_init_sec_context.o \
-       ../heimdal/lib/gssapi/mech/gss_oid_equal.o \
-       ../heimdal/lib/gssapi/mech/gss_oid_to_str.o \
-       ../heimdal/lib/gssapi/mech/gss_context_time.o \
-       ../heimdal/lib/gssapi/mech/gss_encapsulate_token.o \
-       ../heimdal/lib/gssapi/mech/gss_get_mic.o \
-       ../heimdal/lib/gssapi/mech/gss_import_sec_context.o \
-       ../heimdal/lib/gssapi/mech/gss_inquire_cred.o \
-       ../heimdal/lib/gssapi/mech/gss_wrap.o \
-       ../heimdal/lib/gssapi/mech/gss_import_name.o \
-       ../heimdal/lib/gssapi/mech/gss_duplicate_name.o \
-       ../heimdal/lib/gssapi/mech/gss_unwrap.o \
-       ../heimdal/lib/gssapi/mech/gss_export_sec_context.o \
-       ../heimdal/lib/gssapi/mech/gss_inquire_context.o \
-       ../heimdal/lib/gssapi/mech/gss_release_name.o \
-       ../heimdal/lib/gssapi/mech/gss_set_cred_option.o \
-       ../heimdal/lib/gssapi/asn1_GSSAPIContextToken.o \
-       ../heimdal/lib/gssapi/spnego/init_sec_context.o \
-       ../heimdal/lib/gssapi/spnego/external.o \
-       ../heimdal/lib/gssapi/spnego/compat.o \
-       ../heimdal/lib/gssapi/spnego/context_stubs.o \
-       ../heimdal/lib/gssapi/spnego/cred_stubs.o \
-       ../heimdal/lib/gssapi/spnego/accept_sec_context.o \
-       ../heimdal/lib/gssapi/krb5/copy_ccache.o \
-       ../heimdal/lib/gssapi/krb5/delete_sec_context.o \
-       ../heimdal/lib/gssapi/krb5/init_sec_context.o \
-       ../heimdal/lib/gssapi/krb5/context_time.o \
-       ../heimdal/lib/gssapi/krb5/init.o \
-       ../heimdal/lib/gssapi/krb5/address_to_krb5addr.o \
-       ../heimdal/lib/gssapi/krb5/get_mic.o \
-       ../heimdal/lib/gssapi/krb5/inquire_context.o \
-       ../heimdal/lib/gssapi/krb5/add_cred.o \
-       ../heimdal/lib/gssapi/krb5/inquire_cred.o \
-       ../heimdal/lib/gssapi/krb5/inquire_cred_by_oid.o \
-       ../heimdal/lib/gssapi/krb5/inquire_cred_by_mech.o \
-       ../heimdal/lib/gssapi/krb5/inquire_mechs_for_name.o \
-       ../heimdal/lib/gssapi/krb5/inquire_names_for_mech.o \
-       ../heimdal/lib/gssapi/krb5/indicate_mechs.o \
-       ../heimdal/lib/gssapi/krb5/inquire_sec_context_by_oid.o \
-       ../heimdal/lib/gssapi/krb5/export_sec_context.o \
-       ../heimdal/lib/gssapi/krb5/import_sec_context.o \
-       ../heimdal/lib/gssapi/krb5/duplicate_name.o \
-       ../heimdal/lib/gssapi/krb5/import_name.o \
-       ../heimdal/lib/gssapi/krb5/compare_name.o \
-       ../heimdal/lib/gssapi/krb5/export_name.o \
-       ../heimdal/lib/gssapi/krb5/canonicalize_name.o \
-       ../heimdal/lib/gssapi/krb5/unwrap.o \
-       ../heimdal/lib/gssapi/krb5/wrap.o \
-       ../heimdal/lib/gssapi/krb5/release_name.o \
-       ../heimdal/lib/gssapi/krb5/cfx.o \
-       ../heimdal/lib/gssapi/krb5/8003.o \
-       ../heimdal/lib/gssapi/krb5/arcfour.o \
-       ../heimdal/lib/gssapi/krb5/encapsulate.o \
-       ../heimdal/lib/gssapi/krb5/display_name.o \
-       ../heimdal/lib/gssapi/krb5/sequence.o \
-       ../heimdal/lib/gssapi/krb5/display_status.o \
-       ../heimdal/lib/gssapi/krb5/release_buffer.o \
-       ../heimdal/lib/gssapi/krb5/external.o \
-       ../heimdal/lib/gssapi/krb5/compat.o \
-       ../heimdal/lib/gssapi/krb5/acquire_cred.o \
-       ../heimdal/lib/gssapi/krb5/release_cred.o \
-       ../heimdal/lib/gssapi/krb5/set_cred_option.o \
-       ../heimdal/lib/gssapi/krb5/decapsulate.o \
-       ../heimdal/lib/gssapi/krb5/verify_mic.o \
-       ../heimdal/lib/gssapi/krb5/accept_sec_context.o \
-       ../heimdal/lib/gssapi/krb5/set_sec_context_option.o \
-       ../heimdal/lib/gssapi/krb5/process_context_token.o \
-       ../heimdal/lib/gssapi/krb5/prf.o
 PRIVATE_DEPENDENCIES = HEIMDAL_HCRYPTO HEIMDAL_HEIM_ASN1 HEIMDAL_SPNEGO_ASN1
 PUBLIC_DEPENDENCIES = HEIMDAL_ROKEN HEIMDAL_KRB5
 # End SUBSYSTEM HEIMDAL_GSSAPI
 #######################
 
+HEIMDAL_GSSAPI_OBJ_FILES = \
+       ./heimdal/lib/gssapi/mech/context.o \
+       ./heimdal/lib/gssapi/mech/gss_krb5.o \
+       ./heimdal/lib/gssapi/mech/gss_mech_switch.o \
+       ./heimdal/lib/gssapi/mech/gss_process_context_token.o \
+       ./heimdal/lib/gssapi/mech/gss_buffer_set.o \
+       ./heimdal/lib/gssapi/mech/gss_add_cred.o \
+       ./heimdal/lib/gssapi/mech/gss_add_oid_set_member.o \
+       ./heimdal/lib/gssapi/mech/gss_compare_name.o \
+       ./heimdal/lib/gssapi/mech/gss_release_oid_set.o \
+       ./heimdal/lib/gssapi/mech/gss_create_empty_oid_set.o \
+       ./heimdal/lib/gssapi/mech/gss_decapsulate_token.o \
+       ./heimdal/lib/gssapi/mech/gss_inquire_cred_by_oid.o \
+       ./heimdal/lib/gssapi/mech/gss_canonicalize_name.o \
+       ./heimdal/lib/gssapi/mech/gss_inquire_sec_context_by_oid.o \
+       ./heimdal/lib/gssapi/mech/gss_inquire_names_for_mech.o \
+       ./heimdal/lib/gssapi/mech/gss_inquire_mechs_for_name.o \
+       ./heimdal/lib/gssapi/mech/gss_wrap_size_limit.o \
+       ./heimdal/lib/gssapi/mech/gss_names.o \
+       ./heimdal/lib/gssapi/mech/gss_verify.o \
+       ./heimdal/lib/gssapi/mech/gss_display_name.o \
+       ./heimdal/lib/gssapi/mech/gss_duplicate_oid.o \
+       ./heimdal/lib/gssapi/mech/gss_display_status.o \
+       ./heimdal/lib/gssapi/mech/gss_release_buffer.o \
+       ./heimdal/lib/gssapi/mech/gss_release_oid.o \
+       ./heimdal/lib/gssapi/mech/gss_test_oid_set_member.o \
+       ./heimdal/lib/gssapi/mech/gss_release_cred.o \
+       ./heimdal/lib/gssapi/mech/gss_set_sec_context_option.o \
+       ./heimdal/lib/gssapi/mech/gss_export_name.o \
+       ./heimdal/lib/gssapi/mech/gss_seal.o \
+       ./heimdal/lib/gssapi/mech/gss_acquire_cred.o \
+       ./heimdal/lib/gssapi/mech/gss_unseal.o \
+       ./heimdal/lib/gssapi/mech/gss_verify_mic.o \
+       ./heimdal/lib/gssapi/mech/gss_accept_sec_context.o \
+       ./heimdal/lib/gssapi/mech/gss_inquire_cred_by_mech.o \
+       ./heimdal/lib/gssapi/mech/gss_indicate_mechs.o \
+       ./heimdal/lib/gssapi/mech/gss_delete_sec_context.o \
+       ./heimdal/lib/gssapi/mech/gss_sign.o \
+       ./heimdal/lib/gssapi/mech/gss_utils.o \
+       ./heimdal/lib/gssapi/mech/gss_init_sec_context.o \
+       ./heimdal/lib/gssapi/mech/gss_oid_equal.o \
+       ./heimdal/lib/gssapi/mech/gss_oid_to_str.o \
+       ./heimdal/lib/gssapi/mech/gss_context_time.o \
+       ./heimdal/lib/gssapi/mech/gss_encapsulate_token.o \
+       ./heimdal/lib/gssapi/mech/gss_get_mic.o \
+       ./heimdal/lib/gssapi/mech/gss_import_sec_context.o \
+       ./heimdal/lib/gssapi/mech/gss_inquire_cred.o \
+       ./heimdal/lib/gssapi/mech/gss_wrap.o \
+       ./heimdal/lib/gssapi/mech/gss_import_name.o \
+       ./heimdal/lib/gssapi/mech/gss_duplicate_name.o \
+       ./heimdal/lib/gssapi/mech/gss_unwrap.o \
+       ./heimdal/lib/gssapi/mech/gss_export_sec_context.o \
+       ./heimdal/lib/gssapi/mech/gss_inquire_context.o \
+       ./heimdal/lib/gssapi/mech/gss_release_name.o \
+       ./heimdal/lib/gssapi/mech/gss_set_cred_option.o \
+       ./heimdal/lib/gssapi/asn1_GSSAPIContextToken.o \
+       ./heimdal/lib/gssapi/spnego/init_sec_context.o \
+       ./heimdal/lib/gssapi/spnego/external.o \
+       ./heimdal/lib/gssapi/spnego/compat.o \
+       ./heimdal/lib/gssapi/spnego/context_stubs.o \
+       ./heimdal/lib/gssapi/spnego/cred_stubs.o \
+       ./heimdal/lib/gssapi/spnego/accept_sec_context.o \
+       ./heimdal/lib/gssapi/krb5/copy_ccache.o \
+       ./heimdal/lib/gssapi/krb5/delete_sec_context.o \
+       ./heimdal/lib/gssapi/krb5/init_sec_context.o \
+       ./heimdal/lib/gssapi/krb5/context_time.o \
+       ./heimdal/lib/gssapi/krb5/init.o \
+       ./heimdal/lib/gssapi/krb5/address_to_krb5addr.o \
+       ./heimdal/lib/gssapi/krb5/get_mic.o \
+       ./heimdal/lib/gssapi/krb5/inquire_context.o \
+       ./heimdal/lib/gssapi/krb5/add_cred.o \
+       ./heimdal/lib/gssapi/krb5/inquire_cred.o \
+       ./heimdal/lib/gssapi/krb5/inquire_cred_by_oid.o \
+       ./heimdal/lib/gssapi/krb5/inquire_cred_by_mech.o \
+       ./heimdal/lib/gssapi/krb5/inquire_mechs_for_name.o \
+       ./heimdal/lib/gssapi/krb5/inquire_names_for_mech.o \
+       ./heimdal/lib/gssapi/krb5/indicate_mechs.o \
+       ./heimdal/lib/gssapi/krb5/inquire_sec_context_by_oid.o \
+       ./heimdal/lib/gssapi/krb5/export_sec_context.o \
+       ./heimdal/lib/gssapi/krb5/import_sec_context.o \
+       ./heimdal/lib/gssapi/krb5/duplicate_name.o \
+       ./heimdal/lib/gssapi/krb5/import_name.o \
+       ./heimdal/lib/gssapi/krb5/compare_name.o \
+       ./heimdal/lib/gssapi/krb5/export_name.o \
+       ./heimdal/lib/gssapi/krb5/canonicalize_name.o \
+       ./heimdal/lib/gssapi/krb5/unwrap.o \
+       ./heimdal/lib/gssapi/krb5/wrap.o \
+       ./heimdal/lib/gssapi/krb5/release_name.o \
+       ./heimdal/lib/gssapi/krb5/cfx.o \
+       ./heimdal/lib/gssapi/krb5/8003.o \
+       ./heimdal/lib/gssapi/krb5/arcfour.o \
+       ./heimdal/lib/gssapi/krb5/encapsulate.o \
+       ./heimdal/lib/gssapi/krb5/display_name.o \
+       ./heimdal/lib/gssapi/krb5/sequence.o \
+       ./heimdal/lib/gssapi/krb5/display_status.o \
+       ./heimdal/lib/gssapi/krb5/release_buffer.o \
+       ./heimdal/lib/gssapi/krb5/external.o \
+       ./heimdal/lib/gssapi/krb5/compat.o \
+       ./heimdal/lib/gssapi/krb5/acquire_cred.o \
+       ./heimdal/lib/gssapi/krb5/release_cred.o \
+       ./heimdal/lib/gssapi/krb5/set_cred_option.o \
+       ./heimdal/lib/gssapi/krb5/decapsulate.o \
+       ./heimdal/lib/gssapi/krb5/verify_mic.o \
+       ./heimdal/lib/gssapi/krb5/accept_sec_context.o \
+       ./heimdal/lib/gssapi/krb5/set_sec_context_option.o \
+       ./heimdal/lib/gssapi/krb5/process_context_token.o \
+       ./heimdal/lib/gssapi/krb5/prf.o
+
+
 #######################
 # Start SUBSYSTEM HEIMDAL_KRB5
 [SUBSYSTEM::HEIMDAL_KRB5]
 CFLAGS = -Iheimdal_build -Iheimdal/lib/krb5 
 PRIVATE_DEPENDENCIES = HEIMDAL_ROKEN HEIMDAL_PKINIT_ASN1
 PUBLIC_DEPENDENCIES = HEIMDAL_KRB5_ASN1 HEIMDAL_GLUE HEIMDAL_HX509 HEIMDAL_HCRYPTO
-OBJ_FILES = \
-       ../heimdal/lib/krb5/acache.o \
-       ../heimdal/lib/krb5/add_et_list.o \
-       ../heimdal/lib/krb5/addr_families.o \
-       ../heimdal/lib/krb5/appdefault.o \
-       ../heimdal/lib/krb5/asn1_glue.o \
-       ../heimdal/lib/krb5/auth_context.o \
-       ../heimdal/lib/krb5/build_ap_req.o \
-       ../heimdal/lib/krb5/build_auth.o \
-       ../heimdal/lib/krb5/cache.o \
-       ../heimdal/lib/krb5/changepw.o \
-       ../heimdal/lib/krb5/codec.o \
-       ../heimdal/lib/krb5/config_file.o \
-       ../heimdal/lib/krb5/config_file_netinfo.o \
-       ../heimdal/lib/krb5/constants.o \
-       ../heimdal/lib/krb5/context.o \
-       ../heimdal/lib/krb5/convert_creds.o \
-       ../heimdal/lib/krb5/copy_host_realm.o \
-       ../heimdal/lib/krb5/crc.o \
-       ../heimdal/lib/krb5/creds.o \
-       ../heimdal/lib/krb5/crypto.o \
-       ../heimdal/lib/krb5/data.o \
-       ../heimdal/lib/krb5/eai_to_heim_errno.o \
-       ../heimdal/lib/krb5/error_string.o \
-       ../heimdal/lib/krb5/expand_hostname.o \
-       ../heimdal/lib/krb5/fcache.o \
-       ../heimdal/lib/krb5/free.o \
-       ../heimdal/lib/krb5/free_host_realm.o \
-       ../heimdal/lib/krb5/generate_seq_number.o \
-       ../heimdal/lib/krb5/generate_subkey.o \
-       ../heimdal/lib/krb5/get_cred.o \
-       ../heimdal/lib/krb5/get_default_principal.o \
-       ../heimdal/lib/krb5/get_default_realm.o \
-       ../heimdal/lib/krb5/get_for_creds.o \
-       ../heimdal/lib/krb5/get_host_realm.o \
-       ../heimdal/lib/krb5/get_in_tkt.o \
-       ../heimdal/lib/krb5/get_in_tkt_with_keytab.o \
-       ../heimdal/lib/krb5/get_port.o \
-       ../heimdal/lib/krb5/init_creds.o \
-       ../heimdal/lib/krb5/init_creds_pw.o \
-       ../heimdal/lib/krb5/kcm.o \
-       ../heimdal/lib/krb5/keyblock.o \
-       ../heimdal/lib/krb5/keytab.o \
-       ../heimdal/lib/krb5/keytab_any.o \
-       ../heimdal/lib/krb5/keytab_file.o \
-       ../heimdal/lib/krb5/keytab_memory.o \
-       ../heimdal/lib/krb5/keytab_keyfile.o \
-       ../heimdal/lib/krb5/keytab_krb4.o \
-       ../heimdal/lib/krb5/krbhst.o \
-       ../heimdal/lib/krb5/log.o \
-       ../heimdal/lib/krb5/mcache.o \
-       ../heimdal/lib/krb5/misc.o \
-       ../heimdal/lib/krb5/mk_error.o \
-       ../heimdal/lib/krb5/mk_priv.o \
-       ../heimdal/lib/krb5/mk_rep.o \
-       ../heimdal/lib/krb5/mk_req.o \
-       ../heimdal/lib/krb5/mk_req_ext.o \
-       ../heimdal/lib/krb5/mit_glue.o \
-       ../heimdal/lib/krb5/n-fold.o \
-       ../heimdal/lib/krb5/padata.o \
-       ../heimdal/lib/krb5/pkinit.o \
-       ../heimdal/lib/krb5/plugin.o \
-       ../heimdal/lib/krb5/principal.o \
-       ../heimdal/lib/krb5/pac.o \
-       ../heimdal/lib/krb5/prompter_posix.o \
-       ../heimdal/lib/krb5/rd_cred.o \
-       ../heimdal/lib/krb5/rd_error.o \
-       ../heimdal/lib/krb5/rd_priv.o \
-       ../heimdal/lib/krb5/rd_rep.o \
-       ../heimdal/lib/krb5/rd_req.o \
-       ../heimdal/lib/krb5/replay.o \
-       ../heimdal/lib/krb5/send_to_kdc.o \
-       ../heimdal/lib/krb5/set_default_realm.o \
-       ../heimdal/lib/krb5/store.o \
-       ../heimdal/lib/krb5/store_emem.o \
-       ../heimdal/lib/krb5/store_fd.o \
-       ../heimdal/lib/krb5/store_mem.o \
-       ../heimdal/lib/krb5/ticket.o \
-       ../heimdal/lib/krb5/time.o \
-       ../heimdal/lib/krb5/transited.o \
-       ../heimdal/lib/krb5/v4_glue.o \
-       ../heimdal/lib/krb5/version.o \
-       ../heimdal/lib/krb5/warn.o \
-       ../heimdal/lib/krb5/krb5_err.o \
-       ../heimdal/lib/krb5/heim_err.o \
-       ../heimdal/lib/krb5/k524_err.o \
-       ../heimdal/lib/krb5/krb_err.o
 # End SUBSYSTEM HEIMDAL_KRB5
 #######################
 
+HEIMDAL_KRB5_OBJ_FILES = \
+       ./heimdal/lib/krb5/acache.o \
+       ./heimdal/lib/krb5/add_et_list.o \
+       ./heimdal/lib/krb5/addr_families.o \
+       ./heimdal/lib/krb5/appdefault.o \
+       ./heimdal/lib/krb5/asn1_glue.o \
+       ./heimdal/lib/krb5/auth_context.o \
+       ./heimdal/lib/krb5/build_ap_req.o \
+       ./heimdal/lib/krb5/build_auth.o \
+       ./heimdal/lib/krb5/cache.o \
+       ./heimdal/lib/krb5/changepw.o \
+       ./heimdal/lib/krb5/codec.o \
+       ./heimdal/lib/krb5/config_file.o \
+       ./heimdal/lib/krb5/config_file_netinfo.o \
+       ./heimdal/lib/krb5/constants.o \
+       ./heimdal/lib/krb5/context.o \
+       ./heimdal/lib/krb5/convert_creds.o \
+       ./heimdal/lib/krb5/copy_host_realm.o \
+       ./heimdal/lib/krb5/crc.o \
+       ./heimdal/lib/krb5/creds.o \
+       ./heimdal/lib/krb5/crypto.o \
+       ./heimdal/lib/krb5/data.o \
+       ./heimdal/lib/krb5/eai_to_heim_errno.o \
+       ./heimdal/lib/krb5/error_string.o \
+       ./heimdal/lib/krb5/expand_hostname.o \
+       ./heimdal/lib/krb5/fcache.o \
+       ./heimdal/lib/krb5/free.o \
+       ./heimdal/lib/krb5/free_host_realm.o \
+       ./heimdal/lib/krb5/generate_seq_number.o \
+       ./heimdal/lib/krb5/generate_subkey.o \
+       ./heimdal/lib/krb5/get_cred.o \
+       ./heimdal/lib/krb5/get_default_principal.o \
+       ./heimdal/lib/krb5/get_default_realm.o \
+       ./heimdal/lib/krb5/get_for_creds.o \
+       ./heimdal/lib/krb5/get_host_realm.o \
+       ./heimdal/lib/krb5/get_in_tkt.o \
+       ./heimdal/lib/krb5/get_in_tkt_with_keytab.o \
+       ./heimdal/lib/krb5/get_port.o \
+       ./heimdal/lib/krb5/init_creds.o \
+       ./heimdal/lib/krb5/init_creds_pw.o \
+       ./heimdal/lib/krb5/kcm.o \
+       ./heimdal/lib/krb5/keyblock.o \
+       ./heimdal/lib/krb5/keytab.o \
+       ./heimdal/lib/krb5/keytab_any.o \
+       ./heimdal/lib/krb5/keytab_file.o \
+       ./heimdal/lib/krb5/keytab_memory.o \
+       ./heimdal/lib/krb5/keytab_keyfile.o \
+       ./heimdal/lib/krb5/keytab_krb4.o \
+       ./heimdal/lib/krb5/krbhst.o \
+       ./heimdal/lib/krb5/log.o \
+       ./heimdal/lib/krb5/mcache.o \
+       ./heimdal/lib/krb5/misc.o \
+       ./heimdal/lib/krb5/mk_error.o \
+       ./heimdal/lib/krb5/mk_priv.o \
+       ./heimdal/lib/krb5/mk_rep.o \
+       ./heimdal/lib/krb5/mk_req.o \
+       ./heimdal/lib/krb5/mk_req_ext.o \
+       ./heimdal/lib/krb5/mit_glue.o \
+       ./heimdal/lib/krb5/n-fold.o \
+       ./heimdal/lib/krb5/padata.o \
+       ./heimdal/lib/krb5/pkinit.o \
+       ./heimdal/lib/krb5/plugin.o \
+       ./heimdal/lib/krb5/principal.o \
+       ./heimdal/lib/krb5/pac.o \
+       ./heimdal/lib/krb5/prompter_posix.o \
+       ./heimdal/lib/krb5/rd_cred.o \
+       ./heimdal/lib/krb5/rd_error.o \
+       ./heimdal/lib/krb5/rd_priv.o \
+       ./heimdal/lib/krb5/rd_rep.o \
+       ./heimdal/lib/krb5/rd_req.o \
+       ./heimdal/lib/krb5/replay.o \
+       ./heimdal/lib/krb5/send_to_kdc.o \
+       ./heimdal/lib/krb5/set_default_realm.o \
+       ./heimdal/lib/krb5/store.o \
+       ./heimdal/lib/krb5/store_emem.o \
+       ./heimdal/lib/krb5/store_fd.o \
+       ./heimdal/lib/krb5/store_mem.o \
+       ./heimdal/lib/krb5/ticket.o \
+       ./heimdal/lib/krb5/time.o \
+       ./heimdal/lib/krb5/transited.o \
+       ./heimdal/lib/krb5/v4_glue.o \
+       ./heimdal/lib/krb5/version.o \
+       ./heimdal/lib/krb5/warn.o \
+       ./heimdal/lib/krb5/krb5_err.o \
+       ./heimdal/lib/krb5/heim_err.o \
+       ./heimdal/lib/krb5/k524_err.o \
+       ./heimdal/lib/krb5/krb_err.o
+
 #######################
 # Start SUBSYSTEM HEIMDAL_HEIM_ASN1
 [SUBSYSTEM::HEIMDAL_HEIM_ASN1]
 CFLAGS = -Iheimdal_build -Iheimdal/lib/asn1
-OBJ_FILES = \
-       ../heimdal/lib/asn1/der_get.o \
-       ../heimdal/lib/asn1/der_put.o \
-       ../heimdal/lib/asn1/der_free.o \
-       ../heimdal/lib/asn1/der_format.o \
-       ../heimdal/lib/asn1/der_length.o \
-       ../heimdal/lib/asn1/der_copy.o \
-       ../heimdal/lib/asn1/der_cmp.o \
-       ../heimdal/lib/asn1/extra.o \
-       ../heimdal/lib/asn1/timegm.o \
-       ../heimdal/lib/asn1/asn1_err.o
 PRIVATE_DEPENDENCIES = HEIMDAL_ROKEN HEIMDAL_COM_ERR
 # End SUBSYSTEM HEIMDAL_KRB5
 #######################
 
+HEIMDAL_HEIM_ASN1_OBJ_FILES = \
+       ./heimdal/lib/asn1/der_get.o \
+       ./heimdal/lib/asn1/der_put.o \
+       ./heimdal/lib/asn1/der_free.o \
+       ./heimdal/lib/asn1/der_format.o \
+       ./heimdal/lib/asn1/der_length.o \
+       ./heimdal/lib/asn1/der_copy.o \
+       ./heimdal/lib/asn1/der_cmp.o \
+       ./heimdal/lib/asn1/extra.o \
+       ./heimdal/lib/asn1/timegm.o \
+       ./heimdal/lib/asn1/asn1_err.o
+
 #######################
 # Start SUBSYSTEM HEIMDAL_HCRYPTO_IMATH
 [SUBSYSTEM::HEIMDAL_HCRYPTO_IMATH]
 CFLAGS = -Iheimdal_build -Iheimdal/lib/hcrypto/imath 
 PRIVATE_DEPENDENCIES = HEIMDAL_ROKEN 
-OBJ_FILES = \
-       ../heimdal/lib/hcrypto/imath/imath.o \
-       ../heimdal/lib/hcrypto/imath/iprime.o
 # End SUBSYSTEM HEIMDAL_HCRYPTO_IMATH
 #######################
 
+HEIMDAL_HCRYPTO_IMATH_OBJ_FILES = \
+       ./heimdal/lib/hcrypto/imath/imath.o \
+       ./heimdal/lib/hcrypto/imath/iprime.o
+
 [SUBSYSTEM::HEIMDAL_HCRYPTO]
 CFLAGS = -Iheimdal_build -Iheimdal/lib/hcrypto -Iheimdal/lib
 PRIVATE_DEPENDENCIES = HEIMDAL_ROKEN HEIMDAL_HEIM_ASN1 HEIMDAL_HCRYPTO_IMATH HEIMDAL_RFC2459_ASN1
-OBJ_FILES = \
-       ../heimdal/lib/hcrypto/aes.o \
-       ../heimdal/lib/hcrypto/bn.o \
-       ../heimdal/lib/hcrypto/dh.o \
-       ../heimdal/lib/hcrypto/dh-imath.o \
-       ../heimdal/lib/hcrypto/des.o \
-       ../heimdal/lib/hcrypto/dsa.o \
-       ../heimdal/lib/hcrypto/engine.o \
-       ../heimdal/lib/hcrypto/md2.o \
-       ../heimdal/lib/hcrypto/md4.o \
-       ../heimdal/lib/hcrypto/md5.o \
-       ../heimdal/lib/hcrypto/rsa.o \
-       ../heimdal/lib/hcrypto/rsa-imath.o \
-       ../heimdal/lib/hcrypto/rc2.o \
-       ../heimdal/lib/hcrypto/rc4.o \
-       ../heimdal/lib/hcrypto/rijndael-alg-fst.o \
-       ../heimdal/lib/hcrypto/rnd_keys.o \
-       ../heimdal/lib/hcrypto/sha.o \
-       ../heimdal/lib/hcrypto/sha256.o \
-       ../heimdal/lib/hcrypto/ui.o \
-       ../heimdal/lib/hcrypto/evp.o \
-       ../heimdal/lib/hcrypto/pkcs5.o \
-       ../heimdal/lib/hcrypto/pkcs12.o \
-       ../heimdal/lib/hcrypto/rand.o \
-       ../heimdal/lib/hcrypto/rand-egd.o \
-       ../heimdal/lib/hcrypto/rand-unix.o \
-       ../heimdal/lib/hcrypto/rand-fortuna.o \
-       ../heimdal/lib/hcrypto/rand-timer.o \
-       ../heimdal/lib/hcrypto/hmac.o
 # End SUBSYSTEM HEIMDAL_HCRYPTO
 #######################
 
+HEIMDAL_HCRYPTO_OBJ_FILES = \
+       ./heimdal/lib/hcrypto/aes.o \
+       ./heimdal/lib/hcrypto/bn.o \
+       ./heimdal/lib/hcrypto/dh.o \
+       ./heimdal/lib/hcrypto/dh-imath.o \
+       ./heimdal/lib/hcrypto/des.o \
+       ./heimdal/lib/hcrypto/dsa.o \
+       ./heimdal/lib/hcrypto/engine.o \
+       ./heimdal/lib/hcrypto/md2.o \
+       ./heimdal/lib/hcrypto/md4.o \
+       ./heimdal/lib/hcrypto/md5.o \
+       ./heimdal/lib/hcrypto/rsa.o \
+       ./heimdal/lib/hcrypto/rsa-imath.o \
+       ./heimdal/lib/hcrypto/rc2.o \
+       ./heimdal/lib/hcrypto/rc4.o \
+       ./heimdal/lib/hcrypto/rijndael-alg-fst.o \
+       ./heimdal/lib/hcrypto/rnd_keys.o \
+       ./heimdal/lib/hcrypto/sha.o \
+       ./heimdal/lib/hcrypto/sha256.o \
+       ./heimdal/lib/hcrypto/ui.o \
+       ./heimdal/lib/hcrypto/evp.o \
+       ./heimdal/lib/hcrypto/pkcs5.o \
+       ./heimdal/lib/hcrypto/pkcs12.o \
+       ./heimdal/lib/hcrypto/rand.o \
+       ./heimdal/lib/hcrypto/rand-egd.o \
+       ./heimdal/lib/hcrypto/rand-unix.o \
+       ./heimdal/lib/hcrypto/rand-fortuna.o \
+       ./heimdal/lib/hcrypto/rand-timer.o \
+       ./heimdal/lib/hcrypto/hmac.o
+
+
 #######################
 # Start SUBSYSTEM HEIMDAL_HX509
 [SUBSYSTEM::HEIMDAL_HX509]
@@ -338,79 +348,53 @@ PRIVATE_DEPENDENCIES = \
        HEIMDAL_OCSP_ASN1 HEIMDAL_PKCS8_ASN1 \
        HEIMDAL_PKCS9_ASN1 HEIMDAL_PKCS12_ASN1 \
        HEIMDAL_PKINIT_ASN1 HEIMDAL_PKCS10_ASN1
-OBJ_FILES = \
-       ../heimdal/lib/hx509/ca.o \
-       ../heimdal/lib/hx509/cert.o \
-       ../heimdal/lib/hx509/cms.o \
-       ../heimdal/lib/hx509/collector.o \
-       ../heimdal/lib/hx509/crypto.o \
-       ../heimdal/lib/hx509/error.o \
-       ../heimdal/lib/hx509/env.o \
-       ../heimdal/lib/hx509/file.o \
-       ../heimdal/lib/hx509/keyset.o \
-       ../heimdal/lib/hx509/ks_dir.o \
-       ../heimdal/lib/hx509/ks_file.o \
-       ../heimdal/lib/hx509/ks_keychain.o \
-       ../heimdal/lib/hx509/ks_mem.o \
-       ../heimdal/lib/hx509/ks_null.o \
-       ../heimdal/lib/hx509/ks_p11.o \
-       ../heimdal/lib/hx509/ks_p12.o \
-       ../heimdal/lib/hx509/lock.o \
-       ../heimdal/lib/hx509/name.o \
-       ../heimdal/lib/hx509/peer.o \
-       ../heimdal/lib/hx509/print.o \
-       ../heimdal/lib/hx509/req.o \
-       ../heimdal/lib/hx509/revoke.o \
-       ../heimdal/lib/hx509/hx509_err.o
 # End SUBSYSTEM HEIMDAL_HX509
 #######################
 
+HEIMDAL_HX509_OBJ_FILES = \
+       ./heimdal/lib/hx509/ca.o \
+       ./heimdal/lib/hx509/cert.o \
+       ./heimdal/lib/hx509/cms.o \
+       ./heimdal/lib/hx509/collector.o \
+       ./heimdal/lib/hx509/crypto.o \
+       ./heimdal/lib/hx509/error.o \
+       ./heimdal/lib/hx509/env.o \
+       ./heimdal/lib/hx509/file.o \
+       ./heimdal/lib/hx509/keyset.o \
+       ./heimdal/lib/hx509/ks_dir.o \
+       ./heimdal/lib/hx509/ks_file.o \
+       ./heimdal/lib/hx509/ks_keychain.o \
+       ./heimdal/lib/hx509/ks_mem.o \
+       ./heimdal/lib/hx509/ks_null.o \
+       ./heimdal/lib/hx509/ks_p11.o \
+       ./heimdal/lib/hx509/ks_p12.o \
+       ./heimdal/lib/hx509/lock.o \
+       ./heimdal/lib/hx509/name.o \
+       ./heimdal/lib/hx509/peer.o \
+       ./heimdal/lib/hx509/print.o \
+       ./heimdal/lib/hx509/req.o \
+       ./heimdal/lib/hx509/revoke.o \
+       ./heimdal/lib/hx509/hx509_err.o
+
 [SUBSYSTEM::HEIMDAL_ROKEN_GETPROGNAME]
 CFLAGS = -Iheimdal_build -Iheimdal/lib/roken  -Ilib/socket_wrapper
-OBJ_FILES = ../heimdal/lib/roken/getprogname.o
+
+HEIMDAL_ROKEN_GETPROGNAME_OBJ_FILES = ./heimdal/lib/roken/getprogname.o
 
 [SUBSYSTEM::HEIMDAL_ROKEN_CLOSEFROM] 
 CFLAGS = -Iheimdal_build -Iheimdal/lib/roken  -Ilib/socket_wrapper
-OBJ_FILES = ../heimdal/lib/roken/closefrom.o
+
+HEIMDAL_ROKEN_CLOSEFROM_OBJ_FILES = ./heimdal/lib/roken/closefrom.o
 
 [SUBSYSTEM::HEIMDAL_ROKEN_GETPROGNAME_H] 
 CFLAGS = -Iheimdal_build -Iheimdal/lib/roken  -Ilib/socket_wrapper
-OBJ_FILES = ../heimdal/lib/roken/getprogname.ho
+
+HEIMDAL_ROKEN_GETPROGNAME_H_OBJ_FILES = ./heimdal/lib/roken/getprogname.ho
 
 #######################
 # Start SUBSYSTEM HEIMDAL_ROKEN
 [SUBSYSTEM::HEIMDAL_ROKEN]
 CFLAGS =  -Iheimdal_build -Iheimdal/lib/roken -Ilib/socket_wrapper
-OBJ_FILES = \
-       ../heimdal/lib/roken/base64.o \
-       ../heimdal/lib/roken/hex.o \
-       ../heimdal/lib/roken/bswap.o \
-       ../heimdal/lib/roken/dumpdata.o \
-       ../heimdal/lib/roken/emalloc.o \
-       ../heimdal/lib/roken/ecalloc.o \
-       ../heimdal/lib/roken/get_window_size.o \
-       ../heimdal/lib/roken/h_errno.o \
-       ../heimdal/lib/roken/issuid.o \
-       ../heimdal/lib/roken/net_read.o \
-       ../heimdal/lib/roken/net_write.o \
-       ../heimdal/lib/roken/socket.o \
-       ../heimdal/lib/roken/parse_time.o \
-       ../heimdal/lib/roken/parse_units.o \
-       ../heimdal/lib/roken/resolve.o \
-       ../heimdal/lib/roken/roken_gethostby.o \
-       ../heimdal/lib/roken/signal.o \
-       ../heimdal/lib/roken/vis.o \
-       ../heimdal/lib/roken/strlwr.o \
-       ../heimdal/lib/roken/strsep_copy.o \
-       ../heimdal/lib/roken/strsep.o \
-       ../heimdal/lib/roken/strupr.o \
-       ../heimdal/lib/roken/strpool.o \
-       ../heimdal/lib/roken/estrdup.o \
-       ../heimdal/lib/roken/erealloc.o \
-       ../heimdal/lib/roken/simple_exec.o \
-       ../heimdal/lib/roken/strcollect.o \
-       ../heimdal/lib/roken/rtbl.o \
-       replace.o
 PUBLIC_DEPENDENCIES = \
                        HEIMDAL_ROKEN_GETPROGNAME \
                        HEIMDAL_ROKEN_CLOSEFROM \
@@ -419,64 +403,99 @@ PUBLIC_DEPENDENCIES = \
 # End SUBSYSTEM HEIMDAL_ROKEN
 #######################
 
+HEIMDAL_ROKEN_OBJ_FILES = \
+       ./heimdal/lib/roken/base64.o \
+       ./heimdal/lib/roken/hex.o \
+       ./heimdal/lib/roken/bswap.o \
+       ./heimdal/lib/roken/dumpdata.o \
+       ./heimdal/lib/roken/emalloc.o \
+       ./heimdal/lib/roken/ecalloc.o \
+       ./heimdal/lib/roken/get_window_size.o \
+       ./heimdal/lib/roken/h_errno.o \
+       ./heimdal/lib/roken/issuid.o \
+       ./heimdal/lib/roken/net_read.o \
+       ./heimdal/lib/roken/net_write.o \
+       ./heimdal/lib/roken/socket.o \
+       ./heimdal/lib/roken/parse_time.o \
+       ./heimdal/lib/roken/parse_units.o \
+       ./heimdal/lib/roken/resolve.o \
+       ./heimdal/lib/roken/roken_gethostby.o \
+       ./heimdal/lib/roken/signal.o \
+       ./heimdal/lib/roken/vis.o \
+       ./heimdal/lib/roken/strlwr.o \
+       ./heimdal/lib/roken/strsep_copy.o \
+       ./heimdal/lib/roken/strsep.o \
+       ./heimdal/lib/roken/strupr.o \
+       ./heimdal/lib/roken/strpool.o \
+       ./heimdal/lib/roken/estrdup.o \
+       ./heimdal/lib/roken/erealloc.o \
+       ./heimdal/lib/roken/simple_exec.o \
+       ./heimdal/lib/roken/strcollect.o \
+       ./heimdal/lib/roken/rtbl.o \
+       ./heimdal_build/replace.o
+
 #######################
 # Start SUBSYSTEM HEIMDAL_GLUE
 [SUBSYSTEM::HEIMDAL_GLUE]
 CFLAGS = -Iheimdal_build -Iheimdal/lib/krb5 -Iheimdal/lib/asn1 -Iheimdal/lib/com_err 
-OBJ_FILES = glue.o
 PUBLIC_DEPENDENCIES = LIBNETIF LIBSAMBA-CONFIG
 # End SUBSYSTEM HEIMDAL_GLUE
 #######################
 
+HEIMDAL_GLUE_OBJ_FILES = heimdal_build/glue.o
+
 #######################
 # Start SUBSYSTEM HEIMDAL_COM_ERR
 [SUBSYSTEM::HEIMDAL_COM_ERR]
 CFLAGS = -Iheimdal_build -Iheimdal/lib/com_err
-OBJ_FILES = \
-       ../heimdal/lib/com_err/com_err.o \
-       ../heimdal/lib/com_err/error.o
 PRIVATE_DEPENDENCIES = HEIMDAL_ROKEN
 # End SUBSYSTEM HEIMDAL_COM_ERR
 #######################
 
+HEIMDAL_COM_ERR_OBJ_FILES = \
+       ./heimdal/lib/com_err/com_err.o \
+       ./heimdal/lib/com_err/error.o
+
 #######################
 # Start SUBSYSTEM HEIMDAL_ASN1_COMPILE_LEX
 [SUBSYSTEM::HEIMDAL_ASN1_COMPILE_LEX]
 CFLAGS = -Iheimdal_build -Iheimdal/lib/asn1 -Iheimdal/lib/roken  -Ilib/socket_wrapper
-OBJ_FILES = ../heimdal/lib/asn1/lex.ho 
 # End SUBSYSTEM HEIMDAL_ASN1_COMPILE_LEX
 #######################
 
+HEIMDAL_ASN1_COMPILE_LEX_OBJ_FILES = ./heimdal/lib/asn1/lex.ho 
+
 #######################
 # Start BINARY asn1_compile
 [BINARY::asn1_compile]
 CFLAGS = -Iheimdal_build -Iheimdal/lib/roken
 USE_HOSTCC = YES
-OBJ_FILES = \
-       ../heimdal/lib/asn1/main.ho \
-       ../heimdal/lib/asn1/gen.ho \
-       ../heimdal/lib/asn1/gen_copy.ho \
-       ../heimdal/lib/asn1/gen_decode.ho \
-       ../heimdal/lib/asn1/gen_encode.ho \
-       ../heimdal/lib/asn1/gen_free.ho \
-       ../heimdal/lib/asn1/gen_glue.ho \
-       ../heimdal/lib/asn1/gen_length.ho \
-       ../heimdal/lib/asn1/gen_seq.ho \
-       ../heimdal/lib/asn1/hash.ho \
-       ../heimdal/lib/asn1/parse.ho \
-       ../heimdal/lib/roken/emalloc.ho \
-       ../heimdal/lib/roken/getarg.ho \
-       ../heimdal/lib/roken/setprogname.ho \
-       ../heimdal/lib/roken/strupr.ho \
-       ../heimdal/lib/roken/get_window_size.ho \
-       ../heimdal/lib/roken/estrdup.ho \
-       ../heimdal/lib/roken/ecalloc.ho \
-       ../heimdal/lib/asn1/symbol.ho \
-       ../heimdal/lib/vers/print_version.ho \
-       ../lib/socket_wrapper/socket_wrapper.ho \
-       replace.ho
 PRIVATE_DEPENDENCIES = HEIMDAL_ASN1_COMPILE_LEX HEIMDAL_ROKEN_GETPROGNAME_H EXT_SOCKET EXT_NSL
 
+asn1_compile_OBJ_FILES = \
+       ./heimdal/lib/asn1/main.ho \
+       ./heimdal/lib/asn1/gen.ho \
+       ./heimdal/lib/asn1/gen_copy.ho \
+       ./heimdal/lib/asn1/gen_decode.ho \
+       ./heimdal/lib/asn1/gen_encode.ho \
+       ./heimdal/lib/asn1/gen_free.ho \
+       ./heimdal/lib/asn1/gen_glue.ho \
+       ./heimdal/lib/asn1/gen_length.ho \
+       ./heimdal/lib/asn1/gen_seq.ho \
+       ./heimdal/lib/asn1/hash.ho \
+       ./heimdal/lib/asn1/parse.ho \
+       ./heimdal/lib/roken/emalloc.ho \
+       ./heimdal/lib/roken/getarg.ho \
+       ./heimdal/lib/roken/setprogname.ho \
+       ./heimdal/lib/roken/strupr.ho \
+       ./heimdal/lib/roken/get_window_size.ho \
+       ./heimdal/lib/roken/estrdup.ho \
+       ./heimdal/lib/roken/ecalloc.ho \
+       ./heimdal/lib/asn1/symbol.ho \
+       ./heimdal/lib/vers/print_version.ho \
+       ./lib/socket_wrapper/socket_wrapper.ho \
+       ./heimdal_build/replace.ho
+
 # End BINARY asn1_compile
 #######################
 
@@ -484,28 +503,31 @@ PRIVATE_DEPENDENCIES = HEIMDAL_ASN1_COMPILE_LEX HEIMDAL_ROKEN_GETPROGNAME_H EXT_
 # Start SUBSYSTEM HEIMDAL_COM_ERR_COMPILE_LEX
 [SUBSYSTEM::HEIMDAL_COM_ERR_COMPILE_LEX]
 CFLAGS = -Iheimdal_build -Iheimdal/lib/com_err -Iheimdal/lib/roken  -Ilib/socket_wrapper
-OBJ_FILES = ../heimdal/lib/com_err/lex.ho 
 # End SUBSYSTEM HEIMDAL_COM_ERR_COMPILE_LEX
 #######################
 
+HEIMDAL_COM_ERR_COMPILE_LEX_OBJ_FILES = ./heimdal/lib/com_err/lex.ho 
+
 #######################
 # Start BINARY compile_et
 [BINARY::compile_et]
 CFLAGS = -Iheimdal_build -Iheimdal/lib/roken
 USE_HOSTCC = YES
-OBJ_FILES = ../heimdal/lib/vers/print_version.ho \
-       ../heimdal/lib/com_err/parse.ho \
-       ../heimdal/lib/com_err/compile_et.ho \
-       ../heimdal/lib/roken/getarg.ho \
-       ../heimdal/lib/roken/get_window_size.ho \
-       ../heimdal/lib/roken/strupr.ho \
-       ../heimdal/lib/roken/setprogname.ho \
-       ../lib/socket_wrapper/socket_wrapper.ho \
-       replace.ho
 PRIVATE_DEPENDENCIES = HEIMDAL_COM_ERR_COMPILE_LEX HEIMDAL_ROKEN_GETPROGNAME_H EXT_SOCKET EXT_NSL
 # End BINARY compile_et
 #######################
 
+compile_et_OBJ_FILES = ./heimdal/lib/vers/print_version.ho \
+       ./heimdal/lib/com_err/parse.ho \
+       ./heimdal/lib/com_err/compile_et.ho \
+       ./heimdal/lib/roken/getarg.ho \
+       ./heimdal/lib/roken/get_window_size.ho \
+       ./heimdal/lib/roken/strupr.ho \
+       ./heimdal/lib/roken/setprogname.ho \
+       ./lib/socket_wrapper/socket_wrapper.ho \
+       ./heimdal_build/replace.ho
+
+
 mkinclude perl_path_wrapper.sh asn1_deps.pl heimdal/lib/hdb/hdb.asn1 hdb_asn1 heimdal/lib/hdb |
 mkinclude perl_path_wrapper.sh asn1_deps.pl heimdal/lib/gssapi/spnego/spnego.asn1 spnego_asn1 heimdal/lib/gssapi --sequence=MechTypeList |
 mkinclude perl_path_wrapper.sh asn1_deps.pl heimdal/lib/gssapi/mech/gssapi.asn1 gssapi_asn1 heimdal/lib/gssapi|
@@ -522,7 +544,7 @@ mkinclude perl_path_wrapper.sh asn1_deps.pl heimdal/lib/asn1/kx509.asn1 kx509_as
 mkinclude perl_path_wrapper.sh asn1_deps.pl heimdal/lib/hx509/pkcs10.asn1 pkcs10_asn1 heimdal/lib/hx509 --preserve-binary=CertificationRequestInfo|
 
 #
-# Ensure to update ../static_deps.mk when you add a new entry here!
+# Ensure to update ./static_deps.mk when you add a new entry here!
 #
 mkinclude perl_path_wrapper.sh et_deps.pl heimdal/lib/asn1/asn1_err.et heimdal/lib/asn1|
 mkinclude perl_path_wrapper.sh et_deps.pl heimdal/lib/hdb/hdb_err.et heimdal/lib/hdb|
@@ -540,31 +562,25 @@ clean::
 # Start SUBSYSTEM HEIMDAL
 [SUBSYSTEM::HEIMDAL]
 CFLAGS = -Iheimdal_build
-OBJ_FILES = ../heimdal/lib/vers/print_version.o
 PUBLIC_DEPENDENCIES = \
                HEIMDAL_GSSAPI HEIMDAL_KRB5
 # End SUBSYSTEM HEIMDAL
 #######################
 
-#######################
-# Start SUBSYSTEM KERBEROS_LIB
-[SUBSYSTEM::KERBEROS_LIB]
-#PUBLIC_DEPENDENCIES = EXT_KRB5
-PUBLIC_DEPENDENCIES = HEIMDAL
-# End SUBSYSTEM KERBEROS_LIB
-#######################
+HEIMDAL_OBJ_FILES = ./heimdal/lib/vers/print_version.o
 
 #######################
 # Start BINARY compile_et
 [BINARY::samba4kinit]
 CFLAGS = -Iheimdal_build -Iheimdal/lib/roken
-OBJ_FILES = ../heimdal/kuser/kinit.o \
-       ../heimdal/lib/vers/print_version.o \
-       ../heimdal/lib/roken/setprogname.o \
-       ../heimdal/lib/roken/getarg.o 
 PRIVATE_DEPENDENCIES = HEIMDAL_KRB5 HEIMDAL_NTLM
 # End BINARY compile_et
 #######################
 
+samba4kinit_OBJ_FILES = ./heimdal/kuser/kinit.o \
+       ./heimdal/lib/vers/print_version.o \
+       ./heimdal/lib/roken/setprogname.o \
+       ./heimdal/lib/roken/getarg.o 
+
 dist:: heimdal/lib/asn1/lex.c heimdal/lib/com_err/lex.c \
        heimdal/lib/asn1/parse.c heimdal/lib/com_err/parse.c
index 479cb36296ffa0bcaeedac32ea060a8620fdcf91..94ba933e573bbf1574ce0b7eff1f0200dbfa791a 100644 (file)
@@ -5,25 +5,22 @@
 [MODULE::KDC]
 INIT_FUNCTION = server_service_kdc_init
 SUBSYSTEM = service
-OBJ_FILES = \
-               kdc.o \
-               kpasswdd.o
 PRIVATE_DEPENDENCIES = \
-               LIBLDB KERBEROS_LIB HEIMDAL_KDC HEIMDAL_HDB SAMDB
+               LIBLDB HEIMDAL HEIMDAL_KDC HEIMDAL_HDB SAMDB
 # End SUBSYSTEM KDC
 #######################
 
+KDC_OBJ_FILES = $(addprefix kdc/, kdc.o kpasswdd.o)
+
 #######################
 # Start SUBSYSTEM KDC
 [SUBSYSTEM::HDB_LDB]
 CFLAGS = -Iheimdal/kdc -Iheimdal/lib/hdb
 PRIVATE_PROTO_HEADER = pac_glue.h
-OBJ_FILES = \
-               hdb-ldb.o \
-               pac-glue.o 
 PRIVATE_DEPENDENCIES = \
-               LIBLDB auth_sam auth_sam_reply KERBEROS CREDENTIALS \
+               LIBLDB auth_sam auth_sam_reply HEIMDAL CREDENTIALS \
                HEIMDAL_HDB_ASN1
 # End SUBSYSTEM KDC
 #######################
 
+HDB_LDB_OBJ_FILES = $(addprefix kdc/, hdb-ldb.o pac-glue.o)
index 989237682156563b8e00a8b5015346e8acfbd762..3d85c84dd17ed1b798cc5f5de71ab7a62910bff6 100644 (file)
@@ -6,11 +6,6 @@
 INIT_FUNCTION = server_service_ldap_init
 SUBSYSTEM = service
 PRIVATE_PROTO_HEADER = proto.h
-OBJ_FILES = \
-               ldap_server.o \
-               ldap_backend.o \
-               ldap_bind.o \
-               ldap_extended.o
 PRIVATE_DEPENDENCIES = CREDENTIALS \
                LIBCLI_LDAP SAMDB \
                process_model \
@@ -18,3 +13,10 @@ PRIVATE_DEPENDENCIES = CREDENTIALS \
                LIBSAMBA-CONFIG
 # End SUBSYSTEM SMB
 #######################
+
+LDAP_OBJ_FILES = $(addprefix ldap_server/, \
+               ldap_server.o \
+               ldap_backend.o \
+               ldap_bind.o \
+               ldap_extended.o)
+
index df0f81dccb5e9583717fd545febf14910a757c53..c0bba35ba5dc2fa34600c2db01eeb9f7d9c8d40f 100644 (file)
@@ -1,31 +1,25 @@
 #######################
 # Start SUBSYSTEM MPR
 [SUBSYSTEM::MPR]
-OBJ_FILES = \
-               mpr/miniMpr.o \
-               mpr/var.o
 # End SUBSYSTEM MPR
 #######################
 
+MPR_OBJ_FILES = $(addprefix lib/appweb/mpr/, miniMpr.o var.o)
 
 #######################
 # Start SUBSYSTEM EJS
 [SUBSYSTEM::EJS]
-OBJ_FILES = \
-               ejs/ejsLib.o  \
-               ejs/ejsLex.o \
-               ejs/ejsParser.o \
-               ejs/ejsProcs.o
 PUBLIC_DEPENDENCIES = MPR
 # End SUBSYSTEM EJS
 #######################
 
+EJS_OBJ_FILES = $(addprefix lib/appweb/ejs/, ejsLib.o ejsLex.o ejsParser.o ejsProcs.o)
+
 #######################
 # Start SUBSYSTEM ESP
 [SUBSYSTEM::ESP]
-OBJ_FILES = \
-               esp/esp.o  \
-               esp/espProcs.o
 PUBLIC_DEPENDENCIES = EJS
 # End SUBSYSTEM ESP
 #######################
+
+ESP_OBJ_FILES = $(addprefix lib/appweb/esp/, esp.o espProcs.o)
index d059bdf49b53e658c92ae070081c9cf64a58fbfd..f6a8731a21529e03de73aece3567b900a13520f8 100644 (file)
@@ -19,26 +19,25 @@ mkinclude dbwrap/config.mk
 mkinclude crypto/config.mk
 
 [SUBSYSTEM::LIBCOMPRESSION]
-OBJ_FILES = compression/mszip.o
+
+LIBCOMPRESSION_OBJ_FILES = lib/compression/mszip.o
 
 [SUBSYSTEM::GENCACHE]
-OBJ_FILES = gencache/gencache.o
 PRIVATE_DEPENDENCIES = TDB_WRAP
 
+GENCACHE_OBJ_FILES = gencache/gencache.o
 
 PUBLIC_HEADERS += lib/gencache/gencache.h
 
 [SUBSYSTEM::LDB_WRAP]
-OBJ_FILES = ldb_wrap.o
 PUBLIC_DEPENDENCIES = LIBLDB
 PRIVATE_DEPENDENCIES = LDBSAMBA UTIL_LDB
 
-
+LDB_WRAP_OBJ_FILES = lib/ldb_wrap.o
 PUBLIC_HEADERS += lib/ldb_wrap.h
 
 [SUBSYSTEM::TDB_WRAP]
-OBJ_FILES = tdb_wrap.o
 PUBLIC_DEPENDENCIES = LIBTDB
 
-
+TDB_WRAP_OBJ_FILES = lib/tdb_wrap.o
 PUBLIC_HEADERS += lib/tdb_wrap.h
index 2766784c52ea381f4ba294662bb71e0bf2ed212c..e5e5bd4560e7e1bcea8b34ced532c680b7dd4ca7 100644 (file)
@@ -1,15 +1,12 @@
 ################################################
 # Start SUBSYSTEM CHARSET
 [SUBSYSTEM::CHARSET]
-OBJ_FILES = \
-               iconv.o \
-               charcnv.o \
-               util_unistr.o
 PRIVATE_PROTO_HEADER = charset_proto.h
 PUBLIC_DEPENDENCIES = ICONV
 PRIVATE_DEPENDENCIES = DYNCONFIG
 # End SUBSYSTEM CHARSET
 ################################################
 
+CHARSET_OBJ_FILES = $(addprefix lib/charset/, iconv.o charcnv.o util_unistr.o)
 
 PUBLIC_HEADERS += lib/charset/charset.h
index 87014d4d5389503a3d005318e4d68651e089f027..f8a971a0630b069eaadd2e039efdf2a5e6de7fb2 100644 (file)
@@ -1,16 +1,19 @@
 [SUBSYSTEM::LIBCMDLINE_CREDENTIALS]
 PRIVATE_PROTO_HEADER = credentials.h
-OBJ_FILES = credentials.o
 PUBLIC_DEPENDENCIES = CREDENTIALS LIBPOPT
 
+LIBCMDLINE_CREDENTIALS_OBJ_FILES = lib/cmdline/credentials.o
+
 [SUBSYSTEM::POPT_SAMBA]
-OBJ_FILES = popt_common.o
 PUBLIC_DEPENDENCIES = LIBPOPT
 
+POPT_SAMBA_OBJ_FILES = lib/cmdline/popt_common.o
+
 PUBLIC_HEADERS += lib/cmdline/popt_common.h 
 
 [SUBSYSTEM::POPT_CREDENTIALS]
 PRIVATE_PROTO_HEADER = popt_credentials.h
-OBJ_FILES = popt_credentials.o
 PUBLIC_DEPENDENCIES = CREDENTIALS LIBCMDLINE_CREDENTIALS LIBPOPT
 PRIVATE_DEPENDENCIES = LIBSAMBA-UTIL
+
+POPT_CREDENTIALS_OBJ_FILES = lib/cmdline/popt_credentials.o
index f7a8d2060495cdce7009d031fb285d9dcbca082f..82dbe4a4cb30c3b2732e8c030bdc80e486fa3c11 100644 (file)
@@ -1,26 +1,19 @@
 ##############################
 # Start SUBSYSTEM LIBCRYPTO
 [SUBSYSTEM::LIBCRYPTO]
-OBJ_FILES = \
-               crc32.o \
-               md5.o \
-               hmacmd5.o \
-               md4.o \
-               arcfour.o \
-               sha1.o \
-               hmacsha1.o
 # End SUBSYSTEM LIBCRYPTO
 ##############################
 
+LIBCRYPTO_OBJ_FILES = $(addprefix lib/crypto/, \
+                                        crc32.o md5.o hmacmd5.o md4.o \
+                                        arcfour.o sha1.o hmacsha1.o)
+
+
 [MODULE::TORTURE_LIBCRYPTO]
-OBJ_FILES = \
-               md4test.o \
-               md5test.o \
-               hmacmd5test.o \
-               sha1test.o \
-               hmacsha1test.o
 SUBSYSTEM = torture
 PRIVATE_DEPENDENCIES = LIBCRYPTO
 PRIVATE_PROTO_HEADER = test_proto.h
 
+TORTURE_LIBCRYPTO_OBJ_FILES = $(addprefix lib/crypto/, \
+               md4test.o md5test.o hmacmd5test.o sha1test.o hmacsha1test.o)
 
index 01ce4ddd8e6a65da8c753dae3f32a4f7cc619e8d..9038873d326f96f11aaef7cca7e3a97ecb65ec8c 100644 (file)
@@ -1,6 +1,6 @@
 [SUBSYSTEM::LIBDBWRAP]
-OBJ_FILES = dbwrap.o \
-               dbwrap_tdb.o \
-               dbwrap_ctdb.o
 PUBLIC_DEPENDENCIES = \
                LIBTDB ctdb
+
+LIBDBWRAP_OBJ_FILES = $(addprefix lib/dbwrap/, dbwrap.o dbwrap_tdb.o dbwrap_ctdb.o)
+
index 225a23c634ac23177c08fe8144dfccfffe4b065e..e5a1316c47064318b6a607c625a07221a8e6f3da 100644 (file)
@@ -1,43 +1,49 @@
 ##############################
 [MODULE::EVENTS_AIO]
-OBJ_FILES = events_aio.o
 PRIVATE_DEPENDENCIES = LIBAIO_LINUX
 SUBSYSTEM = LIBEVENTS
 INIT_FUNCTION = s4_events_aio_init
 ##############################
 
+EVENTS_AIO_OBJ_FILES = lib/events/events_aio.o
+
 ##############################
 [MODULE::EVENTS_EPOLL]
-OBJ_FILES = events_epoll.o
 SUBSYSTEM = LIBEVENTS
 INIT_FUNCTION = s4_events_epoll_init
 ##############################
 
+EVENTS_EPOLL_OBJ_FILES = lib/events/events_epoll.o
+
 ##############################
 [MODULE::EVENTS_SELECT]
-OBJ_FILES = events_select.o
 SUBSYSTEM = LIBEVENTS
 INIT_FUNCTION = s4_events_select_init
 ##############################
 
+EVENTS_SELECT_OBJ_FILES = lib/events/events_select.o
+
 ##############################
 [MODULE::EVENTS_STANDARD]
-OBJ_FILES = events_standard.o
 SUBSYSTEM = LIBEVENTS
 INIT_FUNCTION = s4_events_standard_init
 ##############################
 
+EVENTS_STANDARD_OBJ_FILES = lib/events/events_standard.o
 
 ##############################
 # Start SUBSYSTEM LIBEVENTS
 [SUBSYSTEM::LIBEVENTS]
-OBJ_FILES = events.o events_timed.o events_signal.o
 PUBLIC_DEPENDENCIES = LIBTALLOC LIBSAMBA-UTIL
 # End SUBSYSTEM LIBEVENTS
 ##############################
 
+LIBEVENTS_OBJ_FILES = $(addprefix lib/events/, events.o events_timed.o events_signal.o)
+
 PUBLIC_HEADERS += $(addprefix lib/events/, events.h events_internal.h)
 
 [PYTHON::swig_events]
 SWIG_FILE = events.i
 PRIVATE_DEPENDENCIES = LIBEVENTS
+
+swig_events_OBJ_FILES = lib/events/events_wrap.o
index 555a5092cc219588da4269353e438a1044105a08..969abeae468e14aad13bc0d608322f2e1b2cd234 100644 (file)
@@ -58,9 +58,6 @@
 #include "lib/events/events_internal.h"
 #include "lib/util/dlinklist.h"
 #include "param/param.h"
-#if _SAMBA_BUILD_
-#include "build.h"
-#endif
 
 struct event_ops_list {
        struct event_ops_list *next, *prev;
@@ -102,6 +99,9 @@ void event_set_default_backend(const char *backend)
 static void event_backend_init(void)
 {
 #if _SAMBA_BUILD_
+       NTSTATUS s4_events_standard_init(void);
+       NTSTATUS s4_events_select_init(void);
+       NTSTATUS s4_events_epoll_init(void);
        init_module_fn static_init[] = { STATIC_LIBEVENTS_MODULES };
        if (event_backends) return;
        run_init_functions(static_init);
index fa3ac460210e98867fbe868564d7a597db4d11cb..6a0b842fffead78c3e3511d90bf753e1bccb9c7a 100644 (file)
@@ -4,9 +4,8 @@
 PUBLIC_DEPENDENCIES = LIBLDB
 PRIVATE_PROTO_HEADER = ldif_handlers.h
 PRIVATE_DEPENDENCIES = LIBSECURITY SAMDB_SCHEMA LIBNDR NDR_MISC
-OBJ_FILES = \
-               ldif_handlers.o
 # End SUBSYSTEM LDBSAMBA
 ################################################
 
+LDBSAMBA_OBJ_FILES = lib/ldb-samba/ldif_handlers.o
 
index 7da7b9ba34d073534947978d749d45cbe8817a9d..ddbe0f23a60cee35c904c92f20eff172b728836b 100644 (file)
@@ -35,7 +35,6 @@
 
 #if (_SAMBA_BUILD_ >= 4)
 #include "includes.h"
-#include "build.h"
 #endif
 
 #define LDB_MODULE_PREFIX      "modules:"
@@ -126,14 +125,16 @@ static struct ops_list_entry {
        struct ops_list_entry *next;    
 } *registered_modules = NULL;
 
+#define LDB_MODULE(name) (&ldb_ ## name ## _module_ops)
+
 #ifndef STATIC_LIBLDB_MODULES
 
 #define STATIC_LIBLDB_MODULES \
-       ldb_operational_module_ops,     \
-       ldb_rdn_name_module_ops,        \
-       ldb_paged_results_module_ops,   \
-       ldb_sort_module_ops,            \
-       ldb_asq_module_ops, \
+       LDB_MODULE(operational),        \
+       LDB_MODULE(rdn_name),   \
+       LDB_MODULE(paged_results),      \
+       LDB_MODULE(server_sort),                \
+       LDB_MODULE(asq), \
        NULL
 #endif
 
index 81fd1e9b9566dcebf3d4ea4a1f45e8df94ec4e10..377cfaf566c233807a537445cf0aa5b5b68afb9d 100644 (file)
@@ -3,10 +3,10 @@
 [MODULE::ldb_asq]
 PRIVATE_DEPENDENCIES = LIBTALLOC
 CFLAGS = -Ilib/ldb/include
-INIT_FUNCTION = &ldb_asq_module_ops
+INIT_FUNCTION = LDB_MODULE(asq)
 SUBSYSTEM = LIBLDB
-OBJ_FILES = \
-               modules/asq.o
+
+ldb_asq_OBJ_FILES = lib/ldb/modules/asq.o
 # End MODULE ldb_asq
 ################################################
 
@@ -15,112 +15,107 @@ OBJ_FILES = \
 [MODULE::ldb_server_sort]
 PRIVATE_DEPENDENCIES = LIBTALLOC
 CFLAGS = -Ilib/ldb/include
-INIT_FUNCTION = &ldb_server_sort_module_ops
+INIT_FUNCTION = LDB_MODULE(server_sort)
 SUBSYSTEM = LIBLDB
-OBJ_FILES = \
-               modules/sort.o
+
 # End MODULE ldb_sort
 ################################################
+ldb_server_sort_OBJ_FILES = lib/ldb/modules/sort.o
 
 ################################################
 # Start MODULE ldb_paged_results
 [MODULE::ldb_paged_results]
-INIT_FUNCTION = &ldb_paged_results_module_ops
+INIT_FUNCTION = LDB_MODULE(paged_results)
 CFLAGS = -Ilib/ldb/include
 PRIVATE_DEPENDENCIES = LIBTALLOC
 SUBSYSTEM = LIBLDB
-OBJ_FILES = \
-               modules/paged_results.o
 # End MODULE ldb_paged_results
 ################################################
 
+ldb_paged_results_OBJ_FILES = lib/ldb/modules/paged_results.o
+
 ################################################
 # Start MODULE ldb_paged_results
 [MODULE::ldb_paged_searches]
-INIT_FUNCTION = &ldb_paged_searches_module_ops
+INIT_FUNCTION = LDB_MODULE(paged_searches)
 CFLAGS = -Ilib/ldb/include
 PRIVATE_DEPENDENCIES = LIBTALLOC
 SUBSYSTEM = LIBLDB
-OBJ_FILES = \
-               modules/paged_searches.o
 # End MODULE ldb_paged_results
 ################################################
 
+ldb_paged_searches_OBJ_FILES = lib/ldb/modules/paged_searches.o
+
 ################################################
 # Start MODULE ldb_operational
 [MODULE::ldb_operational]
 SUBSYSTEM = LIBLDB
 CFLAGS = -Ilib/ldb/include
 PRIVATE_DEPENDENCIES = LIBTALLOC
-INIT_FUNCTION = &ldb_operational_module_ops
-OBJ_FILES = \
-               modules/operational.o
+INIT_FUNCTION = LDB_MODULE(operational)
 # End MODULE ldb_operational
 ################################################
 
+ldb_operational_OBJ_FILES = lib/ldb/modules/operational.o
+
 ################################################
 # Start MODULE ldb_rdn_name
 [MODULE::ldb_rdn_name]
 SUBSYSTEM = LIBLDB
 CFLAGS = -Ilib/ldb/include
 PRIVATE_DEPENDENCIES = LIBTALLOC
-INIT_FUNCTION = &ldb_rdn_name_module_ops
-OBJ_FILES = \
-               modules/rdn_name.o
+INIT_FUNCTION = LDB_MODULE(rdn_name)
 # End MODULE ldb_rdn_name
 ################################################
 
+ldb_rdn_name_OBJ_FILES = lib/ldb/modules/rdn_name.o
+
 ################################################
 # Start MODULE ldb_map
 [SUBSYSTEM::ldb_map]
 PRIVATE_DEPENDENCIES = LIBTALLOC
 CFLAGS = -Ilib/ldb/include -Ilib/ldb/ldb_map
-OBJ_FILES = \
-               ldb_map/ldb_map_inbound.o \
-               ldb_map/ldb_map_outbound.o \
-               ldb_map/ldb_map.o
 # End MODULE ldb_map
 ################################################
 
+ldb_map_OBJ_FILES = $(addprefix lib/ldb/ldb_map/, ldb_map_inbound.o ldb_map_outbound.o ldb_map.o)
+
 ################################################
 # Start MODULE ldb_skel
 [MODULE::ldb_skel]
 SUBSYSTEM = LIBLDB
 CFLAGS = -Ilib/ldb/include
 PRIVATE_DEPENDENCIES = LIBTALLOC
-INIT_FUNCTION = &ldb_skel_module_ops
-OBJ_FILES = modules/skel.o
+INIT_FUNCTION = LDB_MODULE(skel)
 # End MODULE ldb_skel
 ################################################
 
+ldb_skel_OBJ_FILES = lib/ldb/modules/skel.o
+
 ################################################
 # Start MODULE ldb_sqlite3
 [MODULE::ldb_sqlite3]
 SUBSYSTEM = LIBLDB
 CFLAGS = -Ilib/ldb/include
 PRIVATE_DEPENDENCIES = LIBTALLOC SQLITE3 LIBTALLOC
-OBJ_FILES = \
-               ldb_sqlite3/ldb_sqlite3.o
 # End MODULE ldb_sqlite3
 ################################################
 
+ldb_sqlite3_OBJ_FILES = lib/ldb/ldb_sqlite3/ldb_sqlite3.o
+
 ################################################
 # Start MODULE ldb_tdb
 [MODULE::ldb_tdb]
 SUBSYSTEM = LIBLDB
 CFLAGS = -Ilib/ldb/include -Ilib/ldb/ldb_tdb
-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
 PRIVATE_DEPENDENCIES = \
                LIBTDB LIBTALLOC
 # End MODULE ldb_tdb
 ################################################
 
+ldb_tdb_OBJ_FILES = $(addprefix lib/ldb/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::LIBLDB]
@@ -129,20 +124,6 @@ SO_VERSION = 0
 CFLAGS = -Ilib/ldb/include
 PC_FILE = ldb.pc
 INIT_FUNCTION_TYPE = extern const struct ldb_module_ops
-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
 PUBLIC_DEPENDENCIES = \
                LIBTALLOC
 PRIVATE_DEPENDENCIES = \
@@ -151,6 +132,8 @@ PRIVATE_DEPENDENCIES = \
 # End SUBSYSTEM ldb
 ################################################
 
+LIBLDB_OBJ_FILES = $(addprefix lib/ldb/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)
+
 PUBLIC_HEADERS += $(ldbdir)/include/ldb.h $(ldbdir)/include/ldb_errors.h
 
 MANPAGES += $(ldbdir)/man/ldb.3
@@ -158,39 +141,38 @@ 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 = lib/ldb/tools/ldbtest.o
+
 ################################################
 # Start BINARY oLschema2ldif
 [BINARY::oLschema2ldif]
 INSTALLDIR = BINDIR
-OBJ_FILES= \
-               tools/convert.o \
-               tools/oLschema2ldif.o
 PRIVATE_DEPENDENCIES = \
                LIBLDB_CMDLINE
 # End BINARY oLschema2ldif
 ################################################
 
+
+oLschema2ldif_OBJ_FILES = $(addprefix lib/ldb/tools/, convert.o oLschema2ldif.o)
+
 MANPAGES += $(ldbdir)/man/oLschema2ldif.1
 
 ################################################
 # Start BINARY  ad2oLschema
 [BINARY::ad2oLschema]
 INSTALLDIR = BINDIR
-OBJ_FILES= \
-               tools/convert.o \
-               tools/ad2oLschema.o
 PRIVATE_DEPENDENCIES = \
                LIBLDB_CMDLINE
 # End BINARY ad2oLschema
 ################################################
 
+ad2oLschema_OBJ_FILES = $(addprefix lib/ldb/tools/, convert.o ad2oLschema.o)
+
 MANPAGES += $(ldbdir)/man/ad2oLschema.1
 
 mkinclude tools/config.mk
index d2dcc675a58a6b380992c2f3ab26feef7feabe86..880aafd593858669cd82dad2d9bd1fb457adce7a 100644 (file)
@@ -185,11 +185,17 @@ extern const struct ldb_module_ops ldb_paged_results_module_ops;
 extern const struct ldb_module_ops ldb_rdn_name_module_ops;
 extern const struct ldb_module_ops ldb_schema_module_ops;
 extern const struct ldb_module_ops ldb_asq_module_ops;
-extern const struct ldb_module_ops ldb_sort_module_ops;
+extern const struct ldb_module_ops ldb_server_sort_module_ops;
 extern const struct ldb_module_ops ldb_ldap_module_ops;
 extern const struct ldb_module_ops ldb_ildap_module_ops;
+extern const struct ldb_module_ops ldb_paged_searches_module_ops;
 extern const struct ldb_module_ops ldb_tdb_module_ops;
+extern const struct ldb_module_ops ldb_skel_module_ops;
+extern const struct ldb_module_ops ldb_subtree_rename_module_ops;
+extern const struct ldb_module_ops ldb_subtree_delete_module_ops;
 extern const struct ldb_module_ops ldb_sqlite3_module_ops;
+extern const struct ldb_module_ops ldb_wins_ldb_module_ops;
+extern const struct ldb_module_ops ldb_ranged_results_module_ops;
 
 extern const struct ldb_backend_ops ldb_tdb_backend_ops;
 extern const struct ldb_backend_ops ldb_sqlite3_backend_ops;
index 3062dc886f8f609beb11d7890aa598c51f7f5bfe..1b534645b69a45aeb00210392781b7f124087480 100644 (file)
@@ -6,9 +6,8 @@ CFLAGS = -Ilib/ldb/include
 OUTPUT_TYPE = SHARED_LIBRARY
 PRIVATE_DEPENDENCIES = LIBTALLOC LIBCLI_LDAP CREDENTIALS
 ALIASES = ldapi ldaps ldap
-OBJ_FILES = \
-               ldb_ildap.o
 # End MODULE ldb_ildap
 ################################################
 
+ldb_ildap_OBJ_FILES = lib/ldb/ldb_ildap/ldb_ildap.o
 
index bbd4c1c5ebdc772baad3e28bc783d5645b8d58c8..448cc3ed60ffce9aa9918cf9860834561334cbec 100644 (file)
@@ -2,3 +2,5 @@
 PUBLIC_DEPENDENCIES = LIBLDB
 CFLAGS = -Ilib/ldb/include
 SWIG_FILE = ldb.i
+
+swig_ldb_OBJ_FILES = lib/ldb/ldb_wrap.o
index 02ad84ae25d0ffa5ea6085623831ce0e3f300891..6729636434831bb1a52071a6a32853570e9d55e4 100644 (file)
@@ -2,89 +2,89 @@
 # Start SUBSYSTEM LIBLDB_CMDLINE
 [SUBSYSTEM::LIBLDB_CMDLINE]
 CFLAGS = -Ilib/ldb -Ilib/ldb/include
-OBJ_FILES= \
-               cmdline.o
 PUBLIC_DEPENDENCIES = LIBLDB LIBPOPT
 PRIVATE_DEPENDENCIES = LIBSAMBA-UTIL POPT_SAMBA POPT_CREDENTIALS gensec
 # End SUBSYSTEM LIBLDB_CMDLINE
 ################################################
 
+LIBLDB_CMDLINE_OBJ_FILES = lib/ldb/tools/cmdline.o
+
 ################################################
 # Start BINARY ldbadd
 [BINARY::ldbadd]
 INSTALLDIR = BINDIR
-OBJ_FILES = \
-               ldbadd.o
 PRIVATE_DEPENDENCIES = \
                LIBLDB_CMDLINE LIBCLI_RESOLVE
 # End BINARY ldbadd
 ################################################
 
+
+ldbadd_OBJ_FILES = lib/ldb/tools/ldbadd.o
+
 MANPAGES += $(ldbdir)/man/ldbadd.1
 
 ################################################
 # Start BINARY ldbdel
 [BINARY::ldbdel]
 INSTALLDIR = BINDIR
-OBJ_FILES= \
-               ldbdel.o
 PRIVATE_DEPENDENCIES = \
                LIBLDB_CMDLINE
 # End BINARY ldbdel
 ################################################
 
+ldbdel_OBJ_FILES = lib/ldb/tools/ldbdel.o
+
 MANPAGES += $(ldbdir)/man/ldbdel.1
 
 ################################################
 # Start BINARY ldbmodify
 [BINARY::ldbmodify]
 INSTALLDIR = BINDIR
-OBJ_FILES= \
-               ldbmodify.o
 PRIVATE_DEPENDENCIES = \
                LIBLDB_CMDLINE
 # End BINARY ldbmodify
 ################################################
 
+ldbmodify_OBJ_FILES = lib/ldb/tools/ldbmodify.o
 MANPAGES += $(ldbdir)/man/ldbmodify.1
 
 ################################################
 # Start BINARY ldbsearch
 [BINARY::ldbsearch]
 INSTALLDIR = BINDIR
-OBJ_FILES= \
-               ldbsearch.o
 PRIVATE_DEPENDENCIES = \
                LIBLDB_CMDLINE 
 # End BINARY ldbsearch
 ################################################
 
+ldbsearch_OBJ_FILES = lib/ldb/tools/ldbsearch.o
+
 MANPAGES += $(ldbdir)/man/ldbsearch.1
 
 ################################################
 # Start BINARY ldbedit
 [BINARY::ldbedit]
 INSTALLDIR = BINDIR
-OBJ_FILES= \
-               ldbedit.o
 PRIVATE_DEPENDENCIES = \
                LIBLDB_CMDLINE
 # End BINARY ldbedit
 ################################################
 
+ldbedit_OBJ_FILES = lib/ldb/tools/ldbedit.o
+
 MANPAGES += $(ldbdir)/man/ldbedit.1
 
 ################################################
 # Start BINARY ldbrename
 [BINARY::ldbrename]
 INSTALLDIR = BINDIR
-OBJ_FILES= \
-               ldbrename.o
 PRIVATE_DEPENDENCIES = \
                LIBLDB_CMDLINE
 # End BINARY ldbrename
 ################################################
 
+ldbrename_OBJ_FILES = lib/ldb/tools/ldbrename.o
+
 MANPAGES += $(ldbdir)/man/ldbrename.1
 
 
index 3fec9c0c905e1f25f717c1736f229f4c1eba3bc6..0a0097bdf35ccd15648e1ffb26c4d24f9233a4d3 100644 (file)
@@ -2,8 +2,6 @@
 ################################################
 # Start SUBSYSTEM MESSAGING
 [SUBSYSTEM::MESSAGING]
-OBJ_FILES = \
-               messaging.o
 PUBLIC_DEPENDENCIES = \
                LIBSAMBA-UTIL \
                TDB_WRAP \
@@ -14,3 +12,6 @@ PUBLIC_DEPENDENCIES = \
                LIBNDR
 # End SUBSYSTEM MESSAGING
 ################################################
+
+
+MESSAGING_OBJ_FILES = lib/messaging/messaging.o
index 81b0ef36fd00d92b2a46cde857d4e7f1b51ae771..61f639200891f57e79f534dd460f9dd9575971ca 100644 (file)
@@ -1,8 +1,8 @@
 ##############################
 # Start SUBSYSTEM NSS_WRAPPER
 [SUBSYSTEM::NSS_WRAPPER]
-OBJ_FILES = nss_wrapper.o
 # End SUBSYSTEM NSS_WRAPPER
 ##############################
 
 PUBLIC_HEADERS += lib/nss_wrapper/nss_wrapper.h
+NSS_WRAPPER_OBJ_FILES = lib/nss_wrapper/nss_wrapper.o
index aae98b86b2e899c0c4abea7954ddc2f23a7e3cb6..70fb289189a43f53165df7dffa18df81c9a35279 100644 (file)
@@ -1,12 +1,14 @@
 [SUBSYSTEM::LIBPOLICY]
 CFLAGS = -Iheimdal/lib/roken
-OBJ_FILES = lex.o parse_adm.o 
 PRIVATE_DEPENDENCIES = LIBSAMBA-UTIL LIBSAMBA-CONFIG LIBTALLOC CHARSET 
 
+LIBPOLICY_OBJ_FILES = lib/policy/lex.o lib/policy/parse_adm.o 
+
 lib/policy/lex.l: lib/policy/parse_adm.h
 
 lib/policy/parse_adm.h: lib/policy/parse_adm.c
 
 [BINARY::dumpadm]
-OBJ_FILES = dumpadm.o
 PRIVATE_DEPENDENCIES = LIBPOLICY LIBPOPT LIBSAMBA-CONFIG LIBTALLOC LIBSAMBA-UTIL CHARSET
+
+dumpadm_OBJ_FILES = lib/policy/dumpadm.o
index ad218517b3c756a9df579a0d425212a81df0260e..86d440ac78cfda45533e26848921ff98ef96eda7 100644 (file)
@@ -1,7 +1,5 @@
 [SUBSYSTEM::LIBPOPT]
-OBJ_FILES = findme.o \
-                       popt.o \
-                       poptconfig.o \
-                       popthelp.o \
-                       poptparse.o
 CFLAGS = -Ilib/popt
+
+LIBPOPT_OBJ_FILES = $(addprefix lib/popt/, findme.o popt.o poptconfig.o popthelp.o poptparse.o)
+
index b2d7ce202e44672d0ad3c97de09452c1baa714e4..544201ad5340792ee5ff9c1956ec9ce1342fc628 100644 (file)
@@ -1,6 +1,7 @@
 [SUBSYSTEM::TDR_REGF]
 PUBLIC_DEPENDENCIES = TDR 
-OBJ_FILES = tdr_regf.o
+
+TDR_REGF_OBJ_FILES = lib/registry/tdr_regf.o
 
 # Special support for external builddirs
 lib/registry/regf.c: lib/registry/tdr_regf.c
@@ -20,93 +21,87 @@ clean::
 VERSION = 0.0.1
 PC_FILE = registry.pc
 SO_VERSION = 0
-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
 # End MODULE registry_ldb
 ################################################
 
+registry_OBJ_FILES = $(addprefix lib/registry/, 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_HEADERS += $(addprefix lib/registry/, registry.h hive.h patchfile.h)
 
 [SUBSYSTEM::registry_common]
 PUBLIC_DEPENDENCIES = registry
-OBJ_FILES = tools/common.o
 PRIVATE_PROTO_HEADER = tools/common.h
 
+registry_common_OBJ_FILES = lib/registry/tools/common.o
+
 ################################################
 # Start BINARY regdiff
 [BINARY::regdiff]
 INSTALLDIR = BINDIR
-OBJ_FILES = tools/regdiff.o
 PRIVATE_DEPENDENCIES = \
                LIBSAMBA-CONFIG registry LIBPOPT POPT_SAMBA POPT_CREDENTIALS
 # End BINARY regdiff
 ################################################
 
+regdiff_OBJ_FILES = lib/registry/tools/regdiff.o
+
 MANPAGES += lib/registry/man/regdiff.1
 
 ################################################
 # Start BINARY regpatch
 [BINARY::regpatch]
 INSTALLDIR = BINDIR
-OBJ_FILES = tools/regpatch.o
 PRIVATE_DEPENDENCIES = \
                LIBSAMBA-CONFIG registry LIBPOPT POPT_SAMBA POPT_CREDENTIALS \
                registry_common
 # End BINARY regpatch
 ################################################
 
+regpatch_OBJ_FILES = lib/registry/tools/regpatch.o
+
 MANPAGES += lib/registry/man/regpatch.1
 
 ################################################
 # Start BINARY regshell
 [BINARY::regshell]
 INSTALLDIR = BINDIR
-OBJ_FILES = tools/regshell.o
 PRIVATE_DEPENDENCIES = \
                LIBSAMBA-CONFIG LIBPOPT registry POPT_SAMBA POPT_CREDENTIALS \
                SMBREADLINE registry_common
 # End BINARY regshell
 ################################################
 
+regshell_OBJ_FILES = lib/registry/tools/regshell.o
+
 MANPAGES += lib/registry/man/regshell.1
 
 ################################################
 # Start BINARY regtree
 [BINARY::regtree]
 INSTALLDIR = BINDIR
-OBJ_FILES = tools/regtree.o
 PRIVATE_DEPENDENCIES = \
                LIBSAMBA-CONFIG LIBPOPT registry POPT_SAMBA POPT_CREDENTIALS \
                registry_common
 # End BINARY regtree
 ################################################
 
+regtree_OBJ_FILES = lib/registry/tools/regtree.o
+
 MANPAGES += lib/registry/man/regtree.1
 
 [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
+
+torture_registry_OBJ_FILES = $(addprefix lib/registry/tests/, generic.o hive.o diff.o registry.o)
 
 [PYTHON::swig_registry]
 PUBLIC_DEPENDENCIES = registry
 SWIG_FILE = registry.i
 
+swig_registry_OBJ_FILES = lib/registry/registry_wrap.o
index a18fd2c28c88fa61fc07cb66d5b941721c0d67fa..ff3ddf0a3599f08b8f04857e9a0e7c38b77f5de9 100644 (file)
@@ -21,7 +21,6 @@
 #include "lib/util/dlinklist.h"
 #include "lib/registry/registry.h"
 #include "system/filesys.h"
-#include "build.h"
 
 
 /**
index 3e463100c9cb80380f02066cfd3b6a45010f8c91..b2cdec9cdf1c1b144da38a898c3fbbefe082f5a9 100644 (file)
@@ -22,7 +22,6 @@
 #include "lib/util/dlinklist.h"
 #include "lib/registry/registry.h"
 #include "system/filesys.h"
-#include "build.h"
 
 struct reg_key_path {
        uint32_t predefined_key;
index 2d129c5f8ce795504f186817d13559649da212e0..d33b38cab0ba90f328cb6c6b974f0124b0678212 100644 (file)
@@ -2,7 +2,8 @@
 # Start SUBSYSTEM LIBSAMBA3
 [SUBSYSTEM::SMBPASSWD]
 PRIVATE_PROTO_HEADER = samba3_smbpasswd_proto.h
-OBJ_FILES = smbpasswd.o
 PRIVATE_DEPENDENCIES = CHARSET LIBSAMBA-UTIL
 # End SUBSYSTEM LIBSAMBA3
 ################################################
+
+SMBPASSWD_OBJ_FILES = lib/samba3/smbpasswd.o
index 5a7a62d8aeeaaeb22715b4722af55bfe93a0814f..354b1b51986000d79b7711367131d1d35eb5a7e9 100644 (file)
@@ -2,44 +2,41 @@
 # Start SUBSYSTEM LIBNETIF
 [SUBSYSTEM::LIBNETIF]
 PRIVATE_PROTO_HEADER = netif_proto.h
-OBJ_FILES = \
-               interface.o \
-               netif.o
 PRIVATE_DEPENDENCIES = LIBSAMBA-UTIL EXT_SOCKET EXT_NSL
 # End SUBSYSTEM LIBNETIF
 ##############################
 
+LIBNETIF_OBJ_FILES = $(addprefix lib/socket/, interface.o netif.o)
+
 ################################################
 # Start MODULE socket_ip
 [MODULE::socket_ip]
 SUBSYSTEM = samba-socket
 OUTPUT_TYPE = MERGED_OBJ
-OBJ_FILES = \
-               socket_ip.o
 PRIVATE_DEPENDENCIES = EXT_SOCKET EXT_NSL LIBSAMBA-ERRORS 
 # End MODULE socket_ip
 ################################################
 
+socket_ip_OBJ_FILES = lib/socket/socket_ip.o
+
 ################################################
 # Start MODULE socket_unix
 [MODULE::socket_unix]
 SUBSYSTEM = samba-socket
 OUTPUT_TYPE = MERGED_OBJ
-OBJ_FILES = \
-               socket_unix.o
 PRIVATE_DEPENDENCIES = EXT_SOCKET EXT_NSL
 # End MODULE socket_unix
 ################################################
 
+socket_unix_OBJ_FILES = lib/socket/socket_unix.o
+
 ################################################
 # Start SUBSYSTEM SOCKET
 [SUBSYSTEM::samba-socket]
-OBJ_FILES = \
-               socket.o \
-               access.o \
-               connect_multi.o \
-               connect.o
 PUBLIC_DEPENDENCIES = LIBTALLOC
 PRIVATE_DEPENDENCIES = SOCKET_WRAPPER LIBCLI_COMPOSITE LIBCLI_RESOLVE
 # End SUBSYSTEM SOCKET
 ################################################
+
+samba-socket_OBJ_FILES = $(addprefix lib/socket/, socket.o access.o connect_multi.o connect.o)
+
index cc52a998015610ddbd1dc7c87259ac7ac0f7b0f0..f7e874d8e28e91264a6975adcbeea55fbf87cd48 100644 (file)
@@ -1,9 +1,10 @@
 ##############################
 # Start SUBSYSTEM SOCKET_WRAPPER
 [SUBSYSTEM::SOCKET_WRAPPER]
-OBJ_FILES = socket_wrapper.o
 PRIVATE_DEPENDENCIES = EXT_SOCKET
 # End SUBSYSTEM SOCKET_WRAPPER
 ##############################
 
 PUBLIC_HEADERS += lib/socket_wrapper/socket_wrapper.h
+
+SOCKET_WRAPPER_OBJ_FILES = lib/socket_wrapper/socket_wrapper.o
index 39e7bc739dd22537a6a5709338e84c33b17c1bc3..52c85254830d7119ac9152fd183d4be6292aeb8c 100644 (file)
@@ -1,8 +1,4 @@
-
-################################################
-# Start SUBSYSTEM LIBPACKET
 [SUBSYSTEM::LIBPACKET]
-OBJ_FILES = packet.o
 PRIVATE_DEPENDENCIES = LIBTLS
-# End SUBSYSTEM LIBPACKET
-################################################
+
+LIBPACKET_OBJ_FILES = lib/stream/packet.o
index 33241ffac7d5b3ec5e6e3a4d1f4db3540bd6d7b2..b65cb4ccf6788a9eca36a1eefd64c697832163a0 100644 (file)
@@ -1,8 +1,8 @@
 [LIBRARY::LIBTALLOC]
 OUTPUT_TYPE = STATIC_LIBRARY
-OBJ_FILES = talloc.o
 CFLAGS = -Ilib/talloc
 
+LIBTALLOC_OBJ_FILES = lib/talloc/talloc.o
 
 MANPAGES += $(tallocdir)/talloc.3
 PUBLIC_HEADERS += $(tallocdir)/talloc.h
index c69804fa13b7f1227cdae868d75177b124a1bc77..fd39074f5056c9f063c007c25c8c33db33874fb8 100644 (file)
@@ -2,57 +2,58 @@
 # Start SUBSYSTEM LIBTDB
 [LIBRARY::LIBTDB]
 OUTPUT_TYPE = STATIC_LIBRARY
-OBJ_FILES = \
-       common/tdb.o common/dump.o common/io.o common/lock.o \
-       common/open.o common/traverse.o common/freelist.o \
-       common/error.o common/transaction.o
 CFLAGS = -Ilib/tdb/include
 #
 # End SUBSYSTEM ldb
 ################################################
 
+LIBTDB_OBJ_FILES = $(addprefix lib/tdb/common/, \
+       tdb.o dump.o io.o lock.o \
+       open.o traverse.o freelist.o \
+       error.o transaction.o)
+
 PUBLIC_HEADERS += $(tdbdir)/include/tdb.h
 
 ################################################
 # Start BINARY tdbtool
 [BINARY::tdbtool]
 INSTALLDIR = BINDIR
-OBJ_FILES= \
-               tools/tdbtool.o
 PRIVATE_DEPENDENCIES = \
                LIBTDB
 # End BINARY tdbtool
 ################################################
 
+tdbtool_OBJ_FILES = lib/tdb/tools/tdbtool.o
+
 ################################################
 # Start BINARY tdbtorture
 [BINARY::tdbtorture]
 INSTALLDIR = BINDIR
-OBJ_FILES= \
-               tools/tdbtorture.o
 PRIVATE_DEPENDENCIES = \
                LIBTDB
 # End BINARY tdbtorture
 ################################################
 
+tdbtorture_OBJ_FILES = lib/tdb/tools/tdbtorture.o
+
 ################################################
 # Start BINARY tdbdump
 [BINARY::tdbdump]
 INSTALLDIR = BINDIR
-OBJ_FILES= \
-               tools/tdbdump.o
 PRIVATE_DEPENDENCIES = \
                LIBTDB
 # End BINARY tdbdump
 ################################################
 
+tdbdump_OBJ_FILES = lib/tdb/tools/tdbdump.o
+
 ################################################
 # Start BINARY tdbbackup
 [BINARY::tdbbackup]
 INSTALLDIR = BINDIR
-OBJ_FILES= \
-               tools/tdbbackup.o
 PRIVATE_DEPENDENCIES = \
                LIBTDB
 # End BINARY tdbbackup
 ################################################
+
+tdbbackup_OBJ_FILES = lib/tdb/tools/tdbbackup.o
index 23b01c120c63925b8e14c48b9b2ee594ef9508a9..2d61545b7f69aa34aca228b48c13fe165100c0fa 100644 (file)
@@ -1,3 +1,5 @@
 [PYTHON::swig_tdb]
 SWIG_FILE = tdb.i
 PUBLIC_DEPENDENCIES = LIBTDB DYNCONFIG
+
+swig_tdb_OBJ_FILES = lib/tdb/tdb_wrap.o
index eb3cde9bdf9d5709919e1633de1e7321dc8a08e2..3e05f6c30c161ee5517879e44f7ee7e982efdc49 100644 (file)
@@ -2,6 +2,7 @@
 CFLAGS = -Ilib/tdr
 PRIVATE_PROTO_HEADER = tdr_proto.h
 PUBLIC_DEPENDENCIES = LIBTALLOC LIBSAMBA-UTIL
-OBJ_FILES = tdr.o
+
+TDR_OBJ_FILES = lib/tdr/tdr.o
 
 PUBLIC_HEADERS += lib/tdr/tdr.h
index f75c613e731a55a83871ecd49a5a02a8b6a508c2..a92321f59fd7d42f3299f02e5bbb5d4f604dec3f 100644 (file)
@@ -1,11 +1,7 @@
 ################################################
 # Start SUBSYSTEM LIBTLS
 [SUBSYSTEM::LIBTLS]
-OBJ_FILES = \
-               tls.o \
-               tlscert.o
 PUBLIC_DEPENDENCIES = \
                LIBTALLOC GNUTLS LIBSAMBA-CONFIG samba-socket
-#
-# End SUBSYSTEM LIBTLS
-################################################
+
+LIBTLS_OBJ_FILES = lib/tls/tls.o lib/tls/tlscert.o
index 16a0357df83b8744560e604748bf64277bb7f064..85394513cd1dac2e7d0fe865ad89fcd727619d92 100644 (file)
@@ -1,7 +1,13 @@
 [SUBSYSTEM::LIBSAMBA-UTIL]
 #VERSION = 0.0.1
 #SO_VERSION = 0
-OBJ_FILES = xfile.o \
+PUBLIC_DEPENDENCIES = \
+               LIBTALLOC LIBCRYPTO \
+               SOCKET_WRAPPER EXT_NSL \
+               CHARSET EXECINFO DYNCONFIG
+
+LIBSAMBA-UTIL_OBJ_FILES = $(addprefix lib/util/, \
+       xfile.o \
                debug.o \
                fault.o \
                signal.o \
@@ -18,11 +24,7 @@ OBJ_FILES = xfile.o \
                ms_fnmatch.o \
                mutex.o \
                idtree.o \
-               become_daemon.o
-PUBLIC_DEPENDENCIES = \
-               LIBTALLOC LIBCRYPTO \
-               SOCKET_WRAPPER EXT_NSL \
-               CHARSET EXECINFO
+               become_daemon.o)
 
 PUBLIC_HEADERS += $(addprefix lib/util/, util.h \
                                 attr.h \
@@ -36,33 +38,35 @@ PUBLIC_HEADERS += $(addprefix lib/util/, util.h \
 
 [SUBSYSTEM::ASN1_UTIL]
 PRIVATE_PROTO_HEADER = asn1_proto.h
-OBJ_FILES = asn1.o
 
+
+ASN1_UTIL_OBJ_FILES = lib/util/asn1.o
 PUBLIC_HEADERS += lib/util/asn1.h
 
 [SUBSYSTEM::UNIX_PRIVS]
 PRIVATE_PROTO_HEADER = unix_privs.h
-OBJ_FILES = unix_privs.o
+
+UNIX_PRIVS_OBJ_FILES = lib/util/unix_privs.o
 
 ################################################
 # Start SUBSYSTEM WRAP_XATTR
 [SUBSYSTEM::WRAP_XATTR]
 PRIVATE_PROTO_HEADER = wrap_xattr.h
-OBJ_FILES = \
-               wrap_xattr.o
 PUBLIC_DEPENDENCIES = XATTR
 #
 # End SUBSYSTEM WRAP_XATTR
 ################################################
 
+WRAP_XATTR_OBJ_FILES = lib/util/wrap_xattr.o
+
 [SUBSYSTEM::UTIL_TDB]
 PRIVATE_PROTO_HEADER = util_tdb.h
-OBJ_FILES = \
-               util_tdb.o
 PUBLIC_DEPENDENCIES = LIBTDB
 
+UTIL_TDB_OBJ_FILES = lib/util/util_tdb.o
+
 [SUBSYSTEM::UTIL_LDB]
 PRIVATE_PROTO_HEADER = util_ldb.h
-OBJ_FILES = \
-                       util_ldb.o
 PUBLIC_DEPENDENCIES = LIBLDB
+
+UTIL_LDB_OBJ_FILES = lib/util/util_ldb.o
index 61d3fe8c9451c7f963c29eedd72fafb0b377f7c3..f180844d84232d92a687c4a90402ea24c7dd5a9e 100644 (file)
@@ -2,15 +2,16 @@
 # Start SUBSYSTEM LIBCLI_AUTH
 [SUBSYSTEM::LIBCLI_AUTH]
 PRIVATE_PROTO_HEADER = proto.h
-OBJ_FILES = credentials.o \
-               session.o \
-               smbencrypt.o \
-               smbdes.o
 PUBLIC_DEPENDENCIES = \
                MSRPC_PARSE \
                LIBSAMBA-CONFIG
 # End SUBSYSTEM LIBCLI_AUTH
 #################################
 
+LIBCLI_AUTH_OBJ_FILES = $(addprefix libcli/auth/, \
+               credentials.o \
+               session.o \
+               smbencrypt.o \
+               smbdes.o)
 
 PUBLIC_HEADERS += libcli/auth/credentials.h
index d3a3beaaa980a5669b0e427511aeb5f2bc56042a..abef6e31924f956cac8b6ebd64fba20edaaa9272 100644 (file)
@@ -3,120 +3,127 @@ mkinclude ldap/config.mk
 mkinclude security/config.mk
 
 [SUBSYSTEM::LIBSAMBA-ERRORS]
-OBJ_FILES = util/doserr.o \
-                   util/errormap.o \
-                   util/nterr.o \
 
+LIBSAMBA-ERRORS_OBJ_FILES = $(addprefix libcli/util/, doserr.o errormap.o nterr.o)
 
 PUBLIC_HEADERS += $(addprefix libcli/, util/error.h util/ntstatus.h util/doserr.h util/werror.h)
 
 [SUBSYSTEM::LIBCLI_LSA]
 PRIVATE_PROTO_HEADER = util/clilsa.h
-OBJ_FILES = util/clilsa.o
 PUBLIC_DEPENDENCIES = RPC_NDR_LSA
 PRIVATE_DEPENDENCIES = LIBSECURITY
 
+LIBCLI_LSA_OBJ_FILES = libcli/util/clilsa.o
+
 [SUBSYSTEM::LIBCLI_COMPOSITE]
 PRIVATE_PROTO_HEADER = composite/proto.h
-OBJ_FILES = \
-       composite/composite.o
 PUBLIC_DEPENDENCIES = LIBEVENTS
 
+LIBCLI_COMPOSITE_OBJ_FILES = libcli/composite/composite.o
+
 [SUBSYSTEM::LIBCLI_SMB_COMPOSITE]
 PRIVATE_PROTO_HEADER = smb_composite/proto.h
-OBJ_FILES = \
-       smb_composite/loadfile.o \
-       smb_composite/savefile.o \
-       smb_composite/connect.o \
-       smb_composite/sesssetup.o \
-       smb_composite/fetchfile.o \
-       smb_composite/appendacl.o \
-       smb_composite/fsinfo.o 
 PUBLIC_DEPENDENCIES = LIBCLI_COMPOSITE CREDENTIALS gensec LIBCLI_RESOLVE
 
+LIBCLI_SMB_COMPOSITE_OBJ_FILES = $(addprefix libcli/smb_composite/, \
+       loadfile.o \
+       savefile.o \
+       connect.o \
+       sesssetup.o \
+       fetchfile.o \
+       appendacl.o \
+       fsinfo.o)
+
+
 [SUBSYSTEM::NDR_NBT_BUF]
 PRIVATE_PROTO_HEADER = nbt/nbtname.h
-OBJ_FILES = nbt/nbtname.o
+
+NDR_NBT_BUF_OBJ_FILES = libcli/nbt/nbtname.o
 
 [SUBSYSTEM::LIBCLI_NBT]
 #VERSION = 0.0.1
 #SO_VERSION = 0
 PRIVATE_PROTO_HEADER = nbt/nbt_proto.h
-OBJ_FILES = \
-       nbt/nbtsocket.o \
-       nbt/namequery.o \
-       nbt/nameregister.o \
-       nbt/namerefresh.o \
-       nbt/namerelease.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_NBT LIBCLI_COMPOSITE LIBEVENTS \
        NDR_SECURITY samba-socket LIBSAMBA-UTIL
 
+LIBCLI_NBT_OBJ_FILES = $(addprefix libcli/nbt/, \
+       nbtsocket.o \
+       namequery.o \
+       nameregister.o \
+       namerefresh.o \
+       namerelease.o)
+
 [PYTHON::python_libcli_nbt]
 SWIG_FILE = swig/libcli_nbt.i
 PUBLIC_DEPENDENCIES = LIBCLI_NBT DYNCONFIG LIBSAMBA-CONFIG
 
+python_libcli_nbt_OBJ_FILES = libcli/swig/libcli_nbt_wrap.o
+
 [PYTHON::python_libcli_smb]
 SWIG_FILE = swig/libcli_smb.i
 PUBLIC_DEPENDENCIES = LIBCLI_SMB DYNCONFIG LIBSAMBA-CONFIG
 
+python_libcli_smb_OBJ_FILES = libcli/swig/libcli_smb_wrap.o
+
 [SUBSYSTEM::LIBCLI_DGRAM]
-OBJ_FILES = \
-       dgram/dgramsocket.o \
-       dgram/mailslot.o \
-       dgram/netlogon.o \
-       dgram/ntlogon.o \
-       dgram/browse.o
 PUBLIC_DEPENDENCIES = LIBCLI_NBT LIBNDR LIBCLI_RESOLVE
 
+LIBCLI_DGRAM_OBJ_FILES = $(addprefix libcli/dgram/, \
+       dgramsocket.o \
+       mailslot.o \
+       netlogon.o \
+       ntlogon.o \
+       browse.o)
+
 [SUBSYSTEM::LIBCLI_CLDAP]
-OBJ_FILES = cldap/cldap.o
 PUBLIC_DEPENDENCIES = LIBCLI_LDAP
 PRIVATE_DEPENDENCIES = LIBSAMBA-UTIL LIBLDB
 
+LIBCLI_CLDAP_OBJ_FILES = libcli/cldap/cldap.o
 PUBLIC_HEADERS += libcli/cldap/cldap.h
 
 [SUBSYSTEM::LIBCLI_WREPL]
 PRIVATE_PROTO_HEADER = wrepl/winsrepl_proto.h
-OBJ_FILES = \
-       wrepl/winsrepl.o
 PUBLIC_DEPENDENCIES = NDR_WINSREPL samba-socket LIBCLI_RESOLVE LIBEVENTS \
                                          LIBPACKET LIBNDR
 
+LIBCLI_WREPL_OBJ_FILES = libcli/wrepl/winsrepl.o
+
 [SUBSYSTEM::LIBCLI_RESOLVE]
 PRIVATE_PROTO_HEADER = resolve/proto.h
-OBJ_FILES = \
-       resolve/resolve.o
 PUBLIC_DEPENDENCIES = NDR_NBT
 
+LIBCLI_RESOLVE_OBJ_FILES = libcli/resolve/resolve.o
+
 [SUBSYSTEM::LP_RESOLVE]
 PRIVATE_PROTO_HEADER = resolve/lp_proto.h
-OBJ_FILES = \
-       resolve/bcast.o \
-       resolve/nbtlist.o \
-       resolve/wins.o \
-       resolve/host.o \
-       resolve/resolve_lp.o
 PRIVATE_DEPENDENCIES = LIBCLI_NBT LIBSAMBA-CONFIG LIBNETIF 
 
+LP_RESOLVE_OBJ_FILES = $(addprefix libcli/resolve/, \
+                                         bcast.o nbtlist.o wins.o \
+                                         host.o resolve_lp.o)
+
 [SUBSYSTEM::LIBCLI_FINDDCS]
 PRIVATE_PROTO_HEADER = finddcs.h
-OBJ_FILES = \
-       finddcs.o
 PUBLIC_DEPENDENCIES = LIBCLI_NBT MESSAGING
 
+LIBCLI_FINDDCS_OBJ_FILES = libcli/finddcs.o
+
 [SUBSYSTEM::LIBCLI_SMB]
 PRIVATE_PROTO_HEADER = libcli_proto.h
-OBJ_FILES = clireadwrite.o \
+PUBLIC_DEPENDENCIES = LIBCLI_RAW LIBSAMBA-ERRORS LIBCLI_AUTH \
+       LIBCLI_SMB_COMPOSITE LIBCLI_NBT LIBSECURITY LIBCLI_RESOLVE \
+       LIBCLI_DGRAM LIBCLI_SMB2 LIBCLI_FINDDCS samba-socket
+
+LIBCLI_SMB_OBJ_FILES = $(addprefix libcli/, \
+               clireadwrite.o \
                cliconnect.o \
                clifile.o \
                clilist.o \
                clitrans2.o \
                climessage.o \
-               clideltree.o
-PUBLIC_DEPENDENCIES = LIBCLI_RAW LIBSAMBA-ERRORS LIBCLI_AUTH \
-       LIBCLI_SMB_COMPOSITE LIBCLI_NBT LIBSECURITY LIBCLI_RESOLVE \
-       LIBCLI_DGRAM LIBCLI_SMB2 LIBCLI_FINDDCS samba-socket
-
+               clideltree.o)
 
 PUBLIC_HEADERS += libcli/libcli.h
 
@@ -125,28 +132,11 @@ PRIVATE_PROTO_HEADER = raw/raw_proto.h
 PRIVATE_DEPENDENCIES = LIBCLI_COMPOSITE LP_RESOLVE gensec LIBCLI_RESOLVE LIBSECURITY LIBNDR
 #LDFLAGS = $(LIBCLI_SMB_COMPOSITE_OUTPUT)
 PUBLIC_DEPENDENCIES = samba-socket LIBPACKET gensec LIBCRYPTO CREDENTIALS 
-OBJ_FILES = raw/rawfile.o \
-               raw/smb_signing.o \
-               raw/clisocket.o \
-               raw/clitransport.o \
-               raw/clisession.o \
-               raw/clitree.o \
-               raw/clierror.o \
-               raw/rawrequest.o \
-               raw/rawreadwrite.o \
-               raw/rawsearch.o \
-               raw/rawsetfileinfo.o \
-               raw/raweas.o \
-               raw/rawtrans.o \
-               raw/clioplock.o \
-               raw/rawnegotiate.o \
-               raw/rawfsinfo.o \
-               raw/rawfileinfo.o \
-               raw/rawnotify.o \
-               raw/rawioctl.o \
-               raw/rawacl.o \
-               raw/rawdate.o \
-               raw/rawlpq.o \
-               raw/rawshadow.o
+
+LIBCLI_RAW_OBJ_FILES = $(addprefix libcli/raw/, rawfile.o smb_signing.o clisocket.o \
+                                         clitransport.o clisession.o clitree.o clierror.o rawrequest.o \
+                                         rawreadwrite.o rawsearch.o rawsetfileinfo.o raweas.o rawtrans.o \
+                                         clioplock.o rawnegotiate.o rawfsinfo.o rawfileinfo.o rawnotify.o \
+                                         rawioctl.o rawacl.o rawdate.o rawlpq.o rawshadow.o)
 
 mkinclude smb2/config.mk
index bcdedd34409289069b8f014947f28a6c1cf602c4..cc38796ac31c563229a11747cc36404f513ab197 100644 (file)
@@ -1,18 +1,18 @@
 [SUBSYSTEM::LIBCLI_LDAP]
 PRIVATE_PROTO_HEADER = ldap_proto.h
-OBJ_FILES = ldap.o \
-               ldap_client.o \
-               ldap_bind.o \
-               ldap_msg.o \
-               ldap_ildap.o \
-               ldap_controls.o
 PUBLIC_DEPENDENCIES = LIBSAMBA-ERRORS LIBEVENTS LIBPACKET 
 PRIVATE_DEPENDENCIES = LIBCLI_COMPOSITE samba-socket NDR_SAMR LIBTLS ASN1_UTIL \
                                           LDAP_ENCODE LIBNDR LP_RESOLVE gensec
 
+LIBCLI_LDAP_OBJ_FILES = $(addprefix libcli/ldap/, \
+                                          ldap.o ldap_client.o ldap_bind.o \
+                                          ldap_msg.o ldap_ildap.o ldap_controls.o)
+
+
 PUBLIC_HEADERS += libcli/ldap/ldap.h
 
 [SUBSYSTEM::LDAP_ENCODE]
 PRIVATE_PROTO_HEADER = ldap_ndr.h
-OBJ_FILES = ldap_ndr.o
 # FIXME PRIVATE_DEPENDENCIES = LIBLDB
+
+LDAP_ENCODE_OBJ_FILES = libcli/ldap/ldap_ndr.o
index 8c66df0325ff48a0486c9de7cf2596a70346ba82..fde065aa347da496e23b3bbb2b7da0bcf8b5d6d6 100644 (file)
@@ -1,13 +1,14 @@
 [SUBSYSTEM::LIBSECURITY]
 PRIVATE_PROTO_HEADER = proto.h
-OBJ_FILES = security_token.o \
-               security_descriptor.o \
-               dom_sid.o \
-               access_check.o \
-               privilege.o \
-               sddl.o
 PUBLIC_DEPENDENCIES = NDR_MISC LIBNDR
 
+LIBSECURITY_OBJ_FILES = $(addprefix libcli/security/, \
+                                          security_token.o security_descriptor.o \
+                                          dom_sid.o access_check.o privilege.o sddl.o)
+
+
 [PYTHON::swig_security]
 SWIG_FILE = security.i
 PRIVATE_DEPENDENCIES = LIBSECURITY
+
+swig_security_OBJ_FILES = libcli/security/security_wrap.o
index ab079fefdebff2ccbe9ecd345431160036163e94..e95997db54980b4cb1f95a8ee60a8a43bc6c4d7c 100644 (file)
@@ -1,25 +1,10 @@
 [SUBSYSTEM::LIBCLI_SMB2]
 PRIVATE_PROTO_HEADER = smb2_proto.h
-OBJ_FILES = \
-       transport.o \
-       request.o \
-       negprot.o \
-       session.o \
-       tcon.o \
-       create.o \
-       close.o \
-       connect.o \
-       getinfo.o \
-       write.o \
-       read.o \
-       setinfo.o \
-       find.o \
-       ioctl.o \
-       logoff.o \
-       tdis.o \
-       flush.o \
-       lock.o \
-       notify.o \
-       cancel.o \
-       keepalive.o
 PUBLIC_DEPENDENCIES = LIBCLI_RAW LIBPACKET gensec
+
+LIBCLI_SMB2_OBJ_FILES = $(addprefix libcli/smb2/, \
+       transport.o request.o negprot.o session.o tcon.o \
+       create.o close.o connect.o getinfo.o write.o read.o \
+       setinfo.o find.o ioctl.o logoff.o tdis.o flush.o \
+       lock.o notify.o cancel.o keepalive.o)
+
index c35b7decc4929dca7bb733d3830d4f5cf8ca2444..f7ff07a7bc26cdd2adbb90180ac9947346579ffb 100644 (file)
@@ -1,30 +1,15 @@
 [SUBSYSTEM::LIBSAMBA-NET]
 PRIVATE_PROTO_HEADER = libnet_proto.h
-OBJ_FILES = \
-               libnet.o \
-               libnet_passwd.o \
-               libnet_time.o \
-               libnet_rpc.o \
-               libnet_join.o \
-               libnet_site.o \
-               libnet_become_dc.o \
-               libnet_unbecome_dc.o \
-               libnet_vampire.o \
-               libnet_samdump.o \
-               libnet_samdump_keytab.o \
-               libnet_samsync_ldb.o \
-               libnet_user.o \
-               libnet_group.o \
-               libnet_share.o \
-               libnet_lookup.o \
-               libnet_domain.o \
-               userinfo.o \
-               groupinfo.o \
-               userman.o \
-               groupman.o \
-               prereq_domain.o
 PUBLIC_DEPENDENCIES = CREDENTIALS dcerpc dcerpc_samr RPC_NDR_LSA RPC_NDR_SRVSVC RPC_NDR_DRSUAPI LIBCLI_COMPOSITE LIBCLI_RESOLVE LIBCLI_FINDDCS LIBCLI_CLDAP LIBCLI_FINDDCS gensec_schannel LIBCLI_AUTH LIBNDR SMBPASSWD
 
+LIBSAMBA-NET_OBJ_FILES = $(addprefix libnet/, \
+       libnet.o libnet_passwd.o libnet_time.o libnet_rpc.o \
+       libnet_join.o libnet_site.o libnet_become_dc.o libnet_unbecome_dc.o \
+       libnet_vampire.o libnet_samdump.o libnet_samdump_keytab.o \
+       libnet_samsync_ldb.o libnet_user.o libnet_group.o libnet_share.o \
+       libnet_lookup.o libnet_domain.o userinfo.o groupinfo.o userman.o \
+       groupman.o prereq_domain.o)
+
 PUBLIC_HEADERS += $(addprefix libnet/, libnet.h libnet_join.h libnet_lookup.h libnet_passwd.h \
                                 libnet_rpc.h libnet_share.h libnet_time.h \
                                 libnet_user.h libnet_site.h libnet_vampire.h \
@@ -34,3 +19,5 @@ PUBLIC_HEADERS += $(addprefix libnet/, libnet.h libnet_join.h libnet_lookup.h li
 [PYTHON::swig_net]
 PRIVATE_DEPENDENCIES = LIBSAMBA-NET
 SWIG_FILE = net.i
+
+swig_net_OBJ_FILES = libnet/net_wrap.o
index 7abc693960e6369055ff18424603b5ccb285c3ae..288ba60f137572e011b0ccd515b0129f328e2c3e 100644 (file)
@@ -5,13 +5,11 @@ VERSION = 0.0.1
 SO_VERSION = 0
 PC_FILE = ndr.pc
 PRIVATE_PROTO_HEADER = ndr/libndr_proto.h
-OBJ_FILES = \
-               ndr/ndr.o \
-               ndr/ndr_basic.o \
-               ndr/ndr_string.o \
-               ndr/uuid.o
 PUBLIC_DEPENDENCIES = LIBSAMBA-ERRORS LIBTALLOC LIBSAMBA-UTIL CHARSET EXT_NSL \
                                          LIBSAMBA-CONFIG
+
+LIBNDR_OBJ_FILES = $(addprefix librpc/ndr/, ndr.o ndr_basic.o ndr_string.o uuid.o)
+
 # End SUBSYSTEM LIBNDR
 ################################################
 
@@ -21,8 +19,6 @@ PUBLIC_HEADERS += librpc/ndr/libndr.h
 # Start BINARY ndrdump
 [BINARY::ndrdump]
 INSTALLDIR = BINDIR
-OBJ_FILES = \
-               tools/ndrdump.o
 PRIVATE_DEPENDENCIES = \
                LIBSAMBA-CONFIG \
                LIBSAMBA-UTIL \
@@ -34,258 +30,315 @@ PRIVATE_DEPENDENCIES = \
 # End BINARY ndrdump
 #################################
 
+ndrdump_OBJ_FILES = librpc/tools/ndrdump.o
+
 MANPAGES += librpc/tools/ndrdump.1
 
 ################################################
 # Start SUBSYSTEM NDR_COMPRESSION
 [SUBSYSTEM::NDR_COMPRESSION]
 PRIVATE_PROTO_HEADER = ndr/ndr_compression.h
-OBJ_FILES = \
-               ndr/ndr_compression.o
 PUBLIC_DEPENDENCIES = LIBCOMPRESSION LIBSAMBA-ERRORS LIBNDR
 # End SUBSYSTEM NDR_COMPRESSION
 ################################################
 
+NDR_COMPRESSION_OBJ_FILES = librpc/ndr/ndr_compression.o
+
 [SUBSYSTEM::NDR_SECURITY]
-OBJ_FILES = gen_ndr/ndr_security.o ndr/ndr_sec_helper.o 
 PUBLIC_DEPENDENCIES = NDR_MISC LIBSECURITY
 
+NDR_SECURITY_OBJ_FILES = librpc/gen_ndr/ndr_security.o librpc/ndr/ndr_sec_helper.o 
+
 PUBLIC_HEADERS += librpc/gen_ndr/security.h
 
 [SUBSYSTEM::NDR_AUDIOSRV]
-OBJ_FILES = gen_ndr/ndr_audiosrv.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_AUDIOSRV_OBJ_FILES = librpc/gen_ndr/ndr_audiosrv.o
+
 [SUBSYSTEM::NDR_DNSSERVER]
-OBJ_FILES = gen_ndr/ndr_dnsserver.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_DNSSERVER_OBJ_FILES = librpc/gen_ndr/ndr_dnsserver.o
+
 [SUBSYSTEM::NDR_WINSTATION]
-OBJ_FILES = gen_ndr/ndr_winstation.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_WINSTATION_OBJ_FILES = librpc/gen_ndr/ndr_winstation.o
+
 [SUBSYSTEM::NDR_ECHO]
-OBJ_FILES = gen_ndr/ndr_echo.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_ECHO_OBJ_FILES = librpc/gen_ndr/ndr_echo.o
+
 [SUBSYSTEM::NDR_IRPC]
-OBJ_FILES = gen_ndr/ndr_irpc.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_SECURITY NDR_NBT
 
+NDR_IRPC_OBJ_FILES = librpc/gen_ndr/ndr_irpc.o
+
 [SUBSYSTEM::NDR_DSBACKUP]
-OBJ_FILES = gen_ndr/ndr_dsbackup.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_DSBACKUP_OBJ_FILES = librpc/gen_ndr/ndr_dsbackup.o
+
 [SUBSYSTEM::NDR_EFS]
-OBJ_FILES = gen_ndr/ndr_efs.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_SECURITY
 
+NDR_EFS_OBJ_FILES = librpc/gen_ndr/ndr_efs.o
+
 [SUBSYSTEM::NDR_MISC]
-OBJ_FILES = gen_ndr/ndr_misc.o ndr/ndr_misc.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_MISC_OBJ_FILES = librpc/gen_ndr/ndr_misc.o librpc/ndr/ndr_misc.o
+
 PUBLIC_HEADERS += librpc/gen_ndr/misc.h librpc/gen_ndr/ndr_misc.h
 
 [SUBSYSTEM::NDR_ROT]
-OBJ_FILES = gen_ndr/ndr_rot.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_ORPC
 
+NDR_ROT_OBJ_FILES = librpc/gen_ndr/ndr_rot.o
+
 [SUBSYSTEM::NDR_LSA]
-OBJ_FILES = gen_ndr/ndr_lsa.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_SECURITY
 
+NDR_LSA_OBJ_FILES = librpc/gen_ndr/ndr_lsa.o
+
 PUBLIC_HEADERS += librpc/gen_ndr/lsa.h
 
 [SUBSYSTEM::NDR_DFS]
-OBJ_FILES = gen_ndr/ndr_dfs.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_MISC
 
+NDR_DFS_OBJ_FILES = librpc/gen_ndr/ndr_dfs.o
+
 [SUBSYSTEM::NDR_FRSRPC]
-OBJ_FILES = gen_ndr/ndr_frsrpc.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_FRSRPC_OBJ_FILES = librpc/gen_ndr/ndr_frsrpc.o
+
 [SUBSYSTEM::NDR_FRSAPI]
-OBJ_FILES = gen_ndr/ndr_frsapi.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_FRSAPI_OBJ_FILES = librpc/gen_ndr/ndr_frsapi.o
+
 [SUBSYSTEM::NDR_DRSUAPI]
-OBJ_FILES = gen_ndr/ndr_drsuapi.o ndr/ndr_drsuapi.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_COMPRESSION NDR_SECURITY NDR_SAMR ASN1_UTIL
 
+NDR_DRSUAPI_OBJ_FILES = librpc/gen_ndr/ndr_drsuapi.o librpc/ndr/ndr_drsuapi.o
+
 [SUBSYSTEM::NDR_DRSBLOBS]
-OBJ_FILES = gen_ndr/ndr_drsblobs.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_MISC NDR_DRSUAPI
 
+NDR_DRSBLOBS_OBJ_FILES = librpc/gen_ndr/ndr_drsblobs.o
+
 [SUBSYSTEM::NDR_SASL_HELPERS]
-OBJ_FILES = gen_ndr/ndr_sasl_helpers.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_SASL_HELPERS_OBJ_FILES = librpc/gen_ndr/ndr_sasl_helpers.o
+
 [SUBSYSTEM::NDR_POLICYAGENT]
-OBJ_FILES = gen_ndr/ndr_policyagent.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_POLICYAGENT_OBJ_FILES = librpc/gen_ndr/ndr_policyagent.o
+
 [SUBSYSTEM::NDR_UNIXINFO]
-OBJ_FILES = gen_ndr/ndr_unixinfo.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_SECURITY
 
+NDR_UNIXINFO_OBJ_FILES = librpc/gen_ndr/ndr_unixinfo.o
+
 [SUBSYSTEM::NDR_SAMR]
-OBJ_FILES = gen_ndr/ndr_samr.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_MISC NDR_LSA NDR_SECURITY
 
+NDR_SAMR_OBJ_FILES = librpc/gen_ndr/ndr_samr.o
+
 PUBLIC_HEADERS += $(addprefix librpc/, gen_ndr/samr.h gen_ndr/ndr_samr.h gen_ndr/ndr_samr_c.h)
 
 [SUBSYSTEM::NDR_NFS4ACL]
-OBJ_FILES = gen_ndr/ndr_nfs4acl.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_MISC NDR_SECURITY
 
+NDR_NFS4ACL_OBJ_FILES = librpc/gen_ndr/ndr_nfs4acl.o
+
 [SUBSYSTEM::NDR_SPOOLSS]
-OBJ_FILES = gen_ndr/ndr_spoolss.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_SPOOLSS_BUF NDR_SECURITY
 
+NDR_SPOOLSS_OBJ_FILES = librpc/gen_ndr/ndr_spoolss.o
+
 [SUBSYSTEM::NDR_SPOOLSS_BUF]
 PRIVATE_PROTO_HEADER = ndr/ndr_spoolss_buf.h
-OBJ_FILES = ndr/ndr_spoolss_buf.o
+
+NDR_SPOOLSS_BUF_OBJ_FILES = librpc/ndr/ndr_spoolss_buf.o
 
 [SUBSYSTEM::NDR_WKSSVC]
-OBJ_FILES = gen_ndr/ndr_wkssvc.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_SRVSVC NDR_MISC NDR_SECURITY
 
+NDR_WKSSVC_OBJ_FILES = librpc/gen_ndr/ndr_wkssvc.o
+
 [SUBSYSTEM::NDR_SRVSVC]
-OBJ_FILES = gen_ndr/ndr_srvsvc.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_SVCCTL NDR_SECURITY
 
+NDR_SRVSVC_OBJ_FILES = librpc/gen_ndr/ndr_srvsvc.o
+
 [SUBSYSTEM::NDR_SVCCTL]
-OBJ_FILES = gen_ndr/ndr_svcctl.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_MISC
 
+NDR_SVCCTL_OBJ_FILES = librpc/gen_ndr/ndr_svcctl.o
+
 PUBLIC_HEADERS += $(addprefix librpc/, gen_ndr/ndr_svcctl.h gen_ndr/svcctl.h)
 
 [SUBSYSTEM::NDR_ATSVC]
-OBJ_FILES = gen_ndr/ndr_atsvc.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_ATSVC_OBJ_FILES = librpc/gen_ndr/ndr_atsvc.o
+
 PUBLIC_HEADERS += $(addprefix librpc/, gen_ndr/atsvc.h gen_ndr/ndr_atsvc.h)
 
 [SUBSYSTEM::NDR_EVENTLOG]
-OBJ_FILES = gen_ndr/ndr_eventlog.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_LSA
 
+NDR_EVENTLOG_OBJ_FILES = librpc/gen_ndr/ndr_eventlog.o
+
 [SUBSYSTEM::NDR_EPMAPPER]
-OBJ_FILES = gen_ndr/ndr_epmapper.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_MISC
 
+NDR_EPMAPPER_OBJ_FILES = librpc/gen_ndr/ndr_epmapper.o
+
 [SUBSYSTEM::NDR_DBGIDL]
-OBJ_FILES = gen_ndr/ndr_dbgidl.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_DBGIDL_OBJ_FILES = librpc/gen_ndr/ndr_dbgidl.o
+
 [SUBSYSTEM::NDR_DSSETUP]
-OBJ_FILES = gen_ndr/ndr_dssetup.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_MISC
 
+NDR_DSSETUP_OBJ_FILES = librpc/gen_ndr/ndr_dssetup.o
+
 [SUBSYSTEM::NDR_MSGSVC]
-OBJ_FILES = gen_ndr/ndr_msgsvc.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_MSGSVC_OBJ_FILES = librpc/gen_ndr/ndr_msgsvc.o
+
 [SUBSYSTEM::NDR_WINS]
-OBJ_FILES = gen_ndr/ndr_wins.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_WINS_OBJ_FILES = librpc/gen_ndr/ndr_wins.o
+
 [SUBSYSTEM::NDR_WINREG]
-OBJ_FILES = gen_ndr/ndr_winreg.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_INITSHUTDOWN NDR_SECURITY NDR_MISC
 
+NDR_WINREG_OBJ_FILES = librpc/gen_ndr/ndr_winreg.o
+
 [SUBSYSTEM::NDR_INITSHUTDOWN]
-OBJ_FILES = gen_ndr/ndr_initshutdown.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_INITSHUTDOWN_OBJ_FILES = librpc/gen_ndr/ndr_initshutdown.o
+
 [SUBSYSTEM::NDR_MGMT]
-OBJ_FILES = gen_ndr/ndr_mgmt.o
 PUBLIC_DEPENDENCIES = LIBNDR 
 
+NDR_MGMT_OBJ_FILES = librpc/gen_ndr/ndr_mgmt.o
+
 [SUBSYSTEM::NDR_PROTECTED_STORAGE]
-OBJ_FILES = gen_ndr/ndr_protected_storage.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_PROTECTED_STORAGE_OBJ_FILES = librpc/gen_ndr/ndr_protected_storage.o
+
 [SUBSYSTEM::NDR_ORPC]
-OBJ_FILES = gen_ndr/ndr_orpc.o ndr/ndr_orpc.o 
 PUBLIC_DEPENDENCIES = LIBNDR 
 
+NDR_ORPC_OBJ_FILES = librpc/gen_ndr/ndr_orpc.o librpc/ndr/ndr_orpc.o 
+
 [SUBSYSTEM::NDR_OXIDRESOLVER]
-OBJ_FILES = gen_ndr/ndr_oxidresolver.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_ORPC NDR_MISC
 
+NDR_OXIDRESOLVER_OBJ_FILES = librpc/gen_ndr/ndr_oxidresolver.o
+
 [SUBSYSTEM::NDR_REMACT]
-OBJ_FILES = gen_ndr/ndr_remact.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_ORPC NDR_MISC
 
+NDR_REMACT_OBJ_FILES = librpc/gen_ndr/ndr_remact.o
+
 [SUBSYSTEM::NDR_WZCSVC]
-OBJ_FILES = gen_ndr/ndr_wzcsvc.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_WZCSVC_OBJ_FILES = librpc/gen_ndr/ndr_wzcsvc.o
+
 [SUBSYSTEM::NDR_BROWSER]
-OBJ_FILES = gen_ndr/ndr_browser.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_BROWSER_OBJ_FILES = librpc/gen_ndr/ndr_browser.o
+
 [SUBSYSTEM::NDR_W32TIME]
-OBJ_FILES = gen_ndr/ndr_w32time.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_W32TIME_OBJ_FILES = librpc/gen_ndr/ndr_w32time.o
+
 [SUBSYSTEM::NDR_SCERPC]
-OBJ_FILES = gen_ndr/ndr_scerpc.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_SCERPC_OBJ_FILES = librpc/gen_ndr/ndr_scerpc.o
+
 [SUBSYSTEM::NDR_NTSVCS]
-OBJ_FILES = gen_ndr/ndr_ntsvcs.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_NTSVCS_OBJ_FILES = librpc/gen_ndr/ndr_ntsvcs.o
+
 [SUBSYSTEM::NDR_NETLOGON]
-OBJ_FILES = gen_ndr/ndr_netlogon.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_SAMR NDR_LSA NDR_SECURITY
 
+NDR_NETLOGON_OBJ_FILES = librpc/gen_ndr/ndr_netlogon.o
+
 PUBLIC_HEADERS += $(addprefix librpc/, gen_ndr/netlogon.h)
 
 [SUBSYSTEM::NDR_TRKWKS]
-OBJ_FILES = gen_ndr/ndr_trkwks.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_TRKWKS_OBJ_FILES = librpc/gen_ndr/ndr_trkwks.o
+
 [SUBSYSTEM::NDR_KEYSVC]
-OBJ_FILES = gen_ndr/ndr_keysvc.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_KEYSVC_OBJ_FILES = librpc/gen_ndr/ndr_keysvc.o
+
 [SUBSYSTEM::NDR_KRB5PAC]
-OBJ_FILES = gen_ndr/ndr_krb5pac.o ndr/ndr_krb5pac.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_NETLOGON NDR_SECURITY
 
+NDR_KRB5PAC_OBJ_FILES = librpc/gen_ndr/ndr_krb5pac.o librpc/ndr/ndr_krb5pac.o
+
 [SUBSYSTEM::NDR_XATTR]
-OBJ_FILES = gen_ndr/ndr_xattr.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_SECURITY
 
+NDR_XATTR_OBJ_FILES = librpc/gen_ndr/ndr_xattr.o
+
 [SUBSYSTEM::NDR_OPENDB]
-OBJ_FILES = gen_ndr/ndr_opendb.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_OPENDB_OBJ_FILES = librpc/gen_ndr/ndr_opendb.o
+
 [SUBSYSTEM::NDR_NOTIFY]
-OBJ_FILES = gen_ndr/ndr_notify.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
+NDR_NOTIFY_OBJ_FILES = librpc/gen_ndr/ndr_notify.o
+
 [SUBSYSTEM::NDR_SCHANNEL]
-OBJ_FILES = gen_ndr/ndr_schannel.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_NBT
 
+NDR_SCHANNEL_OBJ_FILES = librpc/gen_ndr/ndr_schannel.o
+
 [SUBSYSTEM::NDR_NBT]
-OBJ_FILES = gen_ndr/ndr_nbt.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_MISC NDR_NBT_BUF NDR_SVCCTL NDR_SECURITY
 
+NDR_NBT_OBJ_FILES = librpc/gen_ndr/ndr_nbt.o
+
 PUBLIC_HEADERS += librpc/gen_ndr/nbt.h
 
 [SUBSYSTEM::NDR_WINSREPL]
-OBJ_FILES = gen_ndr/ndr_winsrepl.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_NBT
 
+NDR_WINSREPL_OBJ_FILES = librpc/gen_ndr/ndr_winsrepl.o
+
 [SUBSYSTEM::NDR_WINBIND]
-OBJ_FILES = gen_ndr/ndr_winbind.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_NETLOGON
 
+NDR_WINBIND_OBJ_FILES = librpc/gen_ndr/ndr_winbind.o
 PUBLIC_HEADERS += librpc/gen_ndr/winbind.h
 
 librpc/idl-deps:
@@ -302,7 +355,6 @@ librpc/gen_ndr/tables.c: $(IDL_NDR_PARSE_H_FILES)
        @mv librpc/gen_ndr/tables.x $@
 
 [SUBSYSTEM::NDR_TABLE]
-OBJ_FILES = ndr/ndr_table.o gen_ndr/tables.o
 PRIVATE_PROTO_HEADER = ndr/ndr_table.h
 PUBLIC_DEPENDENCIES = \
        NDR_AUDIOSRV NDR_ECHO NDR_DCERPC \
@@ -316,161 +368,200 @@ PUBLIC_DEPENDENCIES = \
        NDR_INITSHUTDOWN NDR_DNSSERVER NDR_WINSTATION NDR_IRPC NDR_OPENDB \
        NDR_SASL_HELPERS NDR_NOTIFY NDR_WINBIND NDR_FRSRPC NDR_FRSAPI NDR_NFS4ACL
 
+NDR_TABLE_OBJ_FILES = librpc/ndr/ndr_table.o librpc/gen_ndr/tables.o
+
 [SUBSYSTEM::RPC_NDR_ROT]
-OBJ_FILES = gen_ndr/ndr_rot_c.o
 PUBLIC_DEPENDENCIES = NDR_ROT dcerpc
 
+RPC_NDR_ROT_OBJ_FILES = librpc/gen_ndr/ndr_rot_c.o
+
 [SUBSYSTEM::RPC_NDR_AUDIOSRV]
-OBJ_FILES = gen_ndr/ndr_audiosrv_c.o
 PUBLIC_DEPENDENCIES = NDR_AUDIOSRV dcerpc
 
+RPC_NDR_AUDIOSRV_OBJ_FILES = librpc/gen_ndr/ndr_audiosrv_c.o
+
 [SUBSYSTEM::RPC_NDR_ECHO]
-OBJ_FILES = gen_ndr/ndr_echo_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_ECHO
 
+RPC_NDR_ECHO_OBJ_FILES = librpc/gen_ndr/ndr_echo_c.o
+
 [SUBSYSTEM::RPC_NDR_DSBACKUP]
-OBJ_FILES = gen_ndr/ndr_dsbackup_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_DSBACKUP
 
+RPC_NDR_DSBACKUP_OBJ_FILES = librpc/gen_ndr/ndr_dsbackup_c.o
+
 [SUBSYSTEM::RPC_NDR_EFS]
-OBJ_FILES = gen_ndr/ndr_efs_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_EFS
 
+RPC_NDR_EFS_OBJ_FILES = librpc/gen_ndr/ndr_efs_c.o
+
 [SUBSYSTEM::RPC_NDR_LSA]
-OBJ_FILES = gen_ndr/ndr_lsa_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_LSA
 
+RPC_NDR_LSA_OBJ_FILES = librpc/gen_ndr/ndr_lsa_c.o
+
 [SUBSYSTEM::RPC_NDR_DFS]
-OBJ_FILES = gen_ndr/ndr_dfs_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_DFS
 
+RPC_NDR_DFS_OBJ_FILES = librpc/gen_ndr/ndr_dfs_c.o
+
 [SUBSYSTEM::RPC_NDR_FRSAPI]
-OBJ_FILES = gen_ndr/ndr_frsapi_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_FRSAPI
 
+RPC_NDR_FRSAPI_OBJ_FILES = librpc/gen_ndr/ndr_frsapi_c.o
+
 [SUBSYSTEM::RPC_NDR_DRSUAPI]
-OBJ_FILES = gen_ndr/ndr_drsuapi_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_DRSUAPI
 
+RPC_NDR_DRSUAPI_OBJ_FILES = librpc/gen_ndr/ndr_drsuapi_c.o
+
 [SUBSYSTEM::RPC_NDR_POLICYAGENT]
-OBJ_FILES = gen_ndr/ndr_policyagent_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_POLICYAGENT
 
+RPC_NDR_POLICYAGENT_OBJ_FILES = librpc/gen_ndr/ndr_policyagent_c.o
+
 [SUBSYSTEM::RPC_NDR_UNIXINFO]
-OBJ_FILES = gen_ndr/ndr_unixinfo_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_UNIXINFO
 
+RPC_NDR_UNIXINFO_OBJ_FILES = librpc/gen_ndr/ndr_unixinfo_c.o
+
 [LIBRARY::dcerpc_samr]
-OBJ_FILES = gen_ndr/ndr_samr_c.o
 PC_FILE = dcerpc_samr.pc
 PUBLIC_DEPENDENCIES = dcerpc NDR_SAMR 
 VERSION = 0.0.1
 SO_VERSION = 0
 
+dcerpc_samr_OBJ_FILES = librpc/gen_ndr/ndr_samr_c.o
+
 [SUBSYSTEM::RPC_NDR_SPOOLSS]
-OBJ_FILES = gen_ndr/ndr_spoolss_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_SPOOLSS
 
+RPC_NDR_SPOOLSS_OBJ_FILES = librpc/gen_ndr/ndr_spoolss_c.o
+
 [SUBSYSTEM::RPC_NDR_WKSSVC]
-OBJ_FILES = gen_ndr/ndr_wkssvc_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_WKSSVC
 
+RPC_NDR_WKSSVC_OBJ_FILES = librpc/gen_ndr/ndr_wkssvc_c.o
+
 [SUBSYSTEM::RPC_NDR_SRVSVC]
-OBJ_FILES = gen_ndr/ndr_srvsvc_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_SRVSVC
 
+RPC_NDR_SRVSVC_OBJ_FILES = librpc/gen_ndr/ndr_srvsvc_c.o
+
 [SUBSYSTEM::RPC_NDR_SVCCTL]
-OBJ_FILES = gen_ndr/ndr_svcctl_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_SVCCTL
 
+RPC_NDR_SVCCTL_OBJ_FILES = librpc/gen_ndr/ndr_svcctl_c.o
+
 PUBLIC_HEADERS += librpc/gen_ndr/ndr_svcctl_c.h
 
 [SUBSYSTEM::dcerpc_atsvc]
-OBJ_FILES = gen_ndr/ndr_atsvc_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_ATSVC
 
+dcerpc_atsvc_OBJ_FILES = librpc/gen_ndr/ndr_atsvc_c.o
+
 PUBLIC_HEADERS += librpc/gen_ndr/ndr_atsvc_c.h
 
 [SUBSYSTEM::RPC_NDR_EVENTLOG]
-OBJ_FILES = gen_ndr/ndr_eventlog_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_EVENTLOG
 
+RPC_NDR_EVENTLOG_OBJ_FILES = librpc/gen_ndr/ndr_eventlog_c.o
+
 [SUBSYSTEM::RPC_NDR_EPMAPPER]
-OBJ_FILES = gen_ndr/ndr_epmapper_c.o
 PUBLIC_DEPENDENCIES = NDR_EPMAPPER 
 
+RPC_NDR_EPMAPPER_OBJ_FILES = librpc/gen_ndr/ndr_epmapper_c.o
+
 [SUBSYSTEM::RPC_NDR_DBGIDL]
-OBJ_FILES = gen_ndr/ndr_dbgidl_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_DBGIDL
 
+RPC_NDR_DBGIDL_OBJ_FILES = librpc/gen_ndr/ndr_dbgidl_c.o
+
 [SUBSYSTEM::RPC_NDR_DSSETUP]
-OBJ_FILES = gen_ndr/ndr_dssetup_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_DSSETUP
 
+RPC_NDR_DSSETUP_OBJ_FILES = librpc/gen_ndr/ndr_dssetup_c.o
+
 [SUBSYSTEM::RPC_NDR_MSGSVC]
-OBJ_FILES = gen_ndr/ndr_msgsvc_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_MSGSVC
 
+RPC_NDR_MSGSVC_OBJ_FILES = librpc/gen_ndr/ndr_msgsvc_c.o
+
 [SUBSYSTEM::RPC_NDR_WINS]
-OBJ_FILES = gen_ndr/ndr_wins_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_WINS
 
+RPC_NDR_WINS_OBJ_FILES = librpc/gen_ndr/ndr_wins_c.o
+
 [SUBSYSTEM::RPC_NDR_WINREG]
-OBJ_FILES = gen_ndr/ndr_winreg_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_WINREG
 
+RPC_NDR_WINREG_OBJ_FILES = librpc/gen_ndr/ndr_winreg_c.o
+
 [SUBSYSTEM::RPC_NDR_INITSHUTDOWN]
-OBJ_FILES = gen_ndr/ndr_initshutdown_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_INITSHUTDOWN
 
+RPC_NDR_INITSHUTDOWN_OBJ_FILES = librpc/gen_ndr/ndr_initshutdown_c.o
+
 [SUBSYSTEM::dcerpc_mgmt]
-OBJ_FILES = gen_ndr/ndr_mgmt_c.o
 PRIVATE_DEPENDENCIES = NDR_MGMT
 
+dcerpc_mgmt_OBJ_FILES = librpc/gen_ndr/ndr_mgmt_c.o
+
 [SUBSYSTEM::RPC_NDR_PROTECTED_STORAGE]
-OBJ_FILES = gen_ndr/ndr_protected_storage_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_PROTECTED_STORAGE
 
+RPC_NDR_PROTECTED_STORAGE_OBJ_FILES = librpc/gen_ndr/ndr_protected_storage_c.o
+
 [SUBSYSTEM::RPC_NDR_OXIDRESOLVER]
-OBJ_FILES = gen_ndr/ndr_oxidresolver_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_OXIDRESOLVER
 
+RPC_NDR_OXIDRESOLVER_OBJ_FILES = librpc/gen_ndr/ndr_oxidresolver_c.o
+
 [SUBSYSTEM::RPC_NDR_REMACT]
-OBJ_FILES = gen_ndr/ndr_remact_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_REMACT
 
+RPC_NDR_REMACT_OBJ_FILES = librpc/gen_ndr/ndr_remact_c.o
+
 [SUBSYSTEM::RPC_NDR_WZCSVC]
-OBJ_FILES = gen_ndr/ndr_wzcsvc_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_WZCSVC
 
+RPC_NDR_WZCSVC_OBJ_FILES = librpc/gen_ndr/ndr_wzcsvc_c.o
+
 [SUBSYSTEM::RPC_NDR_W32TIME]
-OBJ_FILES = gen_ndr/ndr_w32time_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_W32TIME
 
+RPC_NDR_W32TIME_OBJ_FILES = librpc/gen_ndr/ndr_w32time_c.o
+
 [SUBSYSTEM::RPC_NDR_SCERPC]
-OBJ_FILES = gen_ndr/ndr_scerpc_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_SCERPC
 
+RPC_NDR_SCERPC_OBJ_FILES = librpc/gen_ndr/ndr_scerpc_c.o
+
 [SUBSYSTEM::RPC_NDR_NTSVCS]
-OBJ_FILES = gen_ndr/ndr_ntsvcs_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_NTSVCS
 
+RPC_NDR_NTSVCS_OBJ_FILES = librpc/gen_ndr/ndr_ntsvcs_c.o
+
 [SUBSYSTEM::RPC_NDR_NETLOGON]
-OBJ_FILES = gen_ndr/ndr_netlogon_c.o
 PUBLIC_DEPENDENCIES = NDR_NETLOGON
 
+RPC_NDR_NETLOGON_OBJ_FILES = librpc/gen_ndr/ndr_netlogon_c.o
+
 [SUBSYSTEM::RPC_NDR_TRKWKS]
-OBJ_FILES = gen_ndr/ndr_trkwks_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_TRKWKS
 
+RPC_NDR_TRKWKS_OBJ_FILES = librpc/gen_ndr/ndr_trkwks_c.o
+
 [SUBSYSTEM::RPC_NDR_KEYSVC]
-OBJ_FILES = gen_ndr/ndr_keysvc_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_KEYSVC
 
+RPC_NDR_KEYSVC_OBJ_FILES = librpc/gen_ndr/ndr_keysvc_c.o
+
 [SUBSYSTEM::NDR_DCERPC]
-OBJ_FILES = gen_ndr/ndr_dcerpc.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_MISC
 
+NDR_DCERPC_OBJ_FILES = librpc/gen_ndr/ndr_dcerpc.o
+
 PUBLIC_HEADERS += $(addprefix librpc/, gen_ndr/dcerpc.h gen_ndr/ndr_dcerpc.h)
 
 ################################################
@@ -480,17 +571,6 @@ VERSION = 0.0.1
 SO_VERSION = 0
 PC_FILE = dcerpc.pc
 PRIVATE_PROTO_HEADER = rpc/dcerpc_proto.h
-OBJ_FILES = \
-               rpc/dcerpc.o \
-               rpc/dcerpc_auth.o \
-               rpc/dcerpc_schannel.o \
-               rpc/dcerpc_util.o \
-               rpc/dcerpc_error.o \
-               rpc/dcerpc_smb.o \
-               rpc/dcerpc_smb2.o \
-               rpc/dcerpc_sock.o \
-               rpc/dcerpc_connect.o \
-               rpc/dcerpc_secondary.o
 PRIVATE_DEPENDENCIES = \
                samba-socket LIBCLI_RESOLVE LIBCLI_SMB LIBCLI_SMB2 \
                LIBNDR NDR_DCERPC RPC_NDR_EPMAPPER \
@@ -501,6 +581,10 @@ PUBLIC_DEPENDENCIES = CREDENTIALS
 # End SUBSYSTEM dcerpc
 ################################################
 
+dcerpc_OBJ_FILES = $(addprefix librpc/rpc/, dcerpc.o dcerpc_auth.o dcerpc_schannel.o dcerpc_util.o \
+                                 dcerpc_error.o dcerpc_smb.o dcerpc_smb2.o dcerpc_sock.o dcerpc_connect.o dcerpc_secondary.o)
+
+
 PUBLIC_HEADERS += $(addprefix librpc/, rpc/dcerpc.h \
                        gen_ndr/mgmt.h gen_ndr/ndr_mgmt.h gen_ndr/ndr_mgmt_c.h \
                        gen_ndr/epmapper.h gen_ndr/ndr_epmapper.h gen_ndr/ndr_epmapper_c.h)
@@ -508,147 +592,177 @@ PUBLIC_HEADERS += $(addprefix librpc/, rpc/dcerpc.h \
 
 [MODULE::RPC_EJS_ECHO]
 INIT_FUNCTION = ejs_init_rpcecho
-OBJ_FILES = gen_ndr/ndr_echo_ejs.o
 SUBSYSTEM = smbcalls
 PRIVATE_DEPENDENCIES = dcerpc NDR_ECHO EJSRPC
 
+RPC_EJS_ECHO_OBJ_FILES = librpc/gen_ndr/ndr_echo_ejs.o
+
 [MODULE::RPC_EJS_MISC]
 INIT_FUNCTION = ejs_init_misc
-OBJ_FILES = gen_ndr/ndr_misc_ejs.o
 SUBSYSTEM = smbcalls
 PRIVATE_DEPENDENCIES = dcerpc NDR_MISC EJSRPC
 
+RPC_EJS_MISC_OBJ_FILES = librpc/gen_ndr/ndr_misc_ejs.o
+
 [MODULE::RPC_EJS_SAMR]
 INIT_FUNCTION = ejs_init_samr
-OBJ_FILES = gen_ndr/ndr_samr_ejs.o
 SUBSYSTEM = smbcalls
 PRIVATE_DEPENDENCIES = dcerpc NDR_SAMR EJSRPC RPC_EJS_LSA RPC_EJS_SECURITY RPC_EJS_MISC
 
+RPC_EJS_SAMR_OBJ_FILES = librpc/gen_ndr/ndr_samr_ejs.o
+
 [MODULE::RPC_EJS_SECURITY]
 INIT_FUNCTION = ejs_init_security
-OBJ_FILES = gen_ndr/ndr_security_ejs.o
 SUBSYSTEM = smbcalls
 PRIVATE_DEPENDENCIES = dcerpc NDR_SECURITY EJSRPC
 
+RPC_EJS_SECURITY_OBJ_FILES = librpc/gen_ndr/ndr_security_ejs.o
+
 [MODULE::RPC_EJS_LSA]
 INIT_FUNCTION = ejs_init_lsarpc
-OBJ_FILES = gen_ndr/ndr_lsa_ejs.o
 SUBSYSTEM = smbcalls
 PRIVATE_DEPENDENCIES = dcerpc NDR_LSA EJSRPC RPC_EJS_SECURITY RPC_EJS_MISC
 
+RPC_EJS_LSA_OBJ_FILES = librpc/gen_ndr/ndr_lsa_ejs.o
+
 [MODULE::RPC_EJS_DFS]
 INIT_FUNCTION = ejs_init_netdfs
-OBJ_FILES = gen_ndr/ndr_dfs_ejs.o
 SUBSYSTEM = smbcalls
 PRIVATE_DEPENDENCIES = dcerpc NDR_DFS EJSRPC
 
+RPC_EJS_DFS_OBJ_FILES = librpc/gen_ndr/ndr_dfs_ejs.o
+
 [MODULE::RPC_EJS_DRSUAPI]
 INIT_FUNCTION = ejs_init_drsuapi
-OBJ_FILES = gen_ndr/ndr_drsuapi_ejs.o
 SUBSYSTEM = smbcalls
 PRIVATE_DEPENDENCIES = dcerpc NDR_DRSUAPI EJSRPC RPC_EJS_MISC RPC_EJS_SAMR
 
+RPC_EJS_DRSUAPI_OBJ_FILES = librpc/gen_ndr/ndr_drsuapi_ejs.o
+
 [MODULE::RPC_EJS_SPOOLSS]
 INIT_FUNCTION = ejs_init_spoolss
-OBJ_FILES = gen_ndr/ndr_spoolss_ejs.o
 SUBSYSTEM = smbcalls
 ENABLE = NO
 PRIVATE_DEPENDENCIES = dcerpc NDR_SPOOLSS EJSRPC
 
+RPC_EJS_SPOOLSS_OBJ_FILES = librpc/gen_ndr/ndr_spoolss_ejs.o
+
 [MODULE::RPC_EJS_WKSSVC]
 INIT_FUNCTION = ejs_init_wkssvc
-OBJ_FILES = gen_ndr/ndr_wkssvc_ejs.o
 SUBSYSTEM = smbcalls
 PRIVATE_DEPENDENCIES = dcerpc NDR_WKSSVC EJSRPC RPC_EJS_SRVSVC RPC_EJS_MISC
 
+RPC_EJS_WKSSVC_OBJ_FILES = librpc/gen_ndr/ndr_wkssvc_ejs.o
+
 [MODULE::RPC_EJS_SRVSVC]
 INIT_FUNCTION = ejs_init_srvsvc
-OBJ_FILES = gen_ndr/ndr_srvsvc_ejs.o
 SUBSYSTEM = smbcalls
 PRIVATE_DEPENDENCIES = dcerpc NDR_SRVSVC EJSRPC RPC_EJS_MISC RPC_EJS_SVCCTL RPC_EJS_SECURITY
 
+RPC_EJS_SRVSVC_OBJ_FILES = librpc/gen_ndr/ndr_srvsvc_ejs.o
+
 [MODULE::RPC_EJS_EVENTLOG]
 INIT_FUNCTION = ejs_init_eventlog
-OBJ_FILES = gen_ndr/ndr_eventlog_ejs.o
 SUBSYSTEM = smbcalls
 PRIVATE_DEPENDENCIES = dcerpc NDR_EVENTLOG EJSRPC RPC_EJS_MISC
 
+RPC_EJS_EVENTLOG_OBJ_FILES = librpc/gen_ndr/ndr_eventlog_ejs.o
+
 [MODULE::RPC_EJS_WINREG]
 INIT_FUNCTION = ejs_init_winreg
-OBJ_FILES = gen_ndr/ndr_winreg_ejs.o
 SUBSYSTEM = smbcalls
 PRIVATE_DEPENDENCIES = dcerpc NDR_WINREG EJSRPC RPC_EJS_INITSHUTDOWN \
                                          RPC_EJS_MISC RPC_EJS_SECURITY
 
+RPC_EJS_WINREG_OBJ_FILES = librpc/gen_ndr/ndr_winreg_ejs.o
+
 [MODULE::RPC_EJS_INITSHUTDOWN]
 INIT_FUNCTION = ejs_init_initshutdown
-OBJ_FILES = gen_ndr/ndr_initshutdown_ejs.o
 SUBSYSTEM = smbcalls
 PRIVATE_DEPENDENCIES = dcerpc NDR_INITSHUTDOWN EJSRPC
 
+RPC_EJS_INITSHUTDOWN_OBJ_FILES = librpc/gen_ndr/ndr_initshutdown_ejs.o
+
 [MODULE::RPC_EJS_NETLOGON]
 INIT_FUNCTION = ejs_init_netlogon
-OBJ_FILES = gen_ndr/ndr_netlogon_ejs.o
 SUBSYSTEM = smbcalls
 PRIVATE_DEPENDENCIES = dcerpc NDR_NETLOGON EJSRPC RPC_EJS_SAMR RPC_EJS_SECURITY RPC_EJS_MISC
 
+RPC_EJS_NETLOGON_OBJ_FILES = librpc/gen_ndr/ndr_netlogon_ejs.o
+
 [MODULE::RPC_EJS_SVCCTL]
 INIT_FUNCTION = ejs_init_svcctl
-OBJ_FILES = gen_ndr/ndr_svcctl_ejs.o
 SUBSYSTEM = smbcalls
 PRIVATE_DEPENDENCIES = dcerpc NDR_SVCCTL EJSRPC RPC_EJS_MISC
 
+RPC_EJS_SVCCTL_OBJ_FILES = librpc/gen_ndr/ndr_svcctl_ejs.o
+
 [MODULE::RPC_EJS_IRPC]
 INIT_FUNCTION = ejs_init_irpc
-OBJ_FILES = gen_ndr/ndr_irpc_ejs.o
 SUBSYSTEM = smbcalls
 PRIVATE_DEPENDENCIES = dcerpc NDR_IRPC EJSRPC
 
+RPC_EJS_IRPC_OBJ_FILES = librpc/gen_ndr/ndr_irpc_ejs.o
+
 [PYTHON::swig_dcerpc]
 SWIG_FILE = rpc/dcerpc.i
 PUBLIC_DEPENDENCIES = LIBCLI_SMB NDR_MISC LIBSAMBA-UTIL LIBSAMBA-CONFIG dcerpc_samr RPC_NDR_LSA DYNCONFIG
 
+swig_dcerpc_OBJ_FILES = librpc/rpc/dcerpc_wrap.o
+
 [PYTHON::python_echo]
-OBJ_FILES = gen_ndr/py_echo.o
 PRIVATE_DEPENDENCIES = RPC_NDR_ECHO
 
+python_echo_OBJ_FILES = librpc/gen_ndr/py_echo.o
+
 [PYTHON::python_winreg]
-OBJ_FILES = gen_ndr/py_winreg.o
 PRIVATE_DEPENDENCIES = RPC_NDR_WINREG python_misc
 
+python_winreg_OBJ_FILES = librpc/gen_ndr/py_winreg.o
+
 [PYTHON::python_dcerpc_misc]
-OBJ_FILES = gen_ndr/py_misc.o
+
+python_dcerpc_misc_OBJ_FILES = librpc/gen_ndr/py_misc.o
 
 [PYTHON::python_initshutdown]
-OBJ_FILES = gen_ndr/py_initshutdown.o
 PRIVATE_DEPENDENCIES = RPC_NDR_INITSHUTDOWN
 
+python_initshutdown_OBJ_FILES = librpc/gen_ndr/py_initshutdown.o
+
 [PYTHON::python_epmapper]
-OBJ_FILES = gen_ndr/py_epmapper.o
+
+python_epmapper_OBJ_FILES = librpc/gen_ndr/py_epmapper.o
 
 [PYTHON::python_mgmt]
-OBJ_FILES = gen_ndr/py_mgmt.o
 PRIVATE_DEPENDENCIES = dcerpc_mgmt
 
+python_mgmt_OBJ_FILES = librpc/gen_ndr/py_mgmt.o
+
 [PYTHON::python_atsvc]
-OBJ_FILES = gen_ndr/py_atsvc.o
 PRIVATE_DEPENDENCIES = dcerpc_atsvc
 
+python_atsvc_OBJ_FILES = librpc/gen_ndr/py_atsvc.o
+
 [PYTHON::python_samr]
-OBJ_FILES = gen_ndr/py_samr.o
 PRIVATE_DEPENDENCIES = dcerpc_samr
 
+python_samr_OBJ_FILES = librpc/gen_ndr/py_samr.o
+
 [PYTHON::python_svcctl]
-OBJ_FILES = gen_ndr/py_svcctl.o
 PRIVATE_DEPENDENCIES = RPC_NDR_SVCCTL
 
+python_svcctl_OBJ_FILES = librpc/gen_ndr/py_svcctl.o
+
 [PYTHON::python_lsa]
-OBJ_FILES = gen_ndr/py_lsa.o
 PRIVATE_DEPENDENCIES = RPC_NDR_LSA
 
+python_lsa_OBJ_FILES = librpc/gen_ndr/py_lsa.o
+
 [PYTHON::python_wkssvc]
-OBJ_FILES = gen_ndr/py_wkssvc.o
 PRIVATE_DEPENDENCIES = RPC_NDR_WKSSVC
 
+python_wkssvc_OBJ_FILES = librpc/gen_ndr/py_wkssvc.o
+
 [PYTHON::python_dcerpc_security]
-OBJ_FILES = gen_ndr/py_security.o
+
+python_dcerpc_security_OBJ_FILES = librpc/gen_ndr/py_security.o
index 928504476885999bce7e9b6c60c1ffcdc364aa24..384f8ebf1213747ded7c28de009abcee12721c32 100644 (file)
@@ -3,76 +3,71 @@
 #######################
 # Start SUBSYSTEM WINSDB
 [SUBSYSTEM::WINSDB]
-OBJ_FILES = \
-               wins/winsdb.o \
-               wins/wins_hook.o
 PRIVATE_PROTO_HEADER = wins/winsdb_proto.h
 PUBLIC_DEPENDENCIES = \
                LIBLDB
 # End SUBSYSTEM WINSDB
 #######################
 
+WINSDB_OBJ_FILES = $(addprefix nbt_server/wins/, winsdb.o wins_hook.o)
+
 #######################
 # Start MODULE ldb_wins_ldb
 [MODULE::ldb_wins_ldb]
 SUBSYSTEM = LIBLDB
 OUTPUT_TYPE = SHARED_LIBRARY
-INIT_FUNCTION = &ldb_wins_ldb_module_ops
-OBJ_FILES = \
-               wins/wins_ldb.o
+INIT_FUNCTION = LDB_MODULE(wins_ldb)
 PRIVATE_DEPENDENCIES = \
                LIBNETIF LIBSAMBA-CONFIG LIBSAMBA-UTIL
 # End MODULE ldb_wins_ldb
 #######################
 
+ldb_wins_ldb_OBJ_FILES = nbt_server/wins/wins_ldb.o
+
 #######################
 # Start SUBSYSTEM NBTD_WINS
 [SUBSYSTEM::NBTD_WINS]
-OBJ_FILES = \
-               wins/winsserver.o \
-               wins/winsclient.o \
-               wins/winswack.o \
-               wins/wins_dns_proxy.o
 PRIVATE_PROTO_HEADER = wins/winsserver_proto.h
 PRIVATE_DEPENDENCIES = \
                LIBCLI_NBT WINSDB
 # End SUBSYSTEM NBTD_WINS
 #######################
 
+NBTD_WINS_OBJ_FILES = $(addprefix nbt_server/wins/, winsserver.o winsclient.o winswack.o wins_dns_proxy.o)
+
 #######################
 # Start SUBSYSTEM NBTD_DGRAM
 [SUBSYSTEM::NBTD_DGRAM]
 PRIVATE_PROTO_HEADER = dgram/proto.h
-OBJ_FILES = \
-               dgram/request.o \
-               dgram/netlogon.o \
-               dgram/ntlogon.o \
-               dgram/browse.o
 PRIVATE_DEPENDENCIES = \
                LIBCLI_DGRAM
 # End SUBSYSTEM NBTD_DGRAM
 #######################
 
+NBTD_DGRAM_OBJ_FILES = $(addprefix nbt_server/dgram/, request.o netlogon.o ntlogon.o browse.o)
+
 #######################
 # Start SUBSYSTEM NBTD
 [SUBSYSTEM::NBT_SERVER]
-OBJ_FILES = \
+PRIVATE_PROTO_HEADER = nbt_server_proto.h
+PRIVATE_DEPENDENCIES = \
+               LIBCLI_NBT NBTD_WINS NBTD_DGRAM 
+# End SUBSYSTEM NBTD
+#######################
+
+NBT_SERVER_OBJ_FILES = $(addprefix nbt_server/, \
                interfaces.o \
                register.o \
                query.o \
                nodestatus.o \
                defense.o \
                packet.o \
-               irpc.o
-PRIVATE_PROTO_HEADER = nbt_server_proto.h
-PRIVATE_DEPENDENCIES = \
-               LIBCLI_NBT NBTD_WINS NBTD_DGRAM 
-# End SUBSYSTEM NBTD
-#######################
+               irpc.o)
 
 [MODULE::service_nbtd]
 INIT_FUNCTION = server_service_nbtd_init
 SUBSYSTEM = service
-OBJ_FILES = \
-               nbt_server.o
 PRIVATE_DEPENDENCIES = NBT_SERVER process_model
+
+service_nbtd_OBJ_FILES = \
+               nbt_server/nbt_server.o
index e53e0642721f12db71cb47604b31fea85009339f..8c1eaa72eb6925233405c15651192a34df42cfd4 100644 (file)
@@ -1,13 +1,12 @@
 [SUBSYSTEM::LIBWINBIND-CLIENT]
-OBJ_FILES = wb_common.o
 PRIVATE_DEPENDENCIES = SOCKET_WRAPPER
 
+LIBWINBIND-CLIENT_OBJ_FILES = nsswitch/wb_common.o
+
 #################################
 # Start BINARY nsstest
 [BINARY::nsstest]
 INSTALLDIR = BINDIR
-OBJ_FILES = \
-               nsstest.o
 PRIVATE_DEPENDENCIES = \
                LIBSAMBA-UTIL \
                LIBREPLACE_EXT \
@@ -15,12 +14,12 @@ PRIVATE_DEPENDENCIES = \
 # End BINARY nsstest
 #################################
 
+nsstest_OBJ_FILES = nsswitch/nsstest.o
+
 #################################
 # Start BINARY wbinfo
 [BINARY::wbinfo]
 INSTALLDIR = BINDIR
-OBJ_FILES = \
-               wbinfo.o
 PRIVATE_DEPENDENCIES = \
                LIBSAMBA-UTIL \
                LIBREPLACE_EXT \
@@ -30,3 +29,6 @@ PRIVATE_DEPENDENCIES = \
                LIBWINBIND-CLIENT
 # End BINARY nsstest
 #################################
+
+wbinfo_OBJ_FILES = \
+               nsswitch/wbinfo.o
index 4c1f46ff1707da5dff3dff4f75e4f11a241ea27a..dda4c2944476e1a672c5eba808a705423adeeb7a 100644 (file)
@@ -5,21 +5,22 @@
 [MODULE::ntptr_simple_ldb]
 INIT_FUNCTION = ntptr_simple_ldb_init
 SUBSYSTEM = ntptr
-OBJ_FILES = \
-               simple_ldb/ntptr_simple_ldb.o
 PRIVATE_DEPENDENCIES = \
                LIBLDB NDR_SPOOLSS DCERPC_COMMON
 # End MODULE ntptr_simple_ldb
 ################################################
 
+ntptr_simple_ldb_OBJ_FILES = ntptr/simple_ldb/ntptr_simple_ldb.o
+
 ################################################
 # Start SUBSYSTEM ntptr
 [SUBSYSTEM::ntptr]
 PRIVATE_PROTO_HEADER = ntptr_proto.h
-OBJ_FILES = \
-               ntptr_base.o \
-               ntptr_interface.o
 PUBLIC_DEPENDENCIES = DCERPC_COMMON
 #
 # End SUBSYSTEM ntptr
 ################################################
+
+ntptr_OBJ_FILES = \
+               ntptr/ntptr_base.o \
+               ntptr/ntptr_interface.o
index 2fc0942ed40400a3acde7c0aceea7e520b7b4a7d..356f6465c3bd0f594e2e24a484f259a2fd95b765 100644 (file)
@@ -2,14 +2,10 @@
 # Start LIBRARY ntvfs_common
 [SUBSYSTEM::ntvfs_common]
 PRIVATE_PROTO_HEADER = proto.h
-OBJ_FILES = \
-               init.o \
-               brlock.o \
-               brlock_tdb.o \
-               opendb.o \
-               opendb_tdb.o \
-               notify.o
 PUBLIC_DEPENDENCIES = NDR_OPENDB NDR_NOTIFY sys_notify share LIBDBWRAP
 PRIVATE_DEPENDENCIES = brlock_ctdb opendb_ctdb
 # End LIBRARY ntvfs_common
 ################################################
+
+ntvfs_common_OBJ_FILES = $(addprefix ntvfs/common/, init.o brlock.o brlock_tdb.o opendb.o opendb_tdb.o notify.o)
+
index 0f8e88eaa6b6a6a645a77e63aa5d422dc5345abe..436fe11522357068de38bbc335313ede97090a93 100644 (file)
@@ -9,25 +9,24 @@ mkinclude sysdep/config.mk
 [MODULE::ntvfs_cifs]
 INIT_FUNCTION = ntvfs_cifs_init 
 SUBSYSTEM = ntvfs
-OBJ_FILES = \
-               cifs/vfs_cifs.o
 PRIVATE_DEPENDENCIES = \
                LIBCLI_SMB LIBCLI_RAW
 # End MODULE ntvfs_cifs
 ################################################
 
+ntvfs_cifs_OBJ_FILES = ntvfs/cifs/vfs_cifs.o
+
 ################################################
 # Start MODULE ntvfs_simple
 [MODULE::ntvfs_simple]
 INIT_FUNCTION = ntvfs_simple_init 
 SUBSYSTEM = ntvfs 
 PRIVATE_PROTO_HEADER = simple/proto.h
-OBJ_FILES = \
-               simple/vfs_simple.o \
-               simple/svfs_util.o
 # End MODULE ntvfs_simple
 ################################################
 
+ntvfs_simple_OBJ_FILES = $(addprefix ntvfs/simple/, vfs_simple.o svfs_util.o)
+
 ################################################
 # Start MODULE ntvfs_cifsposix
 [MODULE::ntvfs_cifsposix]
@@ -35,57 +34,50 @@ OBJ_FILES = \
 INIT_FUNCTION = ntvfs_cifs_posix_init
 SUBSYSTEM = ntvfs
 PRIVATE_PROTO_HEADER = cifs_posix_cli/proto.h
-OBJ_FILES = \
-                cifs_posix_cli/vfs_cifs_posix.o \
-                cifs_posix_cli/svfs_util.o
 # End MODULE ntvfs_cifsposix
 ################################################
 
+ntvfs_cifsposix_OBJ_FILES = \
+       $(addprefix ntvfs/cifs_posix_cli/, vfs_cifs_posix.o svfs_util.o)
+
 ################################################
 # Start MODULE ntvfs_print
 [MODULE::ntvfs_print]
 INIT_FUNCTION = ntvfs_print_init 
 SUBSYSTEM = ntvfs 
-OBJ_FILES = \
-               print/vfs_print.o
 # End MODULE ntvfs_print
 ################################################
 
+ntvfs_print_OBJ_FILES = ntvfs/print/vfs_print.o
+
 ################################################
 # Start MODULE ntvfs_ipc
 [MODULE::ntvfs_ipc]
 SUBSYSTEM = ntvfs
 INIT_FUNCTION = ntvfs_ipc_init 
 PRIVATE_PROTO_HEADER = ipc/proto.h
-OBJ_FILES = \
-               ipc/vfs_ipc.o \
-               ipc/ipc_rap.o \
-               ipc/rap_server.o
 PRIVATE_DEPENDENCIES = dcerpc_server DCERPC_COMMON
 # End MODULE ntvfs_ipc
 ################################################
 
+ntvfs_ipc_OBJ_FILES = $(addprefix ntvfs/ipc/, vfs_ipc.o ipc_rap.o rap_server.o)
 
 ################################################
 # Start MODULE ntvfs_nbench
 [MODULE::ntvfs_nbench]
 SUBSYSTEM = ntvfs
 INIT_FUNCTION = ntvfs_nbench_init 
-OBJ_FILES = \
-               nbench/vfs_nbench.o
 # End MODULE ntvfs_nbench
 ################################################
 
+ntvfs_nbench_OBJ_FILES = ntvfs/nbench/vfs_nbench.o
 
 ################################################
 # Start SUBSYSTEM NTVFS
 [SUBSYSTEM::ntvfs]
 PRIVATE_PROTO_HEADER = ntvfs_proto.h
-OBJ_FILES = \
-               ntvfs_base.o \
-               ntvfs_generic.o \
-               ntvfs_interface.o \
-               ntvfs_util.o
+
+ntvfs_OBJ_FILES = $(addprefix ntvfs/, ntvfs_base.o ntvfs_generic.o ntvfs_interface.o ntvfs_util.o)
 
 PUBLIC_HEADERS += ntvfs/ntvfs.h
 #
index 88048c2af7baf842b73afb0cf10f478c561f5cf9..249f1ba3d87380ec678a8d1cd079f2a3f19330e9 100644 (file)
@@ -3,30 +3,31 @@
 [MODULE::pvfs_acl_xattr]
 INIT_FUNCTION = pvfs_acl_xattr_init 
 SUBSYSTEM = ntvfs
-OBJ_FILES = \
-               pvfs_acl_xattr.o
 PRIVATE_DEPENDENCIES = NDR_XATTR ntvfs_posix
 # End MODULE pvfs_acl_xattr
 ################################################
 
+pvfs_acl_xattr_OBJ_FILES = ntvfs/posix/pvfs_acl_xattr.o
+
 ################################################
 # Start MODULE pvfs_acl_nfs4
 [MODULE::pvfs_acl_nfs4]
 INIT_FUNCTION = pvfs_acl_nfs4_init 
 SUBSYSTEM = ntvfs
-OBJ_FILES = \
-               pvfs_acl_nfs4.o
 PRIVATE_DEPENDENCIES = NDR_NFS4ACL SAMDB ntvfs_posix
 # End MODULE pvfs_acl_nfs4
 ################################################
 
+pvfs_acl_nfs4_OBJ_FILES = ntvfs/posix/pvfs_acl_nfs4.o
+
 ################################################
 [MODULE::pvfs_aio]
 SUBSYSTEM = ntvfs
-OBJ_FILES = pvfs_aio.o
 PRIVATE_DEPENDENCIES = LIBAIO_LINUX
 ################################################
 
+pvfs_aio_OBJ_FILES = ntvfs/posix/pvfs_aio.o
+
 ################################################
 # Start MODULE ntvfs_posix
 [MODULE::ntvfs_posix]
@@ -34,7 +35,12 @@ SUBSYSTEM = ntvfs
 OUTPUT_TYPE = MERGED_OBJ
 INIT_FUNCTION = ntvfs_posix_init 
 PRIVATE_PROTO_HEADER = vfs_posix_proto.h
-OBJ_FILES = \
+#PRIVATE_DEPENDENCIES = pvfs_acl_xattr pvfs_acl_nfs4
+PRIVATE_DEPENDENCIES = NDR_XATTR WRAP_XATTR BLKID ntvfs_common MESSAGING pvfs_aio
+# End MODULE ntvfs_posix
+################################################
+
+ntvfs_posix_OBJ_FILES = $(addprefix ntvfs/posix/, \
                vfs_posix.o \
                pvfs_util.o \
                pvfs_search.o \
@@ -62,8 +68,5 @@ OBJ_FILES = \
                pvfs_acl.o \
                pvfs_notify.o \
                xattr_system.o \
-               xattr_tdb.o
-#PRIVATE_DEPENDENCIES = pvfs_acl_xattr pvfs_acl_nfs4
-PRIVATE_DEPENDENCIES = NDR_XATTR WRAP_XATTR BLKID ntvfs_common MESSAGING pvfs_aio
-# End MODULE ntvfs_posix
-################################################
+               xattr_tdb.o)
+
index dee198c9dab9b9a7977bb19c7e193762136ebc9c..6cd5d88aca22e589581344b689d20df93190efed 100644 (file)
@@ -3,16 +3,15 @@
 [MODULE::sys_notify_inotify]
 SUBSYSTEM = sys_notify
 INIT_FUNCTION = sys_notify_inotify_init
-OBJ_FILES = \
-               inotify.o
 # End MODULE sys_notify_inotify
 ################################################
 
+sys_notify_inotify_OBJ_FILES = ntvfs/sysdep/inotify.o
+
 ################################################
 # Start SUBSYSTEM sys_notify
 [SUBSYSTEM::sys_notify]
-OBJ_FILES = \
-               sys_notify.o
-PUBLIC_DEPENDENCIES = 
 # End SUBSYSTEM sys_notify
 ################################################
+
+sys_notify_OBJ_FILES = ntvfs/sysdep/sys_notify.o
index 91976c6811bfdd48faa235d8ee94b25270f81f52..968e56bde467c4ac0e052b5a7b150193ee15dbd3 100644 (file)
@@ -3,8 +3,8 @@
 [MODULE::ntvfs_unixuid]
 INIT_FUNCTION = ntvfs_unixuid_init
 SUBSYSTEM = ntvfs
-OBJ_FILES = \
-               vfs_unixuid.o
 PRIVATE_DEPENDENCIES = SAMDB NSS_WRAPPER
 # End MODULE ntvfs_unixuid
 ################################################
+
+ntvfs_unixuid_OBJ_FILES = ntvfs/unixuid/vfs_unixuid.o
index f43c9d8a1bdb5dea058fdb5bf3151ac01aa00c32..4b5af9b6cbde1b006d8239771b5b8d8d8b733fe0 100644 (file)
@@ -1,24 +1,26 @@
 [SUBSYSTEM::LIBSAMBA-CONFIG]
-OBJ_FILES = loadparm.o \
-                       params.o \
-                       generic.o \
-                       util.o \
-                       ../lib/version.o
 PUBLIC_DEPENDENCIES = LIBSAMBA-UTIL 
 PRIVATE_DEPENDENCIES = DYNCONFIG LIBREPLACE_EXT CHARSET
 PRIVATE_PROTO_HEADER = proto.h
 
+LIBSAMBA-CONFIG_OBJ_FILES = param/loadparm.o \
+                       param/params.o \
+                       param/generic.o \
+                       param/util.o \
+                       lib/version.o
+
 PUBLIC_HEADERS += param/param.h
 
 #################################
 # Start SUBSYSTEM share
 [SUBSYSTEM::share]
 PRIVATE_PROTO_HEADER = share_proto.h
-OBJ_FILES = share.o
 PRIVATE_DEPENDENCIES = LIBSAMBA-UTIL
 # End SUBSYSTEM share
 #################################
 
+share_OBJ_FILES = param/share.o
+
 PUBLIC_HEADERS += param/share.h
 
 ################################################
@@ -26,25 +28,30 @@ PUBLIC_HEADERS += param/share.h
 [MODULE::share_classic]
 SUBSYSTEM = share
 INIT_FUNCTION = share_classic_init
-OBJ_FILES = share_classic.o 
 PRIVATE_DEPENDENCIES = LIBSAMBA-UTIL
 # End MODULE share_classic
 ################################################
 
+share_classic_OBJ_FILES = param/share_classic.o 
+
 ################################################
 # Start MODULE share_ldb
 [MODULE::share_ldb]
 SUBSYSTEM = share
 INIT_FUNCTION = share_ldb_init
-OBJ_FILES = share_ldb.o 
 PRIVATE_DEPENDENCIES = LIBLDB LDB_WRAP
 # End MODULE share_ldb
 ################################################
 
+share_ldb_OBJ_FILES = param/share_ldb.o 
+
 [SUBSYSTEM::SECRETS]
-OBJ_FILES = secrets.o
 PRIVATE_DEPENDENCIES = LIBLDB TDB_WRAP UTIL_TDB NDR_SECURITY
 
+SECRETS_OBJ_FILES = param/secrets.o
+
 [PYTHON::param]
 SWIG_FILE = param.i
 PRIVATE_DEPENDENCIES = LIBSAMBA-CONFIG
+
+param_OBJ_FILES = param/param_wrap.o
index c2cf0e355ae446f3220f0795bba714c5a8d164bc..5d7a5f23a9470009f16b61bbc312d32d1ffdbf80 100644 (file)
@@ -4,13 +4,12 @@
 # Start SUBSYSTEM DCERPC_COMMON
 [SUBSYSTEM::DCERPC_COMMON]
 PRIVATE_PROTO_HEADER = common/proto.h
-OBJ_FILES = \
-               common/server_info.o \
-               common/share_info.o
 #
 # End SUBSYSTEM DCERPC_COMMON
 ################################################
 
+DCERPC_COMMON_OBJ_FILES = $(addprefix rpc_server/common/, server_info.o share_info.o)
+
 PUBLIC_HEADERS += rpc_server/common/common.h
 
 ################################################
@@ -18,68 +17,65 @@ PUBLIC_HEADERS += rpc_server/common/common.h
 [MODULE::dcerpc_rpcecho]
 INIT_FUNCTION = dcerpc_server_rpcecho_init
 SUBSYSTEM = dcerpc_server
-OBJ_FILES = \
-               echo/rpc_echo.o
 PRIVATE_DEPENDENCIES = NDR_ECHO 
 # End MODULE dcerpc_rpcecho
 ################################################
 
+dcerpc_rpcecho_OBJ_FILES = rpc_server/echo/rpc_echo.o
+
 ################################################
 # Start MODULE dcerpc_epmapper
 [MODULE::dcerpc_epmapper]
 INIT_FUNCTION = dcerpc_server_epmapper_init
 SUBSYSTEM = dcerpc_server
-OBJ_FILES = \
-               epmapper/rpc_epmapper.o
 PRIVATE_DEPENDENCIES = NDR_EPMAPPER
 # End MODULE dcerpc_epmapper
 ################################################
 
+dcerpc_epmapper_OBJ_FILES = rpc_server/epmapper/rpc_epmapper.o
+
 ################################################
 # Start MODULE dcerpc_remote
 [MODULE::dcerpc_remote]
 INIT_FUNCTION = dcerpc_server_remote_init
 SUBSYSTEM = dcerpc_server
-OBJ_FILES = \
-               remote/dcesrv_remote.o
 PRIVATE_DEPENDENCIES = \
                LIBCLI_SMB NDR_TABLE
 # End MODULE dcerpc_remote
 ################################################
 
+dcerpc_remote_OBJ_FILES = rpc_server/remote/dcesrv_remote.o
+
 ################################################
 # Start MODULE dcerpc_srvsvc
 [MODULE::dcerpc_srvsvc]
 INIT_FUNCTION = dcerpc_server_srvsvc_init
 PRIVATE_PROTO_HEADER = srvsvc/proto.h
 SUBSYSTEM = dcerpc_server
-OBJ_FILES = \
-               srvsvc/dcesrv_srvsvc.o \
-               srvsvc/srvsvc_ntvfs.o
 PRIVATE_DEPENDENCIES = \
                DCERPC_COMMON NDR_SRVSVC share
 # End MODULE dcerpc_srvsvc
 ################################################
 
+dcerpc_srvsvc_OBJ_FILES = $(addprefix rpc_server/srvsvc/, dcesrv_srvsvc.o srvsvc_ntvfs.o)
+
 ################################################
 # Start MODULE dcerpc_wkssvc
 [MODULE::dcerpc_wkssvc]
 INIT_FUNCTION = dcerpc_server_wkssvc_init
 SUBSYSTEM = dcerpc_server
-OBJ_FILES = \
-               wkssvc/dcesrv_wkssvc.o
 PRIVATE_DEPENDENCIES = \
                DCERPC_COMMON NDR_WKSSVC
 # End MODULE dcerpc_wkssvc
 ################################################
 
+dcerpc_wkssvc_OBJ_FILES = rpc_server/wkssvc/dcesrv_wkssvc.o
+
 ################################################
 # Start MODULE dcerpc_unixinfo
 [MODULE::dcerpc_unixinfo]
 INIT_FUNCTION = dcerpc_server_unixinfo_init
 SUBSYSTEM = dcerpc_server
-OBJ_FILES = \
-               unixinfo/dcesrv_unixinfo.o
 PRIVATE_DEPENDENCIES = \
                DCERPC_COMMON \
                SAMDB \
@@ -88,15 +84,14 @@ PRIVATE_DEPENDENCIES = \
 # End MODULE dcerpc_unixinfo
 ################################################
 
+dcerpc_unixinfo_OBJ_FILES = rpc_server/unixinfo/dcesrv_unixinfo.o
+
 ################################################
 # Start MODULE dcesrv_samr
 [MODULE::dcesrv_samr]
 INIT_FUNCTION = dcerpc_server_samr_init
 PRIVATE_PROTO_HEADER = samr/proto.h
 SUBSYSTEM = dcerpc_server
-OBJ_FILES = \
-               samr/dcesrv_samr.o \
-               samr/samr_password.o
 PRIVATE_DEPENDENCIES = \
                SAMDB \
                DCERPC_COMMON \
@@ -104,26 +99,26 @@ PRIVATE_DEPENDENCIES = \
 # End MODULE dcesrv_samr
 ################################################
 
+dcesrv_samr_OBJ_FILES = $(addprefix rpc_server/samr/, dcesrv_samr.o samr_password.o)
+
 ################################################
 # Start MODULE dcerpc_winreg
 [MODULE::dcerpc_winreg]
 INIT_FUNCTION = dcerpc_server_winreg_init
 SUBSYSTEM = dcerpc_server
 OUTPUT_TYPE = MERGED_OBJ
-OBJ_FILES = \
-               winreg/rpc_winreg.o
 PRIVATE_DEPENDENCIES = \
                registry NDR_WINREG
 # End MODULE dcerpc_winreg
 ################################################
 
+dcerpc_winreg_OBJ_FILES = rpc_server/winreg/rpc_winreg.o
+
 ################################################
 # Start MODULE dcerpc_netlogon
 [MODULE::dcerpc_netlogon]
 INIT_FUNCTION = dcerpc_server_netlogon_init
 SUBSYSTEM = dcerpc_server
-OBJ_FILES = \
-               netlogon/dcerpc_netlogon.o
 PRIVATE_DEPENDENCIES = \
                DCERPC_COMMON \
                SCHANNELDB \
@@ -132,16 +127,14 @@ PRIVATE_DEPENDENCIES = \
 # End MODULE dcerpc_netlogon
 ################################################
 
+dcerpc_netlogon_OBJ_FILES = rpc_server/netlogon/dcerpc_netlogon.o
+
 ################################################
 # Start MODULE dcerpc_lsa
 [MODULE::dcerpc_lsarpc]
 INIT_FUNCTION = dcerpc_server_lsa_init
 SUBSYSTEM = dcerpc_server
 PRIVATE_PROTO_HEADER= lsa/proto.h
-OBJ_FILES = \
-               lsa/dcesrv_lsa.o \
-               lsa/lsa_init.o \
-               lsa/lsa_lookup.o
 PRIVATE_DEPENDENCIES = \
                SAMDB \
                DCERPC_COMMON \
@@ -151,14 +144,15 @@ PRIVATE_DEPENDENCIES = \
 # End MODULE dcerpc_lsa
 ################################################
 
+dcerpc_lsarpc_OBJ_FILES = $(addprefix rpc_server/lsa/, dcesrv_lsa.o lsa_init.o lsa_lookup.o)
+
+
 ################################################
 # Start MODULE dcerpc_spoolss
 [MODULE::dcerpc_spoolss]
 INIT_FUNCTION = dcerpc_server_spoolss_init
 SUBSYSTEM = dcerpc_server
 OUTPUT_TYPE = MERGED_OBJ
-OBJ_FILES = \
-               spoolss/dcesrv_spoolss.o
 PRIVATE_DEPENDENCIES = \
                DCERPC_COMMON \
                NDR_SPOOLSS \
@@ -167,13 +161,13 @@ PRIVATE_DEPENDENCIES = \
 # End MODULE dcerpc_spoolss
 ################################################
 
+dcerpc_spoolss_OBJ_FILES = rpc_server/spoolss/dcesrv_spoolss.o
+
 ################################################
 # Start MODULE dcerpc_drsuapi
 [MODULE::dcerpc_drsuapi]
 INIT_FUNCTION = dcerpc_server_drsuapi_init
 SUBSYSTEM = dcerpc_server
-OBJ_FILES = \
-               drsuapi/dcesrv_drsuapi.o
 PRIVATE_DEPENDENCIES = \
                SAMDB \
                DCERPC_COMMON \
@@ -181,20 +175,23 @@ PRIVATE_DEPENDENCIES = \
 # End MODULE dcerpc_drsuapi
 ################################################
 
+dcerpc_drsuapi_OBJ_FILES = rpc_server/drsuapi/dcesrv_drsuapi.o
+
 ################################################
 # Start SUBSYSTEM dcerpc_server
 [SUBSYSTEM::dcerpc_server]
 PRIVATE_PROTO_HEADER = dcerpc_server_proto.h
-OBJ_FILES = \
-               dcerpc_server.o \
-               dcesrv_auth.o \
-               dcesrv_mgmt.o \
-               handles.o
 PRIVATE_DEPENDENCIES = \
                LIBCLI_AUTH \
                LIBNDR \
                dcerpc
-#
+
+dcerpc_server_OBJ_FILES = $(addprefix rpc_server/, \
+               dcerpc_server.o \
+               dcesrv_auth.o \
+               dcesrv_mgmt.o \
+               handles.o)
+
 # End SUBSYSTEM DCERPC
 ################################################
 
@@ -202,6 +199,7 @@ PUBLIC_HEADERS += rpc_server/dcerpc_server.h
 
 [MODULE::DCESRV]
 INIT_FUNCTION = server_service_rpc_init
-OBJ_FILES = service_rpc.o
 SUBSYSTEM = service
 PRIVATE_DEPENDENCIES = dcerpc_server
+
+DCESRV_OBJ_FILES = rpc_server/service_rpc.o
index c1f07367fb7f6343f0e434564f1d7ead3ae0b7fd..6acf902c08af76041ee348385ff0a62ad8defca5 100644 (file)
@@ -1,84 +1,85 @@
 [SUBSYSTEM::EJSRPC]
-OBJ_FILES = \
-               ejsrpc.o
+
+EJSRPC_OBJ_FILES = scripting/ejs/ejsrpc.o
 
 [MODULE::smbcalls_config]
-OBJ_FILES = smbcalls_config.o
 OUTPUT_TYPE = MERGED_OBJ
 SUBSYSTEM = smbcalls
 INIT_FUNCTION = smb_setup_ejs_config
 
+smbcalls_config_OBJ_FILES = scripting/ejs/smbcalls_config.o
+
 [MODULE::smbcalls_ldb]
-OBJ_FILES = smbcalls_ldb.o
 OUTPUT_TYPE = MERGED_OBJ
 SUBSYSTEM = smbcalls
 INIT_FUNCTION = smb_setup_ejs_ldb
 PRIVATE_DEPENDENCIES = LIBLDB SAMDB LIBNDR
 
+smbcalls_ldb_OBJ_FILES = scripting/ejs/smbcalls_ldb.o
+
 [MODULE::smbcalls_reg]
-OBJ_FILES = smbcalls_reg.o
 SUBSYSTEM = smbcalls
 OUTPUT_TYPE = MERGED_OBJ
 INIT_FUNCTION = smb_setup_ejs_reg
 PRIVATE_DEPENDENCIES = registry SAMDB LIBNDR
 
+smbcalls_reg_OBJ_FILES = scripting/ejs/smbcalls_reg.o
+
 [MODULE::smbcalls_nbt]
-OBJ_FILES = smbcalls_nbt.o
 SUBSYSTEM = smbcalls
 OUTPUT_TYPE = MERGED_OBJ
 INIT_FUNCTION = smb_setup_ejs_nbt
 
+smbcalls_nbt_OBJ_FILES = scripting/ejs/smbcalls_nbt.o
+
 [MODULE::smbcalls_rand]
-OBJ_FILES = smbcalls_rand.o
 SUBSYSTEM = smbcalls
 OUTPUT_TYPE = MERGED_OBJ
 INIT_FUNCTION = smb_setup_ejs_random
 
+smbcalls_rand_OBJ_FILES = scripting/ejs/smbcalls_rand.o
+
 [MODULE::smbcalls_nss]
-OBJ_FILES = smbcalls_nss.o
 SUBSYSTEM = smbcalls
 OUTPUT_TYPE = MERGED_OBJ
 INIT_FUNCTION = smb_setup_ejs_nss
 PRIVATE_DEPENDENCIES = NSS_WRAPPER
 
+smbcalls_nss_OBJ_FILES = scripting/ejs/smbcalls_nss.o
+
 [MODULE::smbcalls_data]
-OBJ_FILES = smbcalls_data.o
 SUBSYSTEM = smbcalls
 OUTPUT_TYPE = MERGED_OBJ
 INIT_FUNCTION = smb_setup_ejs_datablob
 
+smbcalls_data_OBJ_FILES = scripting/ejs/smbcalls_data.o
+
 [MODULE::smbcalls_auth]
-OBJ_FILES = smbcalls_auth.o
 OUTPUT_TYPE = MERGED_OBJ
 SUBSYSTEM = smbcalls
 INIT_FUNCTION = smb_setup_ejs_auth
 PRIVATE_DEPENDENCIES = auth
 
+smbcalls_auth_OBJ_FILES = scripting/ejs/smbcalls_auth.o
+
 [MODULE::smbcalls_string]
-OBJ_FILES = smbcalls_string.o
 SUBSYSTEM = smbcalls
 OUTPUT_TYPE = MERGED_OBJ
 INIT_FUNCTION = smb_setup_ejs_string
 
+smbcalls_string_OBJ_FILES = scripting/ejs/smbcalls_string.o
+
 [MODULE::smbcalls_sys]
-OBJ_FILES = smbcalls_sys.o
 SUBSYSTEM = smbcalls
 OUTPUT_TYPE = MERGED_OBJ
 INIT_FUNCTION = smb_setup_ejs_system
 
+smbcalls_sys_OBJ_FILES = scripting/ejs/smbcalls_sys.o
+
 mkinclude ejsnet/config.mk
 
 [SUBSYSTEM::smbcalls]
 PRIVATE_PROTO_HEADER = proto.h
-OBJ_FILES = \
-               smbcalls.o \
-               smbcalls_cli.o \
-               smbcalls_rpc.o \
-               smbcalls_options.o \
-               smbcalls_creds.o \
-               smbcalls_param.o \
-               mprutil.o \
-               literal.o
 PRIVATE_DEPENDENCIES = \
                EJS LIBSAMBA-UTIL \
                EJSRPC MESSAGING \
@@ -87,12 +88,22 @@ PRIVATE_DEPENDENCIES = \
                dcerpc \
                NDR_TABLE
 
+smbcalls_OBJ_FILES = $(addprefix scripting/ejs/, \
+               smbcalls.o \
+               smbcalls_cli.o \
+               smbcalls_rpc.o \
+               smbcalls_options.o \
+               smbcalls_creds.o \
+               smbcalls_param.o \
+               mprutil.o \
+               literal.o)
+
 #######################
 # Start BINARY SMBSCRIPT
 [BINARY::smbscript]
 INSTALLDIR = BINDIR
-OBJ_FILES = \
-               smbscript.o
 PRIVATE_DEPENDENCIES = EJS LIBSAMBA-UTIL smbcalls LIBSAMBA-CONFIG
 # End BINARY SMBSCRIPT
 #######################
+
+smbscript_OBJ_FILES = scripting/ejs/smbscript.o
index 249a33121d99cc2fae4990b12549143dbad8ae25..85a5b2bf091fbaceecc8fa818354c35f33676acc 100644 (file)
@@ -1,11 +1,13 @@
 [MODULE::smbcalls_net]
-OBJ_FILES = \
-               net_ctx.o \
-               net_user.o \
-               mpr_user.o \
-               net_host.o \
-               mpr_host.o
 SUBSYSTEM = smbcalls
 INIT_FUNCTION = smb_setup_ejs_net
 PRIVATE_PROTO_HEADER = proto.h
 PRIVATE_DEPENDENCIES = LIBSAMBA-NET LIBCLI_SMB CREDENTIALS
+
+smbcalls_net_OBJ_FILES = $(addprefix scripting/ejs/ejsnet/,  \
+               net_ctx.o \
+               net_user.o \
+               mpr_user.o \
+               net_host.o \
+               mpr_host.o)
+
index 63a80e17db65a85fce6a17bba418f1f66538f5ee..98d6be07bf9a8ebd03e474acce6d2738b8ec6528 100644 (file)
@@ -23,7 +23,6 @@
 #include "includes.h"
 #include "param/param.h"
 #include "scripting/ejs/smbcalls.h"
-#include "build.h"
 #include "version.h"
 
 /*
@@ -173,6 +172,32 @@ _PUBLIC_ void ejs_exception(const char *reason)
 */
 void smb_setup_ejs_functions(void (*exception_handler)(const char *))
 {
+       extern NTSTATUS ejs_init_security(void);
+       extern NTSTATUS ejs_init_initshutdown(void);
+       extern NTSTATUS smb_setup_ejs_reg(void);
+       extern NTSTATUS smb_setup_ejs_string(void);
+       extern NTSTATUS ejs_init_lsarpc(void);
+       extern NTSTATUS ejs_init_rpcecho(void);
+       extern NTSTATUS ejs_init_winreg(void);
+       extern NTSTATUS smb_setup_ejs_random(void);
+       extern NTSTATUS smb_setup_ejs_config(void);
+       extern NTSTATUS ejs_init_misc(void);
+       extern NTSTATUS ejs_init_netdfs(void);
+       extern NTSTATUS smb_setup_ejs_datablob(void);
+       extern NTSTATUS smb_setup_ejs_auth(void);
+       extern NTSTATUS smb_setup_ejs_nss(void);
+       extern NTSTATUS ejs_init_samr(void);
+       extern NTSTATUS ejs_init_wkssvc(void);
+       extern NTSTATUS smb_setup_ejs_system(void);
+       extern NTSTATUS smb_setup_ejs_ldb(void);
+       extern NTSTATUS ejs_init_svcctl(void);
+       extern NTSTATUS smb_setup_ejs_nbt(void);
+       extern NTSTATUS smb_setup_ejs_net(void);
+       extern NTSTATUS ejs_init_srvsvc(void);
+       extern NTSTATUS ejs_init_netlogon(void);
+       extern NTSTATUS ejs_init_drsuapi(void);
+       extern NTSTATUS ejs_init_irpc(void);
+       extern NTSTATUS ejs_init_eventlog(void);
        init_module_fn static_init[] = { STATIC_smbcalls_MODULES };
        init_module_fn *shared_init;
 
index a16d737344c9b45622e3870003da894a54cf625c..a0f5caad3bde796b4fc6e3d34e6e46342dc052d4 100644 (file)
@@ -1,49 +1,25 @@
 [BINARY::smbpython]
 PRIVATE_DEPENDENCIES = LIBPYTHON
-OBJ_FILES = smbpython.o
+
+smbpython_OBJ_FILES = scripting/python/smbpython.o
 
 [SUBSYSTEM::LIBPYTHON]
 PUBLIC_DEPENDENCIES = EXT_LIB_PYTHON
 INIT_FUNCTION_SENTINEL = { NULL, NULL }
-OBJ_FILES = modules.o pytalloc.o
+
+LIBPYTHON_OBJ_FILES = $(addprefix scripting/python/, modules.o pytalloc.o)
 
 [PYTHON::python_uuid]
 PRIVATE_DEPENDENCIES = LIBNDR 
-OBJ_FILES = uuidmodule.o
+
+python_uuid_OBJ_FILES = scripting/python/uuidmodule.o
 
 [PYTHON::python_misc]
 PRIVATE_DEPENDENCIES = LIBNDR LIBLDB SAMDB CREDENTIALS
 SWIG_FILE = misc.i
 
-# Swig extensions
-swig:: pythonmods
-
-.SUFFIXES: _wrap.c .i
-
-.i_wrap.c:
-       [ "$(SWIG)" == "no" ] || $(SWIG) -O -Wall -I$(srcdir)/scripting/swig -python -keyword $<
-
-realdistclean::
-       @echo "Removing SWIG output files"
-       # FIXME: Remove _wrap.c files
-
-pythonmods:: $(PYTHON_DSOS) $(PYTHON_PYS)
-
-PYDOCTOR_MODULES=bin/python/ldb.py bin/python/auth.py bin/python/credentials.py bin/python/registry.py bin/python/tdb.py bin/python/security.py bin/python/events.py bin/python/net.py
-
-pydoctor:: pythonmods
-       LD_LIBRARY_PATH=bin/shared PYTHONPATH=bin/python pydoctor --project-name=Samba --make-html --docformat=restructuredtext --add-package scripting/python/samba/ $(addprefix --add-module , $(PYDOCTOR_MODULES))
-
-bin/python/%.py: 
-       mkdir -p $(@D)
-       cp $< $@
+python_misc_OBJ_FILES = scripting/python/misc_wrap.o
 
-installpython:: pythonmods
-       @$(SHELL) $(srcdir)/script/installpython.sh \
-               $(INSTALLPERMS) \
-               $(DESTDIR)$(PYTHONDIR) \
-               scripting/python bin/python
+_PY_FILES = $(shell find scripting/python -name "*.py")
 
-clean::
-       @echo "Removing python modules"
-       @rm -rf bin/python/*
+$(foreach pyfile, $(_PY_FILES),$(eval $(call python_py_module_template,$(patsubst scripting/python/%,%,$(pyfile)),$(pyfile))))
index 85c969df597691280ceb16b28ae3b2e21f2dff3e..8b6ae308f9362066f6133235076ebb847fed8d5c 100644 (file)
@@ -3,19 +3,14 @@
 [MODULE::SERVICE_SMB]
 INIT_FUNCTION = server_service_smb_init
 SUBSYSTEM = service
-OBJ_FILES = smb_server.o
 PRIVATE_PROTO_HEADER = service_smb_proto.h
 PRIVATE_DEPENDENCIES = SMB_SERVER
 
+SERVICE_SMB_OBJ_FILES = smb_server/smb_server.o
+
 #######################
 # Start SUBSYSTEM SMB
 [SUBSYSTEM::SMB_SERVER]
-OBJ_FILES = \
-               handle.o \
-               tcon.o \
-               session.o \
-               blob.o \
-               management.o
 PRIVATE_PROTO_HEADER = smb_server_proto.h
 PUBLIC_DEPENDENCIES = \
                share \
@@ -25,5 +20,12 @@ PUBLIC_DEPENDENCIES = \
 # End SUBSYSTEM SMB
 #######################
 
+SMB_SERVER_OBJ_FILES = $(addprefix smb_server/, \
+               handle.o \
+               tcon.o \
+               session.o \
+               blob.o \
+               management.o)
+
 mkinclude smb/config.mk
 mkinclude smb2/config.mk
index 7927f295b93d6c9676e77022c0da64d890b76986..3d4aa8ba3860e3c75b6f0c323b5bb070636876a3 100644 (file)
@@ -2,7 +2,12 @@
 # Start SUBSYSTEM SMB_PROTOCOL
 [SUBSYSTEM::SMB_PROTOCOL]
 PRIVATE_PROTO_HEADER = smb_proto.h
-OBJ_FILES = \
+PUBLIC_DEPENDENCIES = \
+               ntvfs LIBPACKET CREDENTIALS
+# End SUBSYSTEM SMB_PROTOCOL
+#######################
+
+SMB_PROTOCOL_OBJ_FILES = $(addprefix smb_server/smb/, \
                receive.o \
                negprot.o \
                nttrans.o \
@@ -13,8 +18,5 @@ OBJ_FILES = \
                sesssetup.o \
                srvtime.o \
                trans2.o \
-               signing.o
-PUBLIC_DEPENDENCIES = \
-               ntvfs LIBPACKET CREDENTIALS
-# End SUBSYSTEM SMB_PROTOCOL
-#######################
+               signing.o)
+
index d5ba43b3a8b232dbc256e8be8a627e6e3124d388..c9ba3269fac2bb9a59271d3e5484e6c6f8b05e6e 100644 (file)
@@ -2,7 +2,12 @@
 # Start SUBSYSTEM SMB2_PROTOCOL
 [SUBSYSTEM::SMB2_PROTOCOL]
 PRIVATE_PROTO_HEADER = smb2_proto.h
-OBJ_FILES = \
+PUBLIC_DEPENDENCIES = \
+               ntvfs LIBPACKET LIBCLI_SMB2
+# End SUBSYSTEM SMB2_PROTOCOL
+#######################
+
+SMB2_PROTOCOL_OBJ_FILES = $(addprefix smb_server/smb2/, \
                receive.o \
                negprot.o \
                sesssetup.o \
@@ -10,8 +15,5 @@ OBJ_FILES = \
                fileio.o \
                fileinfo.o \
                find.o \
-               keepalive.o
-PUBLIC_DEPENDENCIES = \
-               ntvfs LIBPACKET LIBCLI_SMB2
-# End SUBSYSTEM SMB2_PROTOCOL
-#######################
+               keepalive.o)
+
index 24827807562e6e073dafcb96bec0da792123da0a..dc8afeba7833320fb36458132456e849989e265a 100644 (file)
@@ -1,34 +1,24 @@
 # server subsystem
 
-################################################
-# Start MODULE service_auth
-[MODULE::service_auth]
-INIT_FUNCTION = server_service_auth_init
-SUBSYSTEM = service
-PRIVATE_DEPENDENCIES = \
-               auth
-# End MODULE server_auth
-################################################
-
 [SUBSYSTEM::service]
 PRIVATE_PROTO_HEADER = service_proto.h
-OBJ_FILES = \
-               service.o \
-               service_stream.o \
-               service_task.o
 PRIVATE_DEPENDENCIES = \
                MESSAGING samba-socket
 
+service_OBJ_FILES = $(addprefix smbd/, \
+               service.o \
+               service_stream.o \
+               service_task.o)
+
 [SUBSYSTEM::PIDFILE]
-OBJ_FILES = pidfile.o
 PRIVATE_PROTO_HEADER = pidfile.h
 
+PIDFILE_OBJ_FILES = smbd/pidfile.o
+
 #################################
 # Start BINARY smbd
 [BINARY::smbd]
 INSTALLDIR = SBINDIR
-OBJ_FILES = \
-               server.o
 PRIVATE_DEPENDENCIES = \
                process_model \
                service \
@@ -44,6 +34,8 @@ PRIVATE_DEPENDENCIES = \
                share \
                CLUSTER
 
+smbd_OBJ_FILES = smbd/server.o
+
 MANPAGES += smbd/smbd.8
 # End BINARY smbd
 #################################
index 5201a2e46e1676a8eac755b2d596468be96db606..638b280564d7cedde3c131f37240e5f0192af57a 100644 (file)
@@ -5,45 +5,45 @@
 [MODULE::process_model_single]
 INIT_FUNCTION = process_model_single_init 
 SUBSYSTEM = process_model
-OBJ_FILES = \
-               process_single.o
 # End MODULE process_model_single
 ################################################
 
+process_model_single_OBJ_FILES = smbd/process_single.o
+
 ################################################
 # Start MODULE process_model_standard
 [MODULE::process_model_standard]
 INIT_FUNCTION = process_model_standard_init 
 SUBSYSTEM = process_model
-OBJ_FILES = \
-               process_standard.o
 PRIVATE_DEPENDENCIES = SETPROCTITLE
 # End MODULE process_model_standard
 ################################################
 
+process_model_standard_OBJ_FILES = smbd/process_standard.o
+
 ################################################
 # Start MODULE process_model_thread
 [MODULE::process_model_thread]
 INIT_FUNCTION = process_model_thread_init 
 SUBSYSTEM = process_model
-OBJ_FILES = \
-               process_thread.o
 PRIVATE_DEPENDENCIES = PTHREAD
 # End MODULE process_model_thread
 ################################################
 
+process_model_thread_OBJ_FILES = smbd/process_thread.o
+
 ################################################
 # Start MODULE process_model_prefork
 [MODULE::process_model_prefork]
 INIT_FUNCTION = process_model_prefork_init 
 SUBSYSTEM = process_model
-OBJ_FILES = \
-               process_prefork.o
 # End MODULE process_model_thread
 ################################################
 
+process_model_prefork_OBJ_FILES = smbd/process_prefork.o
+
 [SUBSYSTEM::process_model]
 PRIVATE_PROTO_HEADER = process_model_proto.h
-OBJ_FILES = \
-               process_model.o
 PRIVATE_DEPENDENCIES = LIBSAMBA-UTIL LIBSAMBA-CONFIG
+
+process_model_OBJ_FILES = smbd/process_model.o
index e35a26e49f954f338680d8edfe7846dc9b53bcf0..cb1752d2cf0402eb87e81a3d60e87f21e55648eb 100644 (file)
@@ -4,22 +4,22 @@ SO_VERSION = 0
 VERSION = 0.0.1
 PC_FILE = torture.pc
 PRIVATE_PROTO_HEADER = proto.h
-OBJ_FILES = \
-               torture.o \
-               ui.o
 PUBLIC_DEPENDENCIES = \
                LIBSAMBA-CONFIG \
                LIBSAMBA-UTIL \
                LIBTALLOC \
                LIBPOPT
 
+torture_OBJ_FILES = $(addprefix torture/, torture.o ui.o)
+
 PUBLIC_HEADERS += torture/torture.h torture/ui.h
 
 [SUBSYSTEM::TORTURE_UTIL]
-OBJ_FILES = util_smb.o util_provision.o
 PRIVATE_DEPENDENCIES = LIBCLI_RAW LIBPYTHON smbcalls
 PUBLIC_DEPENDENCIES = POPT_CREDENTIALS
 
+TORTURE_UTIL_OBJ_FILES = $(addprefix torture/, util_smb.o util_provision.o)
+
 #################################
 # Start SUBSYSTEM TORTURE_BASIC
 [MODULE::TORTURE_BASIC]
@@ -27,25 +27,6 @@ SUBSYSTEM = torture
 INIT_FUNCTION = torture_base_init
 PRIVATE_PROTO_HEADER = \
                basic/proto.h
-OBJ_FILES = \
-               basic/base.o \
-               basic/misc.o \
-               basic/scanner.o \
-               basic/utable.o \
-               basic/charset.o \
-               basic/mangle_test.o \
-               basic/denytest.o \
-               basic/aliases.o \
-               basic/locking.o \
-               basic/secleak.o \
-               basic/rename.o \
-               basic/dir.o \
-               basic/delete.o \
-               basic/unlink.o \
-               basic/disconnect.o \
-               basic/delaywrite.o \
-               basic/attr.o \
-               basic/properties.o 
 PRIVATE_DEPENDENCIES = \
                LIBCLI_SMB POPT_CREDENTIALS \
                TORTURE_UTIL LIBCLI_RAW \
@@ -53,6 +34,27 @@ PRIVATE_DEPENDENCIES = \
 # End SUBSYSTEM TORTURE_BASIC
 #################################
 
+TORTURE_BASIC_OBJ_FILES = $(addprefix torture/basic/,  \
+               base.o \
+               misc.o \
+               scanner.o \
+               utable.o \
+               charset.o \
+               mangle_test.o \
+               denytest.o \
+               aliases.o \
+               locking.o \
+               secleak.o \
+               rename.o \
+               dir.o \
+               delete.o \
+               unlink.o \
+               disconnect.o \
+               delaywrite.o \
+               attr.o \
+               properties.o)
+
+
 #################################
 # Start SUBSYSTEM TORTURE_RAW
 [MODULE::TORTURE_RAW]
@@ -60,58 +62,52 @@ SUBSYSTEM = torture
 INIT_FUNCTION = torture_raw_init
 PRIVATE_PROTO_HEADER = \
                raw/proto.h
-OBJ_FILES = \
-               raw/qfsinfo.o \
-               raw/qfileinfo.o \
-               raw/setfileinfo.o \
-               raw/search.o \
-               raw/close.o \
-               raw/open.o \
-               raw/mkdir.o \
-               raw/oplock.o \
-               raw/notify.o \
-               raw/mux.o \
-               raw/ioctl.o \
-               raw/chkpath.o \
-               raw/unlink.o \
-               raw/read.o \
-               raw/context.o \
-               raw/write.o \
-               raw/lock.o \
-               raw/pingpong.o \
-               raw/lockbench.o \
-               raw/openbench.o \
-               raw/rename.o \
-               raw/eas.o \
-               raw/streams.o \
-               raw/acls.o \
-               raw/seek.o \
-               raw/samba3hide.o \
-               raw/samba3misc.o \
-               raw/composite.o \
-               raw/raw.o \
-               raw/offline.o
 PRIVATE_DEPENDENCIES = \
                LIBCLI_SMB LIBCLI_LSA LIBCLI_SMB_COMPOSITE \
                POPT_CREDENTIALS TORTURE_UTIL
 # End SUBSYSTEM TORTURE_RAW
 #################################
 
+TORTURE_RAW_OBJ_FILES = $(addprefix torture/raw/, \
+               qfsinfo.o \
+               qfileinfo.o \
+               setfileinfo.o \
+               search.o \
+               close.o \
+               open.o \
+               mkdir.o \
+               oplock.o \
+               notify.o \
+               mux.o \
+               ioctl.o \
+               chkpath.o \
+               unlink.o \
+               read.o \
+               context.o \
+               write.o \
+               lock.o \
+               pingpong.o \
+               lockbench.o \
+               openbench.o \
+               rename.o \
+               eas.o \
+               streams.o \
+               acls.o \
+               seek.o \
+               samba3hide.o \
+               samba3misc.o \
+               composite.o \
+               raw.o \
+               offline.o)
+
+
 mkinclude smb2/config.mk
 mkinclude winbind/config.mk
 
 [SUBSYSTEM::TORTURE_NDR]
 PRIVATE_PROTO_HEADER = ndr/proto.h
-OBJ_FILES = ndr/ndr.o \
-                       ndr/winreg.o \
-                       ndr/atsvc.o \
-                       ndr/lsa.o \
-                       ndr/epmap.o \
-                       ndr/dfs.o \
-                       ndr/netlogon.o \
-                       ndr/drsuapi.o \
-                       ndr/spoolss.o \
-                       ndr/samr.o
+
+TORTURE_NDR_OBJ_FILES = $(addprefix torture/ndr/, ndr.o winreg.o atsvc.o lsa.o epmap.o dfs.o netlogon.o drsuapi.o spoolss.o samr.o)
 
 [MODULE::torture_rpc]
 # TORTURE_NET and TORTURE_NBT use functions from torture_rpc...
@@ -120,50 +116,6 @@ SUBSYSTEM = torture
 INIT_FUNCTION = torture_rpc_init
 PRIVATE_PROTO_HEADER = \
                rpc/proto.h
-OBJ_FILES = \
-               rpc/join.o \
-               rpc/lsa.o \
-               rpc/lsa_lookup.o \
-               rpc/session_key.o \
-               rpc/echo.o \
-               rpc/dfs.o \
-               rpc/drsuapi.o \
-               rpc/drsuapi_cracknames.o \
-               rpc/dssync.o \
-               rpc/spoolss.o \
-               rpc/spoolss_notify.o \
-               rpc/spoolss_win.o \
-               rpc/unixinfo.o \
-               rpc/samr.o \
-               rpc/samr_accessmask.o \
-               rpc/wkssvc.o \
-               rpc/srvsvc.o \
-               rpc/svcctl.o \
-               rpc/atsvc.o \
-               rpc/eventlog.o \
-               rpc/epmapper.o \
-               rpc/winreg.o \
-               rpc/initshutdown.o \
-               rpc/oxidresolve.o \
-               rpc/remact.o \
-               rpc/mgmt.o \
-               rpc/scanner.o \
-               rpc/autoidl.o \
-               rpc/countcalls.o \
-               rpc/testjoin.o \
-               rpc/schannel.o \
-               rpc/netlogon.o \
-               rpc/samlogon.o \
-               rpc/samsync.o \
-               rpc/bind.o \
-               rpc/dssetup.o \
-               rpc/alter_context.o \
-               rpc/bench.o \
-               rpc/samba3rpc.o \
-               rpc/rpc.o \
-               rpc/async_bind.o \
-               rpc/handles.o \
-               rpc/frsapi.o
 PRIVATE_DEPENDENCIES = \
                NDR_TABLE RPC_NDR_UNIXINFO dcerpc_samr RPC_NDR_WINREG RPC_NDR_INITSHUTDOWN \
                RPC_NDR_OXIDRESOLVER RPC_NDR_EVENTLOG RPC_NDR_ECHO RPC_NDR_SVCCTL \
@@ -174,6 +126,15 @@ PRIVATE_DEPENDENCIES = \
                LIBCLI_AUTH POPT_CREDENTIALS TORTURE_LDAP TORTURE_UTIL TORTURE_RAP \
                dcerpc_server service process_model
 
+torture_rpc_OBJ_FILES = $(addprefix torture/rpc/, \
+               join.o lsa.o lsa_lookup.o session_key.o echo.o dfs.o drsuapi.o \
+               drsuapi_cracknames.o dssync.o spoolss.o spoolss_notify.o spoolss_win.o \
+               unixinfo.o samr.o samr_accessmask.o wkssvc.o srvsvc.o svcctl.o atsvc.o \
+               eventlog.o epmapper.o winreg.o initshutdown.o oxidresolve.o remact.o mgmt.o \
+               scanner.o autoidl.o countcalls.o testjoin.o schannel.o netlogon.o samlogon.o \
+               samsync.o bind.o dssetup.o alter_context.o bench.o samba3rpc.o rpc.o async_bind.o \
+               handles.o frsapi.o)
+
 #################################
 # Start SUBSYSTEM TORTURE_RAP
 [MODULE::TORTURE_RAP]
@@ -181,27 +142,26 @@ SUBSYSTEM = torture
 INIT_FUNCTION = torture_rap_init
 PRIVATE_PROTO_HEADER = \
                rap/proto.h
-OBJ_FILES = \
-               rap/rap.o
 PRIVATE_DEPENDENCIES = TORTURE_UTIL LIBCLI_SMB
 # End SUBSYSTEM TORTURE_RAP
 #################################
 
+TORTURE_RAP_OBJ_FILES = torture/rap/rap.o
+
 #################################
 # Start SUBSYSTEM TORTURE_AUTH
 [MODULE::TORTURE_AUTH]
 SUBSYSTEM = torture
 PRIVATE_PROTO_HEADER = \
                auth/proto.h
-OBJ_FILES = \
-               auth/ntlmssp.o \
-               auth/pac.o
 PRIVATE_DEPENDENCIES = \
                LIBCLI_SMB gensec auth KERBEROS \
                POPT_CREDENTIALS SMBPASSWD
 # End SUBSYSTEM TORTURE_AUTH
 #################################
 
+TORTURE_AUTH_OBJ_FILES = $(addprefix torture/auth/, ntlmssp.o pac.o)
+
 mkinclude local/config.mk
 
 #################################
@@ -212,12 +172,11 @@ INIT_FUNCTION = torture_nbench_init
 PRIVATE_DEPENDENCIES = TORTURE_UTIL 
 PRIVATE_PROTO_HEADER = \
                nbench/proto.h
-OBJ_FILES = \
-               nbench/nbio.o \
-               nbench/nbench.o
 # End MODULE TORTURE_NBENCH
 #################################
 
+TORTURE_NBENCH_OBJ_FILES = $(addprefix torture/nbench/, nbio.o nbench.o)
+
 #################################
 # Start MODULE TORTURE_UNIX
 [MODULE::TORTURE_UNIX]
@@ -226,13 +185,11 @@ INIT_FUNCTION = torture_unix_init
 PRIVATE_DEPENDENCIES = TORTURE_UTIL 
 PRIVATE_PROTO_HEADER = \
                unix/proto.h
-OBJ_FILES = \
-               unix/unix.o \
-               unix/whoami.o \
-               unix/unix_info2.o
 # End MODULE TORTURE_UNIX
 #################################
 
+TORTURE_UNIX_OBJ_FILES = $(addprefix torture/unix/, unix.o whoami.o unix_info2.o)
+
 #################################
 # Start SUBSYSTEM TORTURE_LDAP
 [MODULE::TORTURE_LDAP]
@@ -240,18 +197,14 @@ SUBSYSTEM = torture
 INIT_FUNCTION = torture_ldap_init
 PRIVATE_PROTO_HEADER = \
                ldap/proto.h
-OBJ_FILES = \
-               ldap/common.o \
-               ldap/basic.o \
-               ldap/schema.o \
-               ldap/uptodatevector.o \
-               ldap/cldap.o \
-               ldap/cldapbench.o
 PRIVATE_DEPENDENCIES = \
                LIBCLI_LDAP LIBCLI_CLDAP SAMDB POPT_CREDENTIALS
 # End SUBSYSTEM TORTURE_LDAP
 #################################
 
+TORTURE_LDAP_OBJ_FILES = $(addprefix torture/ldap/, common.o basic.o schema.o uptodatevector.o cldap.o cldapbench.o)
+
+
 #################################
 # Start SUBSYSTEM TORTURE_NBT
 [MODULE::TORTURE_NBT]
@@ -259,19 +212,15 @@ SUBSYSTEM = torture
 INIT_FUNCTION = torture_nbt_init
 PRIVATE_PROTO_HEADER = \
                nbt/proto.h
-OBJ_FILES = \
-               nbt/query.o \
-               nbt/register.o \
-               nbt/wins.o \
-               nbt/winsbench.o \
-               nbt/winsreplication.o \
-               nbt/dgram.o \
-               nbt/nbt.o
 PRIVATE_DEPENDENCIES = \
                LIBCLI_SMB LIBCLI_NBT LIBCLI_DGRAM LIBCLI_WREPL torture_rpc
 # End SUBSYSTEM TORTURE_NBT
 #################################
 
+TORTURE_NBT_OBJ_FILES = $(addprefix torture/nbt/, query.o register.o \
+       wins.o winsbench.o winsreplication.o dgram.o nbt.o)
+
+
 #################################
 # Start SUBSYSTEM TORTURE_NET
 [MODULE::TORTURE_NET]
@@ -279,21 +228,6 @@ SUBSYSTEM = torture
 INIT_FUNCTION = torture_net_init
 PRIVATE_PROTO_HEADER = \
                libnet/proto.h
-OBJ_FILES = \
-               libnet/libnet.o \
-               libnet/utils.o \
-               libnet/userinfo.o \
-               libnet/userman.o \
-               libnet/groupinfo.o \
-               libnet/groupman.o \
-               libnet/domain.o \
-               libnet/libnet_lookup.o \
-               libnet/libnet_user.o \
-               libnet/libnet_group.o \
-               libnet/libnet_share.o \
-               libnet/libnet_rpc.o \
-               libnet/libnet_domain.o \
-               libnet/libnet_BecomeDC.o
 PRIVATE_DEPENDENCIES = \
                LIBSAMBA-NET \
                POPT_CREDENTIALS \
@@ -301,12 +235,16 @@ PRIVATE_DEPENDENCIES = \
 # End SUBSYSTEM TORTURE_NET
 #################################
 
+TORTURE_NET_OBJ_FILES = $(addprefix torture/libnet/, libnet.o \
+                                          utils.o userinfo.o userman.o groupinfo.o groupman.o \
+                                          domain.o libnet_lookup.o libnet_user.o libnet_group.o \
+                                          libnet_share.o libnet_rpc.o libnet_domain.o libnet_BecomeDC.o)
+
+
 #################################
 # Start BINARY smbtorture
 [BINARY::smbtorture]
 INSTALLDIR = BINDIR
-OBJ_FILES = \
-               smbtorture.o
 PRIVATE_DEPENDENCIES = \
                torture \
                LIBPOPT \
@@ -318,14 +256,14 @@ PRIVATE_DEPENDENCIES = \
 # End BINARY smbtorture
 #################################
 
+smbtorture_OBJ_FILES = torture/smbtorture.o
+
 MANPAGES += torture/man/smbtorture.1
 
 #################################
 # Start BINARY gentest
 [BINARY::gentest]
 INSTALLDIR = BINDIR
-OBJ_FILES = \
-               gentest.o
 PRIVATE_DEPENDENCIES = \
                LIBSAMBA-CONFIG \
                LIBSAMBA-UTIL \
@@ -337,14 +275,14 @@ PRIVATE_DEPENDENCIES = \
 # End BINARY gentest
 #################################
 
+gentest_OBJ_FILES = torture/gentest.o
+
 MANPAGES += torture/man/gentest.1
 
 #################################
 # Start BINARY masktest
 [BINARY::masktest]
 INSTALLDIR = BINDIR
-OBJ_FILES = \
-               masktest.o
 PRIVATE_DEPENDENCIES = \
                LIBSAMBA-CONFIG \
                LIBSAMBA-UTIL \
@@ -355,14 +293,14 @@ PRIVATE_DEPENDENCIES = \
 # End BINARY masktest
 #################################
 
+masktest_OBJ_FILES = torture/masktest.o
+
 MANPAGES += torture/man/masktest.1
 
 #################################
 # Start BINARY locktest
 [BINARY::locktest]
 INSTALLDIR = BINDIR
-OBJ_FILES = \
-               locktest.o
 PRIVATE_DEPENDENCIES = \
                LIBPOPT \
                POPT_SAMBA \
@@ -373,6 +311,8 @@ PRIVATE_DEPENDENCIES = \
 # End BINARY locktest
 #################################
 
+locktest_OBJ_FILES = torture/locktest.o
+
 MANPAGES += torture/man/locktest.1
 
 COV_TARGET = test
index 4143d415cff72018fb9fc0a90b8274e09f17a089..efdea7f66ad2a1543ef71c90b81eba6d856b1820 100644 (file)
@@ -5,35 +5,6 @@ SUBSYSTEM = torture
 INIT_FUNCTION = torture_local_init
 PRIVATE_PROTO_HEADER = \
                proto.h
-OBJ_FILES = \
-               ../../lib/charset/tests/iconv.o \
-               ../../lib/talloc/testsuite.o \
-               ../../lib/replace/test/getifaddrs.o \
-               ../../lib/replace/test/os2_delete.o \
-               ../../lib/replace/test/strptime.o \
-               ../../lib/replace/test/testsuite.o \
-               ../../lib/messaging/tests/messaging.o \
-               ../../lib/messaging/tests/irpc.o \
-               ../../librpc/tests/binding_string.o \
-               ../../lib/util/tests/idtree.o \
-               ../../lib/socket/testsuite.o \
-               ../../lib/socket_wrapper/testsuite.o \
-               ../../libcli/resolve/testsuite.o \
-               ../../lib/util/tests/strlist.o \
-               ../../lib/util/tests/str.o \
-               ../../lib/util/tests/file.o \
-               ../../lib/util/tests/genrand.o \
-               ../../lib/compression/testsuite.o \
-               ../../lib/charset/tests/charset.o \
-               ../../libcli/security/tests/sddl.o \
-               ../../lib/tdr/testsuite.o \
-               ../../lib/events/testsuite.o \
-               ../../param/tests/share.o \
-               ../../param/tests/loadparm.o \
-               ../../auth/credentials/tests/simple.o \
-               local.o \
-               dbspeed.o \
-               torture.o
 PRIVATE_DEPENDENCIES = \
                RPC_NDR_ECHO \
                TDR \
@@ -48,3 +19,34 @@ PRIVATE_DEPENDENCIES = \
                torture_registry
 # End SUBSYSTEM TORTURE_LOCAL
 #################################
+
+TORTURE_LOCAL_OBJ_FILES = \
+               lib/charset/tests/iconv.o \
+               lib/talloc/testsuite.o \
+               lib/replace/test/getifaddrs.o \
+               lib/replace/test/os2_delete.o \
+               lib/replace/test/strptime.o \
+               lib/replace/test/testsuite.o \
+               lib/messaging/tests/messaging.o \
+               lib/messaging/tests/irpc.o \
+               librpc/tests/binding_string.o \
+               lib/util/tests/idtree.o \
+               lib/socket/testsuite.o \
+               lib/socket_wrapper/testsuite.o \
+               libcli/resolve/testsuite.o \
+               lib/util/tests/strlist.o \
+               lib/util/tests/str.o \
+               lib/util/tests/file.o \
+               lib/util/tests/genrand.o \
+               lib/compression/testsuite.o \
+               lib/charset/tests/charset.o \
+               libcli/security/tests/sddl.o \
+               lib/tdr/testsuite.o \
+               lib/events/testsuite.o \
+               param/tests/share.o \
+               param/tests/loadparm.o \
+               auth/credentials/tests/simple.o \
+               torture/local/local.o \
+               torture/local/dbspeed.o \
+               torture/local/torture.o
+
index 7463a31318a265e956eb21b1afac4855d74567e8..379632f0e7aba5324c6614ee6a0e820d1efaa36d 100644 (file)
@@ -6,7 +6,12 @@ SUBSYSTEM = torture
 INIT_FUNCTION = torture_smb2_init
 PRIVATE_PROTO_HEADER = \
                proto.h
-OBJ_FILES = \
+PRIVATE_DEPENDENCIES = \
+               LIBCLI_SMB2 POPT_CREDENTIALS
+# End SUBSYSTEM TORTURE_SMB2
+#################################
+
+TORTURE_SMB2_OBJ_FILES = $(addprefix torture/smb2/, \
                connect.o \
                scan.o \
                util.o \
@@ -15,8 +20,5 @@ OBJ_FILES = \
                find.o \
                lock.o \
                notify.o \
-               smb2.o
-PRIVATE_DEPENDENCIES = \
-               LIBCLI_SMB2 POPT_CREDENTIALS
-# End SUBSYSTEM TORTURE_SMB2
-#################################
+               smb2.o)
+
index b64b0647fc9e5b2486f68d25aaa0611e4e19ca8a..155766a6774608a704cb07c27a48db9e4a60a72c 100644 (file)
@@ -6,10 +6,10 @@ SUBSYSTEM = torture
 INIT_FUNCTION = torture_winbind_init
 PRIVATE_PROTO_HEADER = \
                proto.h
-OBJ_FILES = \
-               winbind.o \
-               struct_based.o
 PRIVATE_DEPENDENCIES = \
                LIBWINBIND-CLIENT
 # End SUBSYSTEM TORTURE_WINBIND
 #################################
+
+TORTURE_WINBIND_OBJ_FILES = $(addprefix torture/winbind/, winbind.o struct_based.o)
+
index 9ebfbbb7e3fdc8da053a2d9e914e378d32ba449d..9e79898373af2cec460c043f6514d6a1afa24604 100644 (file)
@@ -4,8 +4,6 @@
 # Start BINARY ntlm_auth
 [BINARY::ntlm_auth]
 INSTALLDIR = BINDIR
-OBJ_FILES = \
-               ntlm_auth.o
 PRIVATE_DEPENDENCIES = \
                LIBSAMBA-CONFIG \
                LIBSAMBA-UTIL \
@@ -20,14 +18,14 @@ PRIVATE_DEPENDENCIES = \
 # End BINARY ntlm_auth
 #################################
 
+ntlm_auth_OBJ_FILES = utils/ntlm_auth.o
+
 MANPAGES += utils/man/ntlm_auth.1
 
 #################################
 # Start BINARY getntacl
 [BINARY::getntacl]
 INSTALLDIR = BINDIR
-OBJ_FILES = \
-               getntacl.o
 PRIVATE_DEPENDENCIES = \
                LIBSAMBA-CONFIG \
                LIBSAMBA-UTIL \
@@ -35,6 +33,8 @@ PRIVATE_DEPENDENCIES = \
                WRAP_XATTR \
                LIBSAMBA-ERRORS
 
+getntacl_OBJ_FILES = utils/getntacl.o
+
 # End BINARY getntacl
 #################################
 
@@ -45,27 +45,25 @@ MANPAGES += utils/man/getntacl.1
 [BINARY::setntacl]
 # disabled until rewritten
 #INSTALLDIR = BINDIR
-OBJ_FILES = \
-               setntacl.o
 # End BINARY setntacl
 #################################
 
+setntacl_OBJ_FILES = utils/setntacl.o
+
 #################################
 # Start BINARY setnttoken
 [BINARY::setnttoken]
 INSTALLDIR = BINDIR
-OBJ_FILES = \
-               setnttoken.o
 PRIVATE_DEPENDENCIES =
 # End BINARY setnttoken
 #################################
 
+setnttoken_OBJ_FILES = utils/setnttoken.o
+
 #################################
 # Start BINARY nmblookup
 [BINARY::nmblookup]
 INSTALLDIR = BINDIR
-OBJ_FILES = \
-               nmblookup.o
 PRIVATE_DEPENDENCIES = \
                LIBSAMBA-CONFIG \
                LIBSAMBA-UTIL \
@@ -77,12 +75,12 @@ PRIVATE_DEPENDENCIES = \
 # End BINARY nmblookup
 #################################
 
+nmblookup_OBJ_FILES = utils/nmblookup.o
+
 #################################
 # Start BINARY testparm
 [BINARY::testparm]
 INSTALLDIR = BINDIR
-OBJ_FILES = \
-               testparm.o
 PRIVATE_DEPENDENCIES = \
                LIBSAMBA-CONFIG \
                LIBSAMBA-UTIL \
@@ -93,3 +91,5 @@ PRIVATE_DEPENDENCIES = \
                CHARSET
 # End BINARY testparm
 #################################
+
+testparm_OBJ_FILES = utils/testparm.o
index c07d6a67cb58e8a2ca3ebd6297b9520d523a2f00..d3ed02b50e91814451da88e62935743a9fb87a69 100644 (file)
@@ -5,13 +5,6 @@
 [BINARY::net]
 INSTALLDIR = BINDIR
 PRIVATE_PROTO_HEADER = net_proto.h
-OBJ_FILES = \
-               net.o \
-               net_password.o \
-               net_time.o \
-               net_join.o \
-               net_vampire.o \
-               net_user.o
 PRIVATE_DEPENDENCIES = \
                LIBSAMBA-CONFIG \
                LIBSAMBA-UTIL \
@@ -21,3 +14,12 @@ PRIVATE_DEPENDENCIES = \
                POPT_CREDENTIALS
 # End BINARY net
 #################################
+
+net_OBJ_FILES = $(addprefix utils/net/,  \
+               net.o \
+               net_password.o \
+               net_time.o \
+               net_join.o \
+               net_vampire.o \
+               net_user.o)
+
index 7f38b085f2f3011cbb48334364b26ac7f4644577..e218aa8ddcfb80d7c27d0f0dd7c16148847d2c6b 100644 (file)
@@ -6,9 +6,8 @@
 INIT_FUNCTION = server_service_web_init
 SUBSYSTEM = service
 PRIVATE_PROTO_HEADER = proto.h
-OBJ_FILES = \
-               web_server.o \
-               http.o
 PRIVATE_DEPENDENCIES = ESP LIBTLS smbcalls process_model 
 # End SUBSYSTEM WEB
 #######################
+
+WEB_OBJ_FILES = $(addprefix web_server/, web_server.o http.o)
index 2567d617da946e29fe50bf0e619605b1b766bd13..1c7755cf7d6bbb3ccad1451463ae974c6a6dc4bd 100644 (file)
@@ -6,7 +6,19 @@
 INIT_FUNCTION = server_service_winbind_init
 SUBSYSTEM = service
 PRIVATE_PROTO_HEADER = wb_proto.h
-OBJ_FILES = \
+PRIVATE_DEPENDENCIES = \
+               WB_HELPER \
+               IDMAP \
+               NDR_WINBIND \
+               process_model \
+               RPC_NDR_LSA \
+               dcerpc_samr \
+               PAM_ERRORS \
+               LIBCLI_LDAP
+# End SUBSYSTEM WINBIND
+#######################
+
+WINBIND_OBJ_FILES = $(addprefix winbind/, \
                wb_server.o \
                wb_irpc.o \
                wb_samba3_protocol.o \
@@ -34,36 +46,24 @@ OBJ_FILES = \
                wb_cmd_setpwent.o \
                wb_cmd_getpwent.o \
                wb_pam_auth.o \
-               wb_sam_logon.o
-PRIVATE_DEPENDENCIES = \
-               WB_HELPER \
-               IDMAP \
-               NDR_WINBIND \
-               process_model \
-               RPC_NDR_LSA \
-               dcerpc_samr \
-               PAM_ERRORS \
-               LIBCLI_LDAP
-# End SUBSYSTEM WINBIND
-#######################
+               wb_sam_logon.o)
 
 ################################################
 # Start SUBYSTEM WB_HELPER
 [SUBSYSTEM::WB_HELPER]
 PRIVATE_PROTO_HEADER = wb_helper.h
-OBJ_FILES = \
-               wb_async_helpers.o \
-               wb_utils.o
 PUBLIC_DEPENDENCIES = RPC_NDR_LSA dcerpc_samr
 # End SUBSYSTEM WB_HELPER
 ################################################
 
+WB_HELPER_OBJ_FILES = $(addprefix winbind/, wb_async_helpers.o wb_utils.o)
+
 ################################################
 # Start SUBYSTEM IDMAP
 [SUBSYSTEM::IDMAP]
 PRIVATE_PROTO_HEADER = idmap_proto.h
-OBJ_FILES = \
-               idmap.o
 PUBLIC_DEPENDENCIES = SAMDB_COMMON
 # End SUBSYSTEM IDMAP
 ################################################
+
+IDMAP_OBJ_FILES = winbind/idmap.o
index a2a6a72fe3febe699fff9cc1228b60fdf7afdb5b..e339d223aa229508918303ee4bb85e6c668f9e4d 100644 (file)
@@ -5,7 +5,13 @@
 [MODULE::WREPL_SRV]
 INIT_FUNCTION = server_service_wrepl_init
 SUBSYSTEM = service
-OBJ_FILES = \
+PRIVATE_PROTO_HEADER = wrepl_server_proto.h
+PRIVATE_DEPENDENCIES = \
+               LIBCLI_WREPL WINSDB process_model 
+# End SUBSYSTEM WREPL_SRV
+#######################
+
+WREPL_SRV_OBJ_FILES = $(addprefix wrepl_server/, \
                wrepl_server.o \
                wrepl_in_connection.o \
                wrepl_in_call.o \
@@ -14,9 +20,5 @@ OBJ_FILES = \
                wrepl_scavenging.o \
                wrepl_out_pull.o \
                wrepl_out_push.o \
-               wrepl_out_helpers.o
-PRIVATE_PROTO_HEADER = wrepl_server_proto.h
-PRIVATE_DEPENDENCIES = \
-               LIBCLI_WREPL WINSDB process_model 
-# End SUBSYSTEM WREPL_SRV
-#######################
+               wrepl_out_helpers.o)
+