summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/Makefile26
-rw-r--r--source4/auth/auth.c8
-rw-r--r--source4/auth/config.mk61
-rw-r--r--source4/auth/credentials/config.mk9
-rw-r--r--source4/auth/gensec/config.mk33
-rw-r--r--source4/auth/gensec/gensec.c7
-rw-r--r--source4/auth/kerberos/config.mk15
-rw-r--r--source4/auth/ntlmssp/config.mk9
-rw-r--r--source4/build/m4/public.m410
-rwxr-xr-xsource4/build/make/lex_compile.sh (renamed from source4/script/lex_compile.sh)0
-rw-r--r--source4/build/make/python.mk58
-rw-r--r--source4/build/make/rules.mk (renamed from source4/rules.mk)131
-rwxr-xr-xsource4/build/make/yacc_compile.sh (renamed from source4/script/yacc_compile.sh)0
-rw-r--r--source4/build/smb_build/config_mk.pm17
-rw-r--r--source4/build/smb_build/header.pm92
-rw-r--r--source4/build/smb_build/input.pm6
-rw-r--r--source4/build/smb_build/main.pl30
-rw-r--r--source4/build/smb_build/makefile.pm200
-rw-r--r--source4/build/smb_build/output.pm63
-rw-r--r--source4/cldap_server/config.mk12
-rw-r--r--source4/client/config.mk8
-rw-r--r--source4/cluster/config.mk5
-rw-r--r--source4/cluster/ctdb/config.mk14
-rw-r--r--source4/dsdb/config.mk40
-rw-r--r--source4/dsdb/samdb/ldb_modules/config.mk169
-rw-r--r--source4/dynconfig.mk6
-rwxr-xr-xsource4/heimdal_build/asn1_deps.pl7
-rw-r--r--source4/heimdal_build/config.mk794
-rw-r--r--source4/kdc/config.mk15
-rw-r--r--source4/ldap_server/config.mk14
-rw-r--r--source4/lib/appweb/config.mk16
-rw-r--r--source4/lib/basic.mk11
-rw-r--r--source4/lib/charset/config.mk5
-rw-r--r--source4/lib/cmdline/config.mk9
-rw-r--r--source4/lib/crypto/config.mk21
-rw-r--r--source4/lib/dbwrap/config.mk6
-rw-r--r--source4/lib/events/config.mk16
-rw-r--r--source4/lib/events/events.c6
-rw-r--r--source4/lib/ldb-samba/config.mk3
-rw-r--r--source4/lib/ldb/common/ldb_modules.c13
-rw-r--r--source4/lib/ldb/config.mk100
-rw-r--r--source4/lib/ldb/include/ldb_private.h6
-rw-r--r--source4/lib/ldb/ldb_ildap/config.mk3
-rw-r--r--source4/lib/ldb/python.mk2
-rw-r--r--source4/lib/ldb/tools/config.mk28
-rw-r--r--source4/lib/messaging/config.mk5
-rw-r--r--source4/lib/nss_wrapper/config.mk2
-rw-r--r--source4/lib/policy/config.mk6
-rw-r--r--source4/lib/popt/config.mk8
-rw-r--r--source4/lib/registry/config.mk51
-rw-r--r--source4/lib/registry/interface.c1
-rw-r--r--source4/lib/registry/local.c1
-rw-r--r--source4/lib/samba3/config.mk3
-rw-r--r--source4/lib/socket/config.mk21
-rw-r--r--source4/lib/socket_wrapper/config.mk3
-rw-r--r--source4/lib/stream/config.mk8
-rw-r--r--source4/lib/talloc/config.mk2
-rw-r--r--source4/lib/tdb/config.mk25
-rw-r--r--source4/lib/tdb/python.mk2
-rw-r--r--source4/lib/tdr/config.mk3
-rw-r--r--source4/lib/tls/config.mk8
-rw-r--r--source4/lib/util/config.mk34
-rw-r--r--source4/libcli/auth/config.mk9
-rw-r--r--source4/libcli/config.mk130
-rw-r--r--source4/libcli/ldap/config.mk14
-rw-r--r--source4/libcli/security/config.mk13
-rw-r--r--source4/libcli/smb2/config.mk29
-rw-r--r--source4/libnet/config.mk33
-rw-r--r--source4/librpc/config.mk419
-rw-r--r--source4/nbt_server/config.mk47
-rw-r--r--source4/nsswitch/config.m43
-rw-r--r--source4/nsswitch/config.mk12
-rw-r--r--source4/ntptr/config.mk11
-rw-r--r--source4/ntptr/ntptr_base.c2
-rw-r--r--source4/ntvfs/common/config.mk15
-rw-r--r--source4/ntvfs/config.mk34
-rw-r--r--source4/ntvfs/ntvfs_base.c11
-rw-r--r--source4/ntvfs/posix/config.mk25
-rw-r--r--source4/ntvfs/sysdep/config.mk29
-rw-r--r--source4/ntvfs/sysdep/sys_notify.c2
-rw-r--r--source4/ntvfs/unixuid/config.mk4
-rw-r--r--source4/param/config.mk25
-rw-r--r--source4/param/share.c3
-rw-r--r--source4/rpc_server/config.mk100
-rw-r--r--source4/rpc_server/dcerpc_server.c1
-rw-r--r--source4/rpc_server/service_rpc.c15
-rw-r--r--source4/scripting/ejs/config.mk59
-rw-r--r--source4/scripting/ejs/ejsnet/config.mk14
-rw-r--r--source4/scripting/ejs/smbcalls.c27
-rw-r--r--source4/scripting/python/config.mk42
-rw-r--r--source4/scripting/python/modules.c1
-rw-r--r--source4/smb_server/config.mk18
-rw-r--r--source4/smb_server/smb/config.mk14
-rw-r--r--source4/smb_server/smb2/config.mk14
-rw-r--r--source4/smbd/config.mk26
-rw-r--r--source4/smbd/process_model.c4
-rw-r--r--source4/smbd/process_model.mk20
-rw-r--r--source4/smbd/server.c15
-rw-r--r--source4/torture/config.mk262
-rw-r--r--source4/torture/local/config.mk60
-rw-r--r--source4/torture/smb2/config.mk14
-rw-r--r--source4/torture/smbtorture.c1
-rw-r--r--source4/torture/torture.c13
-rw-r--r--source4/torture/winbind/config.mk6
-rw-r--r--source4/utils/config.mk24
-rw-r--r--source4/utils/net/config.mk16
-rw-r--r--source4/web_server/config.mk7
-rw-r--r--source4/winbind/config.mk38
-rw-r--r--source4/wrepl_server/config.mk18
109 files changed, 1988 insertions, 1998 deletions
diff --git a/source4/Makefile b/source4/Makefile
index 4b70597aa5..982808e8b6 100644
--- a/source4/Makefile
+++ b/source4/Makefile
@@ -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,9 +45,12 @@ ALL_PREDEP = proto
.NOTPARALLEL:
endif
-include rules.mk
+include build/make/rules.mk
+include build/make/python.mk
include data.mk
+BINARIES += $(BIN_PROGS) $(SBIN_PROGS)
+
DEP_FILES = $(patsubst %.ho,%.hd,$(patsubst %.o,%.d,$(ALL_OBJS))) \
include/includes.d
@@ -55,7 +77,7 @@ endif
DEFAULT_HEADERS = $(srcdir)/lib/util/dlinklist.h \
$(srcdir)/version.h
-binaries::
+binaries:: $(BINARIES)
libraries:: $(STATIC_LIBS) $(SHARED_LIBS)
modules:: $(PLUGINS)
headers:: $(PUBLIC_HEADERS) $(DEFAULT_HEADERS)
diff --git a/source4/auth/auth.c b/source4/auth/auth.c
index ed590f2ced..f5149286b9 100644
--- a/source4/auth/auth.c
+++ b/source4/auth/auth.c
@@ -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,8 +514,13 @@ 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 };
+ init_module_fn static_init[] = { STATIC_service_auth_MODULES };
if (initialized) return NT_STATUS_OK;
initialized = true;
diff --git a/source4/auth/config.mk b/source4/auth/config.mk
index 369c5bb4e6..b82a1af8fa 100644
--- a/source4/auth/config.mk
+++ b/source4/auth/config.mk
@@ -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 = smbd
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
diff --git a/source4/auth/credentials/config.mk b/source4/auth/credentials/config.mk
index ef8db50109..d8c02ebea8 100644
--- a/source4/auth/credentials/config.mk
+++ b/source4/auth/credentials/config.mk
@@ -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
diff --git a/source4/auth/gensec/config.mk b/source4/auth/gensec/config.mk
index b60f039284..243725b235 100644
--- a/source4/auth/gensec/config.mk
+++ b/source4/auth/gensec/config.mk
@@ -1,16 +1,18 @@
#################################
# Start SUBSYSTEM gensec
[LIBRARY::gensec]
-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
#################################
+PC_FILES += auth/gensec/gensec.pc
+
+gensec_VERSION = 0.0.1
+gensec_SOVERSION = 0
+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)
+
diff --git a/source4/auth/gensec/gensec.c b/source4/auth/gensec/gensec.c
index cd2066d9fd..b07a92d4d1 100644
--- a/source4/auth/gensec/gensec.c
+++ b/source4/auth/gensec/gensec.c
@@ -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;
diff --git a/source4/auth/kerberos/config.mk b/source4/auth/kerberos/config.mk
index 7493a6d06d..762d6f8c49 100644
--- a/source4/auth/kerberos/config.mk
+++ b/source4/auth/kerberos/config.mk
@@ -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)
+
diff --git a/source4/auth/ntlmssp/config.mk b/source4/auth/ntlmssp/config.mk
index 9033384b1f..f8e711feda 100644
--- a/source4/auth/ntlmssp/config.mk
+++ b/source4/auth/ntlmssp/config.mk
@@ -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)
diff --git a/source4/build/m4/public.m4 b/source4/build/m4/public.m4
index eb673446c7..0058afe2b5 100644
--- a/source4/build/m4/public.m4
+++ b/source4/build/m4/public.m4
@@ -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
@@ -40,13 +39,13 @@ ENABLE = YES
"
])
-dnl SMB_LIBRARY(name,obj_files,required_subsystems,version,so_version,cflags,ldflags)
+dnl SMB_LIBRARY(name,obj_files,required_subsystems,cflags,ldflags)
AC_DEFUN([SMB_LIBRARY],
[
MAKE_SETTINGS="$MAKE_SETTINGS
$1_OBJ_FILES = $2
-$1_CFLAGS = $6
-$1_LDFLAGS = $7
+$1_CFLAGS = $4
+$1_LDFLAGS = $5
$1_ENABLE = YES
"
@@ -54,10 +53,7 @@ SMB_INFO_LIBRARIES="$SMB_INFO_LIBRARIES
###################################
# Start Library $1
@<:@LIBRARY::$1@:>@
-OBJ_FILES = \$($1_OBJ_FILES)
PRIVATE_DEPENDENCIES = $3
-VERSION = $4
-SO_VERSION = $5
CFLAGS = \$($1_CFLAGS)
LDFLAGS = \$($1_LDFLAGS)
ENABLE = YES
diff --git a/source4/script/lex_compile.sh b/source4/build/make/lex_compile.sh
index 9bba7257b1..9bba7257b1 100755
--- a/source4/script/lex_compile.sh
+++ b/source4/build/make/lex_compile.sh
diff --git a/source4/build/make/python.mk b/source4/build/make/python.mk
new file mode 100644
index 0000000000..57bf0169fe
--- /dev/null
+++ b/source4/build/make/python.mk
@@ -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
diff --git a/source4/rules.mk b/source4/build/make/rules.mk
index 5f91f8132e..3ff9f2b933 100644
--- a/source4/rules.mk
+++ b/source4/build/make/rules.mk
@@ -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
@@ -51,7 +46,7 @@ clean:: clean_pch
@echo Removing binaries
@-rm -f $(BIN_PROGS) $(SBIN_PROGS) $(BINARIES) $(TORTURE_PROGS)
@echo Removing libraries
- @-rm -f $(STATIC_LIBRARIES) $(SHARED_LIBRARIES)
+ @-rm -f $(STATIC_LIBS) $(SHARED_LIBS)
@-rm -f bin/static/*.a bin/shared/*.$(SHLIBEXT) bin/mergedobj/*.o
@echo Removing modules
@-rm -f bin/modules/*/*.$(SHLIBEXT)
@@ -94,6 +89,103 @@ unused_macros:
@$(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
+
+# Shared library
+# Arguments: Target, dependencies, link flags, soname
+define shared_library_template
+$(1): $(2)
+ @echo Linking $$@
+ @mkdir -p $$(@D)
+ @$$(SHLD) $$(LDFLAGS) $$(SHLD_FLAGS) $$(INTERN_LDFLAGS) -o $$@ $$(INSTALL_LINK_FLAGS) \
+ $(3) \
+ $$(if $$(SONAMEFLAG), $$(SONAMEFLAG)$(notdir $(4)))
+
+ifneq ($(notdir $(1)),$(notdir $(4)))
+$(4): $(1)
+ @echo "Creating symbolic link for $$@"
+ @ln -fs $$(<F) $$@
+endif
+
+ifneq ($(notdir $(1)),$(notdir $(5)))
+$(5): $(1)
+ @echo "Creating symbolic link for $$@"
+ @ln -fs $$(<F) $$@
+endif
+endef
+
+# Shared alias
+# Arguments: Target, subsystem name, alias name
+define shared_module_alias_template
+bin/modules/$(2)/$(3).$$(SHLIBEXT): $(1)
+ @ln -fs $$(<F) $$@
+
+PLUGINS += bin/modules/$(2)/$(3).$$(SHLIBEXT)
+
+uninstallplugins::
+ @-rm $$(DESTDIR)$$(modulesdir)/$(2)/$(3).$$(SHLIBEXT)
+installplugins::
+ @ln -fs $(1) $$(DESTDIR)$$(modulesdir)/$(2)/$(3).$$(SHLIBEXT)
+
+endef
+
+define shared_module_install_template
+installplugins:: bin/modules/$(1)/$(2)
+ @echo Installing$(2) as $$(DESTDIR)$$(modulesdir)/$(1)/$(2)
+ @mkdir -p $$(DESTDIR)$$(modulesdir)/$(1)/
+ @cp bin/modules/$(1)/$(2) $$(DESTDIR)$$(modulesdir)/$(1)/$(2)
+uninstallplugins::
+ @echo Uninstalling $$(DESTDIR)$$(modulesdir)/$(1)/$(2)
+ @-rm $$(DESTDIR)$$(modulesdir)/$(1)/$(2)
+
+endef
+
+###############################################################################
# File types
###############################################################################
@@ -119,11 +211,9 @@ include/includes.d: include/includes.h
@echo "Compiling $<"
@-mkdir -p `dirname $@`
@$(COMPILE) && exit 0 ; \
- echo "The following command failed:" 1>&2;\
- $(COMPILE) >/dev/null 2>&1
+ $(COMPILE)
-# echo "$(COMPILE)" 1>&2;\
.c.ho:
@echo "Compiling $< with host compiler"
@@ -139,11 +229,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
diff --git a/source4/script/yacc_compile.sh b/source4/build/make/yacc_compile.sh
index a56a51da0a..a56a51da0a 100755
--- a/source4/script/yacc_compile.sh
+++ b/source4/build/make/yacc_compile.sh
diff --git a/source4/build/smb_build/config_mk.pm b/source4/build/smb_build/config_mk.pm
index d8ec646910..7b23e83934 100644
--- a/source4/build/smb_build/config_mk.pm
+++ b/source4/build/smb_build/config_mk.pm
@@ -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",
@@ -78,18 +73,12 @@ my $section_types = {
"USE_HOSTCC" => "bool"
},
"LIBRARY" => {
- "VERSION" => "string",
- "SO_VERSION" => "string",
"LIBRARY_REALNAME" => "string",
- "PC_FILE" => "string",
-
"INIT_FUNCTION_TYPE" => "string",
"INIT_FUNCTION_SENTINEL" => "string",
"OUTPUT_TYPE" => "list",
- "OBJ_FILES" => "list",
-
"PRIVATE_DEPENDENCIES" => "list",
"PUBLIC_DEPENDENCIES" => "list",
@@ -223,6 +212,9 @@ sub run_config_mk($$$$)
{
$section = $1;
$infragment = 0;
+
+ $result->{$section}{EXISTS}{KEY} = "EXISTS";
+ $result->{$section}{EXISTS}{VAL} = 1;
next;
}
@@ -233,6 +225,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 +244,6 @@ sub run_config_mk($$$$)
$infragment = 1;
next;
}
-
# Assignment
if ($line =~ /^([a-zA-Z0-9_]+)[\t ]*=(.*)$/) {
@@ -280,6 +272,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
index c2bdbaf4c8..0000000000
--- a/source4/build/smb_build/header.pm
+++ /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;
diff --git a/source4/build/smb_build/input.pm b/source4/build/smb_build/input.pm
index 948f2657b4..eb20a686c1 100644
--- a/source4/build/smb_build/input.pm
+++ b/source4/build/smb_build/input.pm
@@ -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);
diff --git a/source4/build/smb_build/main.pl b/source4/build/smb_build/main.pl
index c3dc46461b..a6abee6106 100644
--- a/source4/build/smb_build/main.pl
+++ b/source4/build/smb_build/main.pl
@@ -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,38 +50,43 @@ 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");
- }
$mkenv->SharedLibraryPrimitives($key) if ($key->{TYPE} eq "LIBRARY") and
grep(/SHARED_LIBRARY/, @{$key->{OUTPUT_TYPE}});
if ($key->{TYPE} eq "LIBRARY" and
${$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);
diff --git a/source4/build/smb_build/makefile.pm b/source4/build/smb_build/makefile.pm
index 03198fd944..1f66fabf72 100644
--- a/source4/build/smb_build/makefile.pm
+++ b/source4/build/smb_build/makefile.pm
@@ -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,103 +102,47 @@ sub _prepare_list($$$)
$self->output("$ctx->{NAME}_$var =$tmplist\n");
}
-sub SharedModulePrimitives($$)
+sub PythonModule($$)
{
my ($self,$ctx) = @_;
-
- #FIXME
+
+ $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("PLUGINS += $ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME}\n");
+ $self->output("\$(eval \$(call shared_module_install_template,$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");
-
- if (defined($ctx->{ALIASES})) {
- foreach (@{$ctx->{ALIASES}}) {
- $self->output("\t\@-rm \$(DESTDIR)\$(modulesdir)/$sane_subsystem/$_.\$(SHLIBEXT)\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__"
-#
+ $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");
-$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__
-);
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("\$(eval \$(foreach alias,". join(' ', @{$ctx->{ALIASES}}) . ",\$(call shared_module_alias_template,$ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME},$sane_subsystem,\$(alias))))\n");
}
- $self->output("\n");
}
sub SharedLibraryPrimitives($$)
{
my ($self,$ctx) = @_;
- $self->output("$ctx->{NAME}_SOVERSION = $ctx->{SO_VERSION}\n") if (defined($ctx->{SO_VERSION}));
- $self->output("$ctx->{NAME}_VERSION = $ctx->{VERSION}\n") if (defined($ctx->{VERSION}));
-
if (not grep(/STATIC_LIBRARY/, @{$ctx->{OUTPUT_TYPE}})) {
$self->output("$ctx->{NAME}_OUTPUT = $ctx->{OUTPUT}\n");
$self->_prepare_list($ctx, "FULL_OBJ_LIST");
@@ -220,58 +153,41 @@ 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");
$self->_prepare_list($ctx, "DEPEND_LIST");
$self->_prepare_list($ctx, "LINK_FLAGS");
- $self->output(<< "__EOD__"
-$ctx->{RESULT_SHARED_LIBRARY}: \$($ctx->{NAME}_DEPEND_LIST) \$($ctx->{NAME}_FULL_OBJ_LIST)
- \@echo Linking \$\@
- \@mkdir -p \$(\@D)
- \@\$(SHLD) \$(LDFLAGS) \$(SHLD_FLAGS) \$(INTERN_LDFLAGS) -o \$\@ \$(INSTALL_LINK_FLAGS) \\
- \$($ctx->{NAME}\_FULL_OBJ_LIST) \\
- \$($ctx->{NAME}_LINK_FLAGS) \\
- \$(if \$(SONAMEFLAG), \$(SONAMEFLAG)$ctx->{LIBRARY_SONAME})
-__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");
+ $self->output("\$(eval \$(call shared_library_template,$ctx->{RESULT_SHARED_LIBRARY}, \$($ctx->{NAME}_DEPEND_LIST) \$($ctx->{NAME}_FULL_OBJ_LIST), \$($ctx->{NAME}\_FULL_OBJ_LIST) \$($ctx->{NAME}_LINK_FLAGS),$ctx->{SHAREDDIR}/$ctx->{LIBRARY_SONAME},$ctx->{SHAREDDIR}/$ctx->{LIBRARY_DEBUGNAME}))\n");
}
sub MergedObj($$)
{
my ($self, $ctx) = @_;
- return unless defined($ctx->{OUTPUT});
+ $self->output("\$(call partial_link_template, $ctx->{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 +196,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 +219,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 +227,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 +263,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 +276,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;
diff --git a/source4/build/smb_build/output.pm b/source4/build/smb_build/output.pm
index 4ae4a62cf4..f9f12c3a73 100644
--- a/source4/build/smb_build/output.pm
+++ b/source4/build/smb_build/output.pm
@@ -7,39 +7,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($)
{
@@ -80,10 +47,8 @@ sub generate_shared_library($)
$lib->{LIBRARY_DEBUGNAME} = $lib->{LIBRARY_REALNAME};
- if (defined($lib->{VERSION}) and $config::config{SONAMEFLAG} ne "#") {
- $lib->{LIBRARY_SONAME} = "$lib->{LIBRARY_REALNAME}.\$($lib->{NAME}_SOVERSION)";
- $lib->{LIBRARY_REALNAME} = "$lib->{LIBRARY_REALNAME}.\$($lib->{NAME}_VERSION)";
- }
+ $lib->{LIBRARY_SONAME} = "\$(if \$($lib->{NAME}_SOVERSION),$lib->{LIBRARY_REALNAME}.\$($lib->{NAME}_SOVERSION),$lib->{LIBRARY_REALNAME})";
+ $lib->{LIBRARY_REALNAME} = "\$(if \$($lib->{NAME}_VERSION),$lib->{LIBRARY_REALNAME}.\$($lib->{NAME}_VERSION),$lib->{LIBRARY_REALNAME})";
$lib->{RESULT_SHARED_LIBRARY} = "$lib->{SHAREDDIR}/$lib->{LIBRARY_REALNAME}";
$lib->{OUTPUT_SHARED_LIBRARY} = "-l$link_name";
@@ -97,11 +62,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 +79,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 +121,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 +154,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}));
}
}
}
diff --git a/source4/cldap_server/config.mk b/source4/cldap_server/config.mk
index 9dd3758e7a..0773412bfd 100644
--- a/source4/cldap_server/config.mk
+++ b/source4/cldap_server/config.mk
@@ -4,13 +4,15 @@
# Start SUBSYSTEM CLDAPD
[MODULE::CLDAPD]
INIT_FUNCTION = server_service_cldapd_init
-SUBSYSTEM = service
+SUBSYSTEM = smbd
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)
+
diff --git a/source4/client/config.mk b/source4/client/config.mk
index 9f785004a0..513c05dfb3 100644
--- a/source4/client/config.mk
+++ b/source4/client/config.mk
@@ -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
diff --git a/source4/cluster/config.mk b/source4/cluster/config.mk
index 8b225202fb..00ac597f94 100644
--- a/source4/cluster/config.mk
+++ b/source4/cluster/config.mk
@@ -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
diff --git a/source4/cluster/ctdb/config.mk b/source4/cluster/ctdb/config.mk
index b8199cafe4..01c639d142 100644
--- a/source4/cluster/ctdb/config.mk
+++ b/source4/cluster/ctdb/config.mk
@@ -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)
+
diff --git a/source4/dsdb/config.mk b/source4/dsdb/config.mk
index fb8cd4f503..7e943c3634 100644
--- a/source4/dsdb/config.mk
+++ b/source4/dsdb/config.mk
@@ -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
@@ -42,16 +44,18 @@ PUBLIC_HEADERS += dsdb/schema/schema.h
# Start SUBSYSTEM DREPL_SRV
[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
+SUBSYSTEM = smbd
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)
+
diff --git a/source4/dsdb/samdb/ldb_modules/config.mk b/source4/dsdb/samdb/ldb_modules/config.mk
index de93b5638d..1708c66d44 100644
--- a/source4/dsdb/samdb/ldb_modules/config.mk
+++ b/source4/dsdb/samdb/ldb_modules/config.mk
@@ -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
+
diff --git a/source4/dynconfig.mk b/source4/dynconfig.mk
index aa0565cd7a..487d924036 100644
--- a/source4/dynconfig.mk
+++ b/source4/dynconfig.mk
@@ -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 $@
diff --git a/source4/heimdal_build/asn1_deps.pl b/source4/heimdal_build/asn1_deps.pl
index b80e00d444..a2fbb5e3d0 100755
--- a/source4/heimdal_build/asn1_deps.pl
+++ b/source4/heimdal_build/asn1_deps.pl
@@ -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";
diff --git a/source4/heimdal_build/config.mk b/source4/heimdal_build/config.mk
index 65b49b73db..d58d06f909 100644
--- a/source4/heimdal_build/config.mk
+++ b/source4/heimdal_build/config.mk
@@ -2,334 +2,343 @@
# 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/dbinfo.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/dbinfo.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 HEIMDAL_WIND
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 \
- ../heimdal/lib/hcrypto/camellia.o \
- ../heimdal/lib/hcrypto/camellia-ntt.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 \
+ ./heimdal/lib/hcrypto/camellia.o \
+ ./heimdal/lib/hcrypto/camellia-ntt.o
+
#######################
# Start SUBSYSTEM HEIMDAL_HX509
[SUBSYSTEM::HEIMDAL_HX509]
@@ -342,103 +351,78 @@ PRIVATE_DEPENDENCIES = \
HEIMDAL_PKCS9_ASN1 HEIMDAL_PKCS12_ASN1 \
HEIMDAL_PKINIT_ASN1 HEIMDAL_PKCS10_ASN1 \
HEIMDAL_WIND
-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
+
#######################
# Start SUBSYSTEM HEIMDAL_WIND
[SUBSYSTEM::HEIMDAL_WIND]
CFLAGS = -Iheimdal_build -Iheimdal/lib/wind
PRIVATE_DEPENDENCIES = \
HEIMDAL_ROKEN HEIMDAL_COM_ERR
-OBJ_FILES = \
- ../heimdal/lib/wind/wind_err.o \
- ../heimdal/lib/wind/stringprep.o \
- ../heimdal/lib/wind/errorlist.o \
- ../heimdal/lib/wind/errorlist_table.o \
- ../heimdal/lib/wind/normalize.o \
- ../heimdal/lib/wind/normalize_table.o \
- ../heimdal/lib/wind/combining.o \
- ../heimdal/lib/wind/combining_table.o \
- ../heimdal/lib/wind/utf8.o \
- ../heimdal/lib/wind/bidi.o \
- ../heimdal/lib/wind/bidi_table.o \
- ../heimdal/lib/wind/ldap.o \
- ../heimdal/lib/wind/map.o \
- ../heimdal/lib/wind/map_table.o
+
+HEIMDAL_WIND_OBJ_FILES = \
+ ./heimdal/lib/wind/wind_err.o \
+ ./heimdal/lib/wind/stringprep.o \
+ ./heimdal/lib/wind/errorlist.o \
+ ./heimdal/lib/wind/errorlist_table.o \
+ ./heimdal/lib/wind/normalize.o \
+ ./heimdal/lib/wind/normalize_table.o \
+ ./heimdal/lib/wind/combining.o \
+ ./heimdal/lib/wind/combining_table.o \
+ ./heimdal/lib/wind/utf8.o \
+ ./heimdal/lib/wind/bidi.o \
+ ./heimdal/lib/wind/bidi_table.o \
+ ./heimdal/lib/wind/ldap.o \
+ ./heimdal/lib/wind/map.o \
+ ./heimdal/lib/wind/map_table.o
# End SUBSYSTEM HEIMDAL_WIND
#######################
[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 \
@@ -447,64 +431,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 LIBREPLACE_NETWORK
+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
#######################
@@ -512,28 +531,31 @@ PRIVATE_DEPENDENCIES = HEIMDAL_ASN1_COMPILE_LEX HEIMDAL_ROKEN_GETPROGNAME_H LIBR
# 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 LIBREPLACE_NETWORK
# 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|
@@ -550,7 +572,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|
@@ -569,31 +591,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
diff --git a/source4/kdc/config.mk b/source4/kdc/config.mk
index 479cb36296..7a96cf6432 100644
--- a/source4/kdc/config.mk
+++ b/source4/kdc/config.mk
@@ -4,26 +4,23 @@
# Start SUBSYSTEM KDC
[MODULE::KDC]
INIT_FUNCTION = server_service_kdc_init
-SUBSYSTEM = service
-OBJ_FILES = \
- kdc.o \
- kpasswdd.o
+SUBSYSTEM = smbd
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)
diff --git a/source4/ldap_server/config.mk b/source4/ldap_server/config.mk
index 9892376821..2535cf3e68 100644
--- a/source4/ldap_server/config.mk
+++ b/source4/ldap_server/config.mk
@@ -4,13 +4,8 @@
# Start SUBSYSTEM LDAP
[MODULE::LDAP]
INIT_FUNCTION = server_service_ldap_init
-SUBSYSTEM = service
+SUBSYSTEM = smbd
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)
+
diff --git a/source4/lib/appweb/config.mk b/source4/lib/appweb/config.mk
index df0f81dccb..c0bba35ba5 100644
--- a/source4/lib/appweb/config.mk
+++ b/source4/lib/appweb/config.mk
@@ -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)
diff --git a/source4/lib/basic.mk b/source4/lib/basic.mk
index d059bdf49b..f6a8731a21 100644
--- a/source4/lib/basic.mk
+++ b/source4/lib/basic.mk
@@ -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
diff --git a/source4/lib/charset/config.mk b/source4/lib/charset/config.mk
index 2766784c52..e5e5bd4560 100644
--- a/source4/lib/charset/config.mk
+++ b/source4/lib/charset/config.mk
@@ -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
diff --git a/source4/lib/cmdline/config.mk b/source4/lib/cmdline/config.mk
index 87014d4d53..f8a971a063 100644
--- a/source4/lib/cmdline/config.mk
+++ b/source4/lib/cmdline/config.mk
@@ -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
diff --git a/source4/lib/crypto/config.mk b/source4/lib/crypto/config.mk
index f7a8d20604..82dbe4a4cb 100644
--- a/source4/lib/crypto/config.mk
+++ b/source4/lib/crypto/config.mk
@@ -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)
diff --git a/source4/lib/dbwrap/config.mk b/source4/lib/dbwrap/config.mk
index 01ce4ddd8e..9038873d32 100644
--- a/source4/lib/dbwrap/config.mk
+++ b/source4/lib/dbwrap/config.mk
@@ -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)
+
diff --git a/source4/lib/events/config.mk b/source4/lib/events/config.mk
index 225a23c634..e5a1316c47 100644
--- a/source4/lib/events/config.mk
+++ b/source4/lib/events/config.mk
@@ -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
diff --git a/source4/lib/events/events.c b/source4/lib/events/events.c
index 555a5092cc..969abeae46 100644
--- a/source4/lib/events/events.c
+++ b/source4/lib/events/events.c
@@ -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);
diff --git a/source4/lib/ldb-samba/config.mk b/source4/lib/ldb-samba/config.mk
index fa3ac46021..6a0b842fff 100644
--- a/source4/lib/ldb-samba/config.mk
+++ b/source4/lib/ldb-samba/config.mk
@@ -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
diff --git a/source4/lib/ldb/common/ldb_modules.c b/source4/lib/ldb/common/ldb_modules.c
index 34e0afbf93..ddbe0f23a6 100644
--- a/source4/lib/ldb/common/ldb_modules.c
+++ b/source4/lib/ldb/common/ldb_modules.c
@@ -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_server_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
diff --git a/source4/lib/ldb/config.mk b/source4/lib/ldb/config.mk
index 81fd1e9b95..23e2ef71dd 100644
--- a/source4/lib/ldb/config.mk
+++ b/source4/lib/ldb/config.mk
@@ -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,142 +15,127 @@ 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]
-VERSION = 0.0.1
-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 = \
SOCKET_WRAPPER
+
+PC_FILES += $(ldbdir)/ldb.pc
#
# End SUBSYSTEM ldb
################################################
+LIBLDB_VERSION = 0.0.1
+LIBLDB_SOVERSION = 0
+
+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 +143,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
diff --git a/source4/lib/ldb/include/ldb_private.h b/source4/lib/ldb/include/ldb_private.h
index 0ffba9d99b..ea8533bc38 100644
--- a/source4/lib/ldb/include/ldb_private.h
+++ b/source4/lib/ldb/include/ldb_private.h
@@ -188,8 +188,14 @@ extern const struct ldb_module_ops ldb_asq_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;
diff --git a/source4/lib/ldb/ldb_ildap/config.mk b/source4/lib/ldb/ldb_ildap/config.mk
index 3062dc886f..1b534645b6 100644
--- a/source4/lib/ldb/ldb_ildap/config.mk
+++ b/source4/lib/ldb/ldb_ildap/config.mk
@@ -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
diff --git a/source4/lib/ldb/python.mk b/source4/lib/ldb/python.mk
index bbd4c1c5eb..448cc3ed60 100644
--- a/source4/lib/ldb/python.mk
+++ b/source4/lib/ldb/python.mk
@@ -2,3 +2,5 @@
PUBLIC_DEPENDENCIES = LIBLDB
CFLAGS = -Ilib/ldb/include
SWIG_FILE = ldb.i
+
+swig_ldb_OBJ_FILES = lib/ldb/ldb_wrap.o
diff --git a/source4/lib/ldb/tools/config.mk b/source4/lib/ldb/tools/config.mk
index 02ad84ae25..6729636434 100644
--- a/source4/lib/ldb/tools/config.mk
+++ b/source4/lib/ldb/tools/config.mk
@@ -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
diff --git a/source4/lib/messaging/config.mk b/source4/lib/messaging/config.mk
index 3fec9c0c90..0a0097bdf3 100644
--- a/source4/lib/messaging/config.mk
+++ b/source4/lib/messaging/config.mk
@@ -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
diff --git a/source4/lib/nss_wrapper/config.mk b/source4/lib/nss_wrapper/config.mk
index 81b0ef36fd..61f6392008 100644
--- a/source4/lib/nss_wrapper/config.mk
+++ b/source4/lib/nss_wrapper/config.mk
@@ -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
diff --git a/source4/lib/policy/config.mk b/source4/lib/policy/config.mk
index aae98b86b2..70fb289189 100644
--- a/source4/lib/policy/config.mk
+++ b/source4/lib/policy/config.mk
@@ -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
diff --git a/source4/lib/popt/config.mk b/source4/lib/popt/config.mk
index ad218517b3..86d440ac78 100644
--- a/source4/lib/popt/config.mk
+++ b/source4/lib/popt/config.mk
@@ -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)
+
diff --git a/source4/lib/registry/config.mk b/source4/lib/registry/config.mk
index b2d7ce202e..16e9c62c57 100644
--- a/source4/lib/registry/config.mk
+++ b/source4/lib/registry/config.mk
@@ -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
@@ -17,96 +18,92 @@ clean::
################################################
# Start SUBSYSTEM registry
[LIBRARY::registry]
-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
################################################
+PC_FILES += lib/registry/registry.pc
+
+registry_VERSION = 0.0.1
+registry_SOVERSION = 0
+
+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
diff --git a/source4/lib/registry/interface.c b/source4/lib/registry/interface.c
index a18fd2c28c..ff3ddf0a35 100644
--- a/source4/lib/registry/interface.c
+++ b/source4/lib/registry/interface.c
@@ -21,7 +21,6 @@
#include "lib/util/dlinklist.h"
#include "lib/registry/registry.h"
#include "system/filesys.h"
-#include "build.h"
/**
diff --git a/source4/lib/registry/local.c b/source4/lib/registry/local.c
index 3e463100c9..b2cdec9cdf 100644
--- a/source4/lib/registry/local.c
+++ b/source4/lib/registry/local.c
@@ -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;
diff --git a/source4/lib/samba3/config.mk b/source4/lib/samba3/config.mk
index 2d129c5f8c..d33b38cab0 100644
--- a/source4/lib/samba3/config.mk
+++ b/source4/lib/samba3/config.mk
@@ -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
diff --git a/source4/lib/socket/config.mk b/source4/lib/socket/config.mk
index 777882f6e0..2400190175 100644
--- a/source4/lib/socket/config.mk
+++ b/source4/lib/socket/config.mk
@@ -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 LIBREPLACE_NETWORK
# 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 = LIBSAMBA-ERRORS LIBREPLACE_NETWORK
# 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 = LIBREPLACE_NETWORK
# 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)
+
diff --git a/source4/lib/socket_wrapper/config.mk b/source4/lib/socket_wrapper/config.mk
index 2b9f30a7bb..75d3ade28b 100644
--- a/source4/lib/socket_wrapper/config.mk
+++ b/source4/lib/socket_wrapper/config.mk
@@ -1,9 +1,10 @@
##############################
# Start SUBSYSTEM SOCKET_WRAPPER
[SUBSYSTEM::SOCKET_WRAPPER]
-OBJ_FILES = socket_wrapper.o
PRIVATE_DEPENDENCIES = LIBREPLACE_NETWORK
# End SUBSYSTEM SOCKET_WRAPPER
##############################
PUBLIC_HEADERS += lib/socket_wrapper/socket_wrapper.h
+
+SOCKET_WRAPPER_OBJ_FILES = lib/socket_wrapper/socket_wrapper.o
diff --git a/source4/lib/stream/config.mk b/source4/lib/stream/config.mk
index 39e7bc739d..52c8525483 100644
--- a/source4/lib/stream/config.mk
+++ b/source4/lib/stream/config.mk
@@ -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
diff --git a/source4/lib/talloc/config.mk b/source4/lib/talloc/config.mk
index 33241ffac7..b65cb4ccf6 100644
--- a/source4/lib/talloc/config.mk
+++ b/source4/lib/talloc/config.mk
@@ -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
diff --git a/source4/lib/tdb/config.mk b/source4/lib/tdb/config.mk
index c69804fa13..fd39074f50 100644
--- a/source4/lib/tdb/config.mk
+++ b/source4/lib/tdb/config.mk
@@ -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
diff --git a/source4/lib/tdb/python.mk b/source4/lib/tdb/python.mk
index 23b01c120c..2d61545b7f 100644
--- a/source4/lib/tdb/python.mk
+++ b/source4/lib/tdb/python.mk
@@ -1,3 +1,5 @@
[PYTHON::swig_tdb]
SWIG_FILE = tdb.i
PUBLIC_DEPENDENCIES = LIBTDB DYNCONFIG
+
+swig_tdb_OBJ_FILES = lib/tdb/tdb_wrap.o
diff --git a/source4/lib/tdr/config.mk b/source4/lib/tdr/config.mk
index eb3cde9bdf..3e05f6c30c 100644
--- a/source4/lib/tdr/config.mk
+++ b/source4/lib/tdr/config.mk
@@ -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
diff --git a/source4/lib/tls/config.mk b/source4/lib/tls/config.mk
index f75c613e73..a92321f59f 100644
--- a/source4/lib/tls/config.mk
+++ b/source4/lib/tls/config.mk
@@ -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
diff --git a/source4/lib/util/config.mk b/source4/lib/util/config.mk
index 22e6617f7c..3afe398a8f 100644
--- a/source4/lib/util/config.mk
+++ b/source4/lib/util/config.mk
@@ -1,7 +1,12 @@
[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 \
+ LIBREPLACE_NETWORK
+
+LIBSAMBA-UTIL_OBJ_FILES = $(addprefix lib/util/, \
+ xfile.o \
debug.o \
fault.o \
signal.o \
@@ -18,11 +23,7 @@ OBJ_FILES = xfile.o \
ms_fnmatch.o \
mutex.o \
idtree.o \
- become_daemon.o
-PUBLIC_DEPENDENCIES = \
- LIBTALLOC LIBCRYPTO \
- SOCKET_WRAPPER LIBREPLACE_NETWORK \
- CHARSET EXECINFO
+ become_daemon.o)
PUBLIC_HEADERS += $(addprefix lib/util/, util.h \
attr.h \
@@ -36,33 +37,34 @@ 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
diff --git a/source4/libcli/auth/config.mk b/source4/libcli/auth/config.mk
index 61d3fe8c94..f180844d84 100644
--- a/source4/libcli/auth/config.mk
+++ b/source4/libcli/auth/config.mk
@@ -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
diff --git a/source4/libcli/config.mk b/source4/libcli/config.mk
index d3a3beaaa9..79b16bfd74 100644
--- a/source4/libcli/config.mk
+++ b/source4/libcli/config.mk
@@ -3,120 +3,125 @@ 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 +130,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
diff --git a/source4/libcli/ldap/config.mk b/source4/libcli/ldap/config.mk
index bcdedd3440..cc38796ac3 100644
--- a/source4/libcli/ldap/config.mk
+++ b/source4/libcli/ldap/config.mk
@@ -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
diff --git a/source4/libcli/security/config.mk b/source4/libcli/security/config.mk
index 8c66df0325..fde065aa34 100644
--- a/source4/libcli/security/config.mk
+++ b/source4/libcli/security/config.mk
@@ -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
diff --git a/source4/libcli/smb2/config.mk b/source4/libcli/smb2/config.mk
index ab079fefde..e95997db54 100644
--- a/source4/libcli/smb2/config.mk
+++ b/source4/libcli/smb2/config.mk
@@ -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)
+
diff --git a/source4/libnet/config.mk b/source4/libnet/config.mk
index c35b7decc4..f7ff07a7bc 100644
--- a/source4/libnet/config.mk
+++ b/source4/libnet/config.mk
@@ -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
diff --git a/source4/librpc/config.mk b/source4/librpc/config.mk
index a316e059b3..bb81888d12 100644
--- a/source4/librpc/config.mk
+++ b/source4/librpc/config.mk
@@ -1,17 +1,16 @@
################################################
# Start SUBSYSTEM LIBNDR
[LIBRARY::LIBNDR]
-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 \
LIBSAMBA-CONFIG
+
+LIBNDR_OBJ_FILES = $(addprefix librpc/ndr/, ndr.o ndr_basic.o ndr_string.o uuid.o)
+
+PC_FILES += librpc/ndr.pc
+LIBNDR_VERSION = 0.0.1
+LIBNDR_SOVERSION = 0
+
# End SUBSYSTEM LIBNDR
################################################
@@ -21,8 +20,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 +31,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 +356,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,181 +369,207 @@ 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
+
+PC_FILES += librpc/dcerpc_samr.pc
+
+dcerpc_samr_VERSION = 0.0.1
+dcerpc_samr_SOVERSION = 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)
################################################
# Start SUBSYSTEM dcerpc
[LIBRARY::dcerpc]
-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 +580,14 @@ PUBLIC_DEPENDENCIES = CREDENTIALS
# End SUBSYSTEM dcerpc
################################################
+PC_FILES += librpc/dcerpc.pc
+dcerpc_VERSION = 0.0.1
+dcerpc_SOVERSION = 0
+
+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 +595,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
diff --git a/source4/nbt_server/config.mk b/source4/nbt_server/config.mk
index 9285044768..f69b73ccfb 100644
--- a/source4/nbt_server/config.mk
+++ b/source4/nbt_server/config.mk
@@ -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
+SUBSYSTEM = smbd
PRIVATE_DEPENDENCIES = NBT_SERVER process_model
+
+service_nbtd_OBJ_FILES = \
+ nbt_server/nbt_server.o
diff --git a/source4/nsswitch/config.m4 b/source4/nsswitch/config.m4
index a3b7412841..207b7fa53f 100644
--- a/source4/nsswitch/config.m4
+++ b/source4/nsswitch/config.m4
@@ -4,8 +4,7 @@ case "$host_os" in
*linux*)
SMB_LIBRARY(nss_winbind,
[nsswitch/winbind_nss_linux.o],
- [LIBWINBIND-CLIENT],
- [2],[2])
+ [LIBWINBIND-CLIENT])
;;
*)
;;
diff --git a/source4/nsswitch/config.mk b/source4/nsswitch/config.mk
index e53e064272..8c1eaa72eb 100644
--- a/source4/nsswitch/config.mk
+++ b/source4/nsswitch/config.mk
@@ -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
diff --git a/source4/ntptr/config.mk b/source4/ntptr/config.mk
index 4c1f46ff17..dda4c29444 100644
--- a/source4/ntptr/config.mk
+++ b/source4/ntptr/config.mk
@@ -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
diff --git a/source4/ntptr/ntptr_base.c b/source4/ntptr/ntptr_base.c
index 26e192d64b..a26d36854d 100644
--- a/source4/ntptr/ntptr_base.c
+++ b/source4/ntptr/ntptr_base.c
@@ -24,7 +24,6 @@
#include "includes.h"
#include "ntptr/ntptr.h"
-#include "build.h"
#include "param/param.h"
/* the list of currently registered NTPTR backends */
@@ -71,6 +70,7 @@ NTSTATUS ntptr_register(const void *_ops)
NTSTATUS ntptr_init(struct loadparm_context *lp_ctx)
{
+ extern int ntptr_simple_ldb_init(void);
init_module_fn static_init[] = { STATIC_ntptr_MODULES };
init_module_fn *shared_init = load_samba_modules(NULL, lp_ctx, "ntptr");
diff --git a/source4/ntvfs/common/config.mk b/source4/ntvfs/common/config.mk
index 3963ebcdee..c66257b73f 100644
--- a/source4/ntvfs/common/config.mk
+++ b/source4/ntvfs/common/config.mk
@@ -2,17 +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 sys_lease \
- share LIBDBWRAP
+PUBLIC_DEPENDENCIES = NDR_OPENDB NDR_NOTIFY sys_notify sys_lease 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)
+
diff --git a/source4/ntvfs/config.mk b/source4/ntvfs/config.mk
index 0f8e88eaa6..436fe11522 100644
--- a/source4/ntvfs/config.mk
+++ b/source4/ntvfs/config.mk
@@ -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
#
diff --git a/source4/ntvfs/ntvfs_base.c b/source4/ntvfs/ntvfs_base.c
index 35becabcf9..4cd6192c77 100644
--- a/source4/ntvfs/ntvfs_base.c
+++ b/source4/ntvfs/ntvfs_base.c
@@ -24,7 +24,6 @@
#include "includes.h"
#include "lib/util/dlinklist.h"
-#include "build.h"
#include "ntvfs/ntvfs.h"
#include "param/param.h"
@@ -204,6 +203,16 @@ NTSTATUS ntvfs_init_connection(TALLOC_CTX *mem_ctx, struct share_config *scfg, e
NTSTATUS ntvfs_init(struct loadparm_context *lp_ctx)
{
static bool initialized = false;
+ extern NTSTATUS ntvfs_posix_init(void);
+ extern NTSTATUS ntvfs_cifs_init(void);
+ extern NTSTATUS ntvfs_nbench_init(void);
+ extern NTSTATUS ntvfs_unixuid_init(void);
+ extern NTSTATUS ntvfs_ipc_init(void);
+ extern NTSTATUS pvfs_acl_nfs4_init(void);
+ extern NTSTATUS pvfs_acl_xattr_init(void);
+ extern NTSTATUS ntvfs_print_init(void);
+ extern NTSTATUS ntvfs_simple_init(void);
+ extern NTSTATUS ntvfs_cifs_posix_init(void);
init_module_fn static_init[] = { STATIC_ntvfs_MODULES };
init_module_fn *shared_init;
diff --git a/source4/ntvfs/posix/config.mk b/source4/ntvfs/posix/config.mk
index 88048c2af7..249f1ba3d8 100644
--- a/source4/ntvfs/posix/config.mk
+++ b/source4/ntvfs/posix/config.mk
@@ -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)
+
diff --git a/source4/ntvfs/sysdep/config.mk b/source4/ntvfs/sysdep/config.mk
index 048226efad..68be660049 100644
--- a/source4/ntvfs/sysdep/config.mk
+++ b/source4/ntvfs/sysdep/config.mk
@@ -3,34 +3,23 @@
[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
################################################
-################################################
-# Start MODULE sys_lease_linux
-[MODULE::sys_lease_linux]
-SUBSYSTEM = sys_lease
-INIT_FUNCTION = sys_lease_linux_init
-OBJ_FILES = \
- sys_lease_linux.o
-# End MODULE sys_lease_linux
-################################################
+sys_notify_OBJ_FILES = ntvfs/sysdep/sys_notify.o
+
+[SUBSYSTEM::sys_lease_linux]
+
+sys_lease_linux_OBJ_FILES = ntvfs/sysdep/sys_lease_linux.o
-################################################
-# Start SUBSYSTEM sys_lease
[SUBSYSTEM::sys_lease]
-OBJ_FILES = \
- sys_lease.o
-# End SUBSYSTEM sys_lease
-################################################
+
+sys_lease_OBJ_FILES = ntvfs/sysdep/sys_lease.o
diff --git a/source4/ntvfs/sysdep/sys_notify.c b/source4/ntvfs/sysdep/sys_notify.c
index 84ba745f5b..c628b9068c 100644
--- a/source4/ntvfs/sysdep/sys_notify.c
+++ b/source4/ntvfs/sysdep/sys_notify.c
@@ -28,7 +28,6 @@
#include "lib/events/events.h"
#include "lib/util/dlinklist.h"
#include "param/param.h"
-#include "build.h"
/* list of registered backends */
static struct sys_notify_backend *backends;
@@ -124,6 +123,7 @@ _PUBLIC_ NTSTATUS sys_notify_register(struct sys_notify_backend *backend)
_PUBLIC_ NTSTATUS sys_notify_init(void)
{
static bool initialized = false;
+ extern NTSTATUS sys_notify_inotify_init(void);
init_module_fn static_init[] = { STATIC_sys_notify_MODULES };
diff --git a/source4/ntvfs/unixuid/config.mk b/source4/ntvfs/unixuid/config.mk
index 91976c6811..968e56bde4 100644
--- a/source4/ntvfs/unixuid/config.mk
+++ b/source4/ntvfs/unixuid/config.mk
@@ -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
diff --git a/source4/param/config.mk b/source4/param/config.mk
index f43c9d8a1b..4b5af9b6cb 100644
--- a/source4/param/config.mk
+++ b/source4/param/config.mk
@@ -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
diff --git a/source4/param/share.c b/source4/param/share.c
index bc2999b03d..2727518c05 100644
--- a/source4/param/share.c
+++ b/source4/param/share.c
@@ -21,7 +21,6 @@
#include "includes.h"
#include "param/share.h"
-#include "build.h"
#include "param/param.h"
const char *share_string_option(struct share_config *scfg, const char *opt_name, const char *defval)
@@ -146,6 +145,8 @@ NTSTATUS share_get_context_by_name(TALLOC_CTX *mem_ctx, const char *backend_name
*/
NTSTATUS share_init(void)
{
+ extern NTSTATUS share_ldb_init(void);
+ extern NTSTATUS share_classic_init(void);
init_module_fn static_init[] = { STATIC_share_MODULES };
run_init_functions(static_init);
diff --git a/source4/rpc_server/config.mk b/source4/rpc_server/config.mk
index c2cf0e355a..ea30533922 100644
--- a/source4/rpc_server/config.mk
+++ b/source4/rpc_server/config.mk
@@ -4,82 +4,78 @@
# 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
################################################
# Start MODULE dcerpc_rpcecho
[MODULE::dcerpc_rpcecho]
INIT_FUNCTION = dcerpc_server_rpcecho_init
-SUBSYSTEM = dcerpc_server
-OBJ_FILES = \
- echo/rpc_echo.o
+SUBSYSTEM = DCESRV
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
+SUBSYSTEM = DCESRV
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
+SUBSYSTEM = DCESRV
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
+SUBSYSTEM = DCESRV
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
+SUBSYSTEM = DCESRV
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
+SUBSYSTEM = DCESRV
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
+SUBSYSTEM = DCESRV
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
+SUBSYSTEM = DCESRV
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
+SUBSYSTEM = DCESRV
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
+SUBSYSTEM = DCESRV
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
+SUBSYSTEM = DCESRV
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
+SUBSYSTEM = DCESRV
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
+SUBSYSTEM = smbd
PRIVATE_DEPENDENCIES = dcerpc_server
+
+DCESRV_OBJ_FILES = rpc_server/service_rpc.o
diff --git a/source4/rpc_server/dcerpc_server.c b/source4/rpc_server/dcerpc_server.c
index 6e53c7c8ae..cc9819e40c 100644
--- a/source4/rpc_server/dcerpc_server.c
+++ b/source4/rpc_server/dcerpc_server.c
@@ -32,7 +32,6 @@
#include "smbd/service.h"
#include "system/filesys.h"
#include "libcli/security/security.h"
-#include "build.h"
#include "param/param.h"
extern const struct dcesrv_interface dcesrv_mgmt_interface;
diff --git a/source4/rpc_server/service_rpc.c b/source4/rpc_server/service_rpc.c
index ddcf1c2a99..4fb38cd122 100644
--- a/source4/rpc_server/service_rpc.c
+++ b/source4/rpc_server/service_rpc.c
@@ -37,7 +37,6 @@
#include "lib/messaging/irpc.h"
#include "system/network.h"
#include "lib/socket/netif.h"
-#include "build.h"
#include "param/param.h"
struct dcesrv_socket_context {
@@ -459,7 +458,19 @@ failed:
NTSTATUS server_service_rpc_init(void)
{
- init_module_fn static_init[] = { STATIC_dcerpc_server_MODULES };
+ extern NTSTATUS dcerpc_server_wkssvc_init(void);
+ extern NTSTATUS dcerpc_server_drsuapi_init(void);
+ extern NTSTATUS dcerpc_server_winreg_init(void);
+ extern NTSTATUS dcerpc_server_spoolss_init(void);
+ extern NTSTATUS dcerpc_server_epmapper_init(void);
+ extern NTSTATUS dcerpc_server_srvsvc_init(void);
+ extern NTSTATUS dcerpc_server_netlogon_init(void);
+ extern NTSTATUS dcerpc_server_rpcecho_init(void);
+ extern NTSTATUS dcerpc_server_unixinfo_init(void);
+ extern NTSTATUS dcerpc_server_samr_init(void);
+ extern NTSTATUS dcerpc_server_remote_init(void);
+ extern NTSTATUS dcerpc_server_lsa_init(void);
+ init_module_fn static_init[] = { STATIC_DCESRV_MODULES };
init_module_fn *shared_init = load_samba_modules(NULL, global_loadparm, "dcerpc_server");
run_init_functions(static_init);
diff --git a/source4/scripting/ejs/config.mk b/source4/scripting/ejs/config.mk
index c1f07367fb..0d10fc6e3a 100644
--- a/source4/scripting/ejs/config.mk
+++ b/source4/scripting/ejs/config.mk
@@ -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
+PRIVATE_DEPENDENCIES = service_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
diff --git a/source4/scripting/ejs/ejsnet/config.mk b/source4/scripting/ejs/ejsnet/config.mk
index 249a33121d..85a5b2bf09 100644
--- a/source4/scripting/ejs/ejsnet/config.mk
+++ b/source4/scripting/ejs/ejsnet/config.mk
@@ -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)
+
diff --git a/source4/scripting/ejs/smbcalls.c b/source4/scripting/ejs/smbcalls.c
index 63a80e17db..98d6be07bf 100644
--- a/source4/scripting/ejs/smbcalls.c
+++ b/source4/scripting/ejs/smbcalls.c
@@ -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;
diff --git a/source4/scripting/python/config.mk b/source4/scripting/python/config.mk
index 09c77813ca..a0f5caad3b 100644
--- a/source4/scripting/python/config.mk
+++ b/source4/scripting/python/config.mk
@@ -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))))
diff --git a/source4/scripting/python/modules.c b/source4/scripting/python/modules.c
index 2ecad20b8e..2c10a35c60 100644
--- a/source4/scripting/python/modules.c
+++ b/source4/scripting/python/modules.c
@@ -19,7 +19,6 @@
#include "includes.h"
#include <Python.h>
-#include "build.h"
extern void init_ldb(void);
extern void init_security(void);
diff --git a/source4/smb_server/config.mk b/source4/smb_server/config.mk
index 85c969df59..1e3da1fab6 100644
--- a/source4/smb_server/config.mk
+++ b/source4/smb_server/config.mk
@@ -2,20 +2,15 @@
#
[MODULE::SERVICE_SMB]
INIT_FUNCTION = server_service_smb_init
-SUBSYSTEM = service
-OBJ_FILES = smb_server.o
+SUBSYSTEM = smbd
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
diff --git a/source4/smb_server/smb/config.mk b/source4/smb_server/smb/config.mk
index 7927f295b9..3d4aa8ba38 100644
--- a/source4/smb_server/smb/config.mk
+++ b/source4/smb_server/smb/config.mk
@@ -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)
+
diff --git a/source4/smb_server/smb2/config.mk b/source4/smb_server/smb2/config.mk
index d5ba43b3a8..c9ba3269fa 100644
--- a/source4/smb_server/smb2/config.mk
+++ b/source4/smb_server/smb2/config.mk
@@ -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)
+
diff --git a/source4/smbd/config.mk b/source4/smbd/config.mk
index 2482780756..dc8afeba78 100644
--- a/source4/smbd/config.mk
+++ b/source4/smbd/config.mk
@@ -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
#################################
diff --git a/source4/smbd/process_model.c b/source4/smbd/process_model.c
index 8939637c3f..e267995596 100644
--- a/source4/smbd/process_model.c
+++ b/source4/smbd/process_model.c
@@ -20,7 +20,6 @@
#include "includes.h"
#include "smbd/process_model.h"
-#include "build.h"
#include "param/param.h"
/*
@@ -82,6 +81,9 @@ _PUBLIC_ NTSTATUS register_process_model(const void *_ops)
NTSTATUS process_model_init(struct loadparm_context *lp_ctx)
{
+ extern NTSTATUS process_model_standard_init(void);
+ extern NTSTATUS process_model_prefork_init(void);
+ extern NTSTATUS process_model_single_init(void);
init_module_fn static_init[] = { STATIC_process_model_MODULES };
init_module_fn *shared_init = load_samba_modules(NULL, lp_ctx, "process_model");
diff --git a/source4/smbd/process_model.mk b/source4/smbd/process_model.mk
index 5201a2e46e..638b280564 100644
--- a/source4/smbd/process_model.mk
+++ b/source4/smbd/process_model.mk
@@ -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
diff --git a/source4/smbd/server.c b/source4/smbd/server.c
index fe38a4e5ab..ded84f2426 100644
--- a/source4/smbd/server.c
+++ b/source4/smbd/server.c
@@ -28,7 +28,6 @@
#include "lib/cmdline/popt_common.h"
#include "system/dir.h"
#include "system/filesys.h"
-#include "build.h"
#include "ldb/include/ldb.h"
#include "registry/registry.h"
#include "ntvfs/ntvfs.h"
@@ -187,7 +186,19 @@ static int binary_smbd_main(const char *binary_name, int argc, const char *argv[
bool opt_interactive = false;
int opt;
poptContext pc;
- init_module_fn static_init[] = { STATIC_service_MODULES };
+ extern NTSTATUS server_service_wrepl_init(void);
+ extern NTSTATUS server_service_kdc_init(void);
+ extern NTSTATUS server_service_ldap_init(void);
+ extern NTSTATUS server_service_web_init(void);
+ extern NTSTATUS server_service_ldap_init(void);
+ extern NTSTATUS server_service_winbind_init(void);
+ extern NTSTATUS server_service_nbtd_init(void);
+ extern NTSTATUS server_service_auth_init(void);
+ extern NTSTATUS server_service_cldapd_init(void);
+ extern NTSTATUS server_service_smb_init(void);
+ extern NTSTATUS server_service_drepl_init(void);
+ extern NTSTATUS server_service_rpc_init(void);
+ init_module_fn static_init[] = { STATIC_smbd_MODULES };
init_module_fn *shared_init;
struct event_context *event_ctx;
NTSTATUS status;
diff --git a/source4/torture/config.mk b/source4/torture/config.mk
index e35a26e49f..8c61771e9b 100644
--- a/source4/torture/config.mk
+++ b/source4/torture/config.mk
@@ -1,25 +1,23 @@
# TORTURE subsystem
[LIBRARY::torture]
-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
+PC_FILES += torture/torture.pc
+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 +25,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 +32,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 +60,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 +114,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 \
@@ -172,7 +122,16 @@ PRIVATE_DEPENDENCIES = \
RPC_NDR_SRVSVC RPC_NDR_WKSSVC RPC_NDR_ROT RPC_NDR_DSSETUP \
RPC_NDR_REMACT RPC_NDR_OXIDRESOLVER WB_HELPER LIBSAMBA-NET \
LIBCLI_AUTH POPT_CREDENTIALS TORTURE_LDAP TORTURE_UTIL TORTURE_RAP \
- dcerpc_server service process_model
+ dcerpc_server service process_model ntvfs SERVICE_SMB
+
+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
@@ -181,27 +140,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 +170,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 +183,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 +195,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 +210,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 +226,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 +233,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 +254,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 +273,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 +291,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 +309,8 @@ PRIVATE_DEPENDENCIES = \
# End BINARY locktest
#################################
+locktest_OBJ_FILES = torture/locktest.o
+
MANPAGES += torture/man/locktest.1
COV_TARGET = test
diff --git a/source4/torture/local/config.mk b/source4/torture/local/config.mk
index 4143d415cf..efdea7f66a 100644
--- a/source4/torture/local/config.mk
+++ b/source4/torture/local/config.mk
@@ -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
+
diff --git a/source4/torture/smb2/config.mk b/source4/torture/smb2/config.mk
index 7463a31318..379632f0e7 100644
--- a/source4/torture/smb2/config.mk
+++ b/source4/torture/smb2/config.mk
@@ -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)
+
diff --git a/source4/torture/smbtorture.c b/source4/torture/smbtorture.c
index 4eeea73003..8f0b988ab4 100644
--- a/source4/torture/smbtorture.c
+++ b/source4/torture/smbtorture.c
@@ -31,7 +31,6 @@
#include "dynconfig.h"
#include "torture/torture.h"
-#include "build.h"
#include "lib/util/dlinklist.h"
#include "librpc/rpc/dcerpc.h"
#include "param/param.h"
diff --git a/source4/torture/torture.c b/source4/torture/torture.c
index 23b8ee3143..8f6dae7665 100644
--- a/source4/torture/torture.c
+++ b/source4/torture/torture.c
@@ -21,7 +21,6 @@
#include "includes.h"
#include "system/time.h"
#include "torture/torture.h"
-#include "build.h"
#include "lib/util/dlinklist.h"
#include "param/param.h"
#include "lib/cmdline/popt_common.h"
@@ -48,6 +47,18 @@ bool torture_register_suite(struct torture_suite *suite)
int torture_init(void)
{
+ extern NTSTATUS torture_base_init(void);
+ extern NTSTATUS torture_ldap_init(void);
+ extern NTSTATUS torture_local_init(void);
+ extern NTSTATUS torture_nbt_init(void);
+ extern NTSTATUS torture_nbench_init(void);
+ extern NTSTATUS torture_rap_init(void);
+ extern NTSTATUS torture_rpc_init(void);
+ extern NTSTATUS torture_smb2_init(void);
+ extern NTSTATUS torture_net_init(void);
+ extern NTSTATUS torture_raw_init(void);
+ extern NTSTATUS torture_unix_init(void);
+ extern NTSTATUS torture_winbind_init(void);
init_module_fn static_init[] = { STATIC_torture_MODULES };
init_module_fn *shared_init = load_samba_modules(NULL, cmdline_lp_ctx, "torture");
diff --git a/source4/torture/winbind/config.mk b/source4/torture/winbind/config.mk
index b64b0647fc..155766a677 100644
--- a/source4/torture/winbind/config.mk
+++ b/source4/torture/winbind/config.mk
@@ -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)
+
diff --git a/source4/utils/config.mk b/source4/utils/config.mk
index 9ebfbbb7e3..9e79898373 100644
--- a/source4/utils/config.mk
+++ b/source4/utils/config.mk
@@ -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
diff --git a/source4/utils/net/config.mk b/source4/utils/net/config.mk
index c07d6a67cb..d3ed02b50e 100644
--- a/source4/utils/net/config.mk
+++ b/source4/utils/net/config.mk
@@ -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)
+
diff --git a/source4/web_server/config.mk b/source4/web_server/config.mk
index 7f38b085f2..86ad04fb7e 100644
--- a/source4/web_server/config.mk
+++ b/source4/web_server/config.mk
@@ -4,11 +4,10 @@
# Start SUBSYSTEM WEB
[MODULE::WEB]
INIT_FUNCTION = server_service_web_init
-SUBSYSTEM = service
+SUBSYSTEM = smbd
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)
diff --git a/source4/winbind/config.mk b/source4/winbind/config.mk
index 8c9b3f1225..3c5b740e68 100644
--- a/source4/winbind/config.mk
+++ b/source4/winbind/config.mk
@@ -4,9 +4,21 @@
# Start SUBSYSTEM WINBIND
[MODULE::WINBIND]
INIT_FUNCTION = server_service_winbind_init
-SUBSYSTEM = service
+SUBSYSTEM = smbd
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 \
@@ -36,36 +48,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
diff --git a/source4/wrepl_server/config.mk b/source4/wrepl_server/config.mk
index a2a6a72fe3..6428a353b1 100644
--- a/source4/wrepl_server/config.mk
+++ b/source4/wrepl_server/config.mk
@@ -4,8 +4,14 @@
# Start SUBSYSTEM WREPL_SRV
[MODULE::WREPL_SRV]
INIT_FUNCTION = server_service_wrepl_init
-SUBSYSTEM = service
-OBJ_FILES = \
+SUBSYSTEM = smbd
+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)
+