mirror of
https://github.com/samba-team/samba.git
synced 2024-12-23 17:34:34 +03:00
r12670: Make a couple of dependencies stricter
Re-introduce and use the OUTPUT_TYPE property for MODULEs to force specific modules to always be included
This commit is contained in:
parent
c563aefb42
commit
f9eede3d40
@ -8,7 +8,7 @@ OBJ_FILES = credentials.o \
|
||||
credentials_ntlm.o \
|
||||
credentials_gensec.o
|
||||
REQUIRED_SUBSYSTEMS = \
|
||||
HEIMDAL GENSEC LIBCLI_AUTH LIBLDB
|
||||
HEIMDAL GENSEC LIBCLI_AUTH LIBLDB SECRETS
|
||||
# End SUBSYSTEM CREDENTIALS
|
||||
#################################
|
||||
|
||||
|
@ -9,7 +9,7 @@ PUBLIC_HEADERS = gensec.h
|
||||
PRIVATE_PROTO_HEADER = gensec_proto.h
|
||||
OBJ_FILES = gensec.o
|
||||
REQUIRED_SUBSYSTEMS = \
|
||||
SCHANNELDB CREDENTIALS
|
||||
CREDENTIALS
|
||||
# End SUBSYSTEM GENSEC
|
||||
#################################
|
||||
|
||||
|
@ -8,6 +8,6 @@ OBJ_FILES = kerberos.o \
|
||||
kerberos_pac.o \
|
||||
gssapi_parse.o \
|
||||
krb5_init_context.o
|
||||
REQUIRED_SUBSYSTEMS = KERBEROS_LIB NDR_KRB5PAC
|
||||
REQUIRED_SUBSYSTEMS = HEIMDAL_KRB5 NDR_KRB5PAC
|
||||
# End SUBSYSTEM KERBEROS
|
||||
#################################
|
||||
|
@ -43,6 +43,8 @@ my $section_types = {
|
||||
"ENABLE" => "bool",
|
||||
"NOPROTO" => "bool",
|
||||
|
||||
"OUTPUT_TYPE" => "string",
|
||||
|
||||
"MANPAGE" => "string",
|
||||
"PRIVATE_PROTO_HEADER" => "string"
|
||||
},
|
||||
|
@ -69,12 +69,12 @@ sub check_module($$$)
|
||||
if (defined($mod->{CHOSEN_BUILD}) and $mod->{CHOSEN_BUILD} ne "DEFAULT")
|
||||
{
|
||||
$mod->{OUTPUT_TYPE} = $mod->{CHOSEN_BUILD};
|
||||
} else {
|
||||
} elsif (not defined($mod->{OUTPUT_TYPE})) {
|
||||
$mod->{OUTPUT_TYPE} = $default_ot;
|
||||
}
|
||||
|
||||
if ($mod->{OUTPUT_TYPE} eq "SHARED_LIBRARY") {
|
||||
$mod->{INSTALLDIR} = "LIBDIR/$mod->{SUBSYSTEM}";
|
||||
$mod->{INSTALLDIR} = "MODULESDIR/$mod->{SUBSYSTEM}";
|
||||
push (@{$mod->{REQUIRED_SUBSYSTEMS}}, $mod->{SUBSYSTEM});
|
||||
} else {
|
||||
push (@{$INPUT->{$mod->{SUBSYSTEM}}{REQUIRED_SUBSYSTEMS}}, $mod->{NAME});
|
||||
|
@ -242,6 +242,7 @@ sub SharedLibrary($$)
|
||||
my ($self,$ctx) = @_;
|
||||
|
||||
push (@{$self->{shared_libs}}, "bin/$ctx->{LIBRARY_REALNAME}");
|
||||
push (@{$self->{shared_modules}}, "bin/$ctx->{LIBRARY_REALNAME}");
|
||||
|
||||
$self->_prepare_list($ctx, "OBJ_LIST");
|
||||
$self->_prepare_list($ctx, "CFLAGS");
|
||||
@ -498,6 +499,7 @@ sub write($$)
|
||||
$self->output("ALL_OBJS = " . array2oneperline($self->{all_objs}) . "\n");
|
||||
$self->output("PROTO_OBJS = " . array2oneperline($self->{proto_objs}) . "\n");
|
||||
$self->output("PROTO_HEADERS = " . array2oneperline($self->{proto_headers}) . "\n");
|
||||
$self->output("SHARED_MODULES = " . array2oneperline($self->{shared_modules}) . "\n");
|
||||
|
||||
$self->_prepare_mk_files();
|
||||
|
||||
|
@ -6,7 +6,7 @@ include samdb/ldb_modules/config.mk
|
||||
# Start SUBSYSTEM SAMDB
|
||||
[SUBSYSTEM::SAMDB]
|
||||
PRIVATE_PROTO_HEADER = samdb/samdb.h
|
||||
REQUIRED_SUBSYSTEMS = DB_WRAP
|
||||
REQUIRED_SUBSYSTEMS = DB_WRAP LIBCLI_LDAP
|
||||
OBJ_FILES = \
|
||||
samdb/samdb.o \
|
||||
samdb/samdb_privilege.o \
|
||||
|
@ -2,6 +2,7 @@
|
||||
# Start MODULE libldb_objectguid
|
||||
[MODULE::libldb_objectguid]
|
||||
SUBSYSTEM = LIBLDB
|
||||
OUTPUT_TYPE = MERGEDOBJ
|
||||
OBJ_FILES = \
|
||||
objectguid.o
|
||||
REQUIRED_SUBSYSTEMS = \
|
||||
@ -13,8 +14,10 @@ REQUIRED_SUBSYSTEMS = \
|
||||
# Start MODULE libldb_samldb
|
||||
[MODULE::libldb_samldb]
|
||||
SUBSYSTEM = LIBLDB
|
||||
OUTPUT_TYPE = MERGEDOBJ
|
||||
OBJ_FILES = \
|
||||
samldb.o
|
||||
REQUIRED_SUBSYSTEMS = SAMDB
|
||||
#
|
||||
# End MODULE libldb_samldb
|
||||
################################################
|
||||
@ -23,6 +26,7 @@ OBJ_FILES = \
|
||||
# Start MODULE libldb_samba3sam
|
||||
[MODULE::libldb_samba3sam]
|
||||
SUBSYSTEM = LIBLDB
|
||||
OUTPUT_TYPE = MERGEDOBJ
|
||||
OBJ_FILES = \
|
||||
samba3sam.o
|
||||
#
|
||||
@ -33,6 +37,7 @@ OBJ_FILES = \
|
||||
# Start MODULE libldb_proxy
|
||||
[MODULE::libldb_proxy]
|
||||
SUBSYSTEM = LIBLDB
|
||||
OUTPUT_TYPE = MERGEDOBJ
|
||||
OBJ_FILES = \
|
||||
proxy.o
|
||||
#
|
||||
@ -44,6 +49,7 @@ OBJ_FILES = \
|
||||
# Start MODULE libldb_rootdse
|
||||
[MODULE::libldb_rootdse]
|
||||
SUBSYSTEM = LIBLDB
|
||||
OUTPUT_TYPE = MERGEDOBJ
|
||||
OBJ_FILES = \
|
||||
rootdse.o
|
||||
#
|
||||
@ -54,6 +60,7 @@ OBJ_FILES = \
|
||||
# Start MODULE libldb_password_hash
|
||||
[MODULE::libldb_password_hash]
|
||||
SUBSYSTEM = LIBLDB
|
||||
OUTPUT_TYPE = MERGEDOBJ
|
||||
OBJ_FILES = \
|
||||
password_hash.o
|
||||
REQUIRED_SUBSYSTEMS = \
|
||||
|
@ -87,6 +87,7 @@ OBJ_FILES = \
|
||||
../heimdal/lib/gssapi/get_mic.o \
|
||||
../heimdal/lib/gssapi/import_name.o \
|
||||
../heimdal/lib/gssapi/init.o
|
||||
REQUIRED_SUBSYSTEMS = KERBEROS HEIMDAL_KRB5
|
||||
NOPROTO = YES
|
||||
# End SUBSYSTEM HEIMDAL_GSSAPI
|
||||
#######################
|
||||
@ -450,7 +451,7 @@ heimdal_clean: hdb_asn1_clean spnego_asn1_clean krb5_asn1_clean
|
||||
[LIBRARY::HEIMDAL]
|
||||
NOPROTO = YES
|
||||
REQUIRED_SUBSYSTEMS = \
|
||||
HEIMDAL_GSSAPI HEIMDAL_KRB5 \
|
||||
HEIMDAL_GSSAPI HEIMDAL_KRB5 KERBEROS \
|
||||
HEIMDAL_ASN1 HEIMDAL_DES HEIMDAL_ROKEN HEIMDAL_COM_ERR HEIMDAL_VERS HEIMDAL_GLUE EXT_LIB_RESOLV
|
||||
# End SUBSYSTEM HEIMDAL
|
||||
#######################
|
||||
|
@ -97,7 +97,7 @@ REQUIRED_SUBSYSTEMS = \
|
||||
[SUBSYSTEM::DB_WRAP]
|
||||
OBJ_FILES = db_wrap.o \
|
||||
gendb.o
|
||||
REQUIRED_SUBSYSTEMS = LIBLDB
|
||||
REQUIRED_SUBSYSTEMS = LIBLDB LIBTDB
|
||||
|
||||
[SUBSYSTEM::PIDFILE]
|
||||
OBJ_FILES = pidfile.o
|
||||
|
@ -2,6 +2,7 @@
|
||||
# Start MODULE libldb_operational
|
||||
[MODULE::libldb_operational]
|
||||
SUBSYSTEM = LIBLDB
|
||||
OUTPUT_TYPE = MERGEDOBJ
|
||||
OBJ_FILES = \
|
||||
modules/operational.o
|
||||
# End MODULE libldb_operational
|
||||
@ -11,6 +12,7 @@ OBJ_FILES = \
|
||||
# Start MODULE libldb_objectclass
|
||||
[MODULE::libldb_objectclass]
|
||||
SUBSYSTEM = LIBLDB
|
||||
OUTPUT_TYPE = MERGEDOBJ
|
||||
OBJ_FILES = \
|
||||
modules/objectclass.o
|
||||
# End MODULE libldb_objectclass
|
||||
@ -20,6 +22,7 @@ OBJ_FILES = \
|
||||
# Start MODULE libldb_rdn_name
|
||||
[MODULE::libldb_rdn_name]
|
||||
SUBSYSTEM = LIBLDB
|
||||
OUTPUT_TYPE = MERGEDOBJ
|
||||
OBJ_FILES = \
|
||||
modules/rdn_name.o
|
||||
# End MODULE libldb_rdn_name
|
||||
@ -29,6 +32,7 @@ OBJ_FILES = \
|
||||
# Start MODULE libldb_schema
|
||||
[MODULE::libldb_schema]
|
||||
SUBSYSTEM = LIBLDB
|
||||
OUTPUT_TYPE = MERGEDOBJ
|
||||
OBJ_FILES = \
|
||||
modules/schema.o
|
||||
# End MODULE libldb_schema
|
||||
@ -38,6 +42,7 @@ OBJ_FILES = \
|
||||
# Start MODULE libldb_ildap
|
||||
[MODULE::libldb_ildap]
|
||||
SUBSYSTEM = LIBLDB
|
||||
OUTPUT_TYPE = MERGEDOBJ
|
||||
OBJ_FILES = \
|
||||
ldb_ildap/ldb_ildap.o
|
||||
REQUIRED_SUBSYSTEMS = \
|
||||
@ -50,6 +55,7 @@ NOPROTO = YES
|
||||
# Start MODULE libldb_map
|
||||
[MODULE::libldb_map]
|
||||
SUBSYSTEM = LIBLDB
|
||||
OUTPUT_TYPE = MERGEDOBJ
|
||||
OBJ_FILES = modules/ldb_map.o
|
||||
# End MODULE libldb_map
|
||||
################################################
|
||||
@ -58,6 +64,7 @@ OBJ_FILES = modules/ldb_map.o
|
||||
# Start MODULE libldb_sqlite3
|
||||
[MODULE::libldb_sqlite3]
|
||||
SUBSYSTEM = LIBLDB
|
||||
OUTPUT_TYPE = MERGEDOBJ
|
||||
OBJ_FILES = \
|
||||
ldb_sqlite3/ldb_sqlite3.o
|
||||
REQUIRED_SUBSYSTEMS = \
|
||||
@ -70,6 +77,7 @@ NOPROTO = YES
|
||||
# Start MODULE libldb_tdb
|
||||
[MODULE::libldb_tdb]
|
||||
SUBSYSTEM = LIBLDB
|
||||
OUTPUT_TYPE = MERGEDOBJ
|
||||
OBJ_FILES = \
|
||||
ldb_tdb/ldb_tdb.o \
|
||||
ldb_tdb/ldb_search.o \
|
||||
|
@ -46,6 +46,7 @@ OBJ_FILES = \
|
||||
# Start MODULE registry_rpc
|
||||
[MODULE::registry_rpc]
|
||||
INIT_FUNCTION = registry_rpc_init
|
||||
OUTPUT_TYPE = MERGEDOBJ
|
||||
SUBSYSTEM = REGISTRY
|
||||
OBJ_FILES = \
|
||||
reg_backend_rpc.o
|
||||
|
@ -3,6 +3,7 @@
|
||||
# Start MODULE socket_ipv4
|
||||
[MODULE::socket_ipv4]
|
||||
SUBSYSTEM = SOCKET
|
||||
OUTPUT_TYPE = MERGEDOBJ
|
||||
OBJ_FILES = \
|
||||
socket_ipv4.o
|
||||
NOPROTO=YES
|
||||
@ -13,6 +14,7 @@ NOPROTO=YES
|
||||
# Start MODULE socket_ipv6
|
||||
[MODULE::socket_ipv6]
|
||||
SUBSYSTEM = SOCKET
|
||||
OUTPUT_TYPE = MERGEDOBJ
|
||||
OBJ_FILES = \
|
||||
socket_ipv6.o
|
||||
NOPROTO=YES
|
||||
@ -23,6 +25,7 @@ NOPROTO=YES
|
||||
# Start MODULE socket_unix
|
||||
[MODULE::socket_unix]
|
||||
SUBSYSTEM = SOCKET
|
||||
OUTPUT_TYPE = MERGEDOBJ
|
||||
OBJ_FILES = \
|
||||
socket_unix.o
|
||||
NOPROTO=YES
|
||||
|
@ -5,6 +5,6 @@ OBJ_FILES = credentials.o \
|
||||
session.o \
|
||||
smbencrypt.o
|
||||
REQUIRED_SUBSYSTEMS = \
|
||||
AUTH SCHANNELDB
|
||||
AUTH SCHANNELDB gensec_ntlmssp
|
||||
# End SUBSYSTEM LIBCLI_AUTH
|
||||
#################################
|
||||
|
@ -25,6 +25,6 @@ OBJ_FILES = \
|
||||
userinfo.o \
|
||||
userman.o \
|
||||
domain.o
|
||||
REQUIRED_SUBSYSTEMS = RPC_NDR_SAMR RPC_NDR_LSA RPC_NDR_SRVSVC RPC_NDR_DRSUAPI LIBCLI_COMPOSITE LIBCLI_RESOLVE LIBSAMBA3 LIBCLI_CLDAP
|
||||
REQUIRED_SUBSYSTEMS = RPC_NDR_SAMR RPC_NDR_LSA RPC_NDR_SRVSVC RPC_NDR_DRSUAPI LIBCLI_COMPOSITE LIBCLI_RESOLVE LIBSAMBA3 LIBCLI_CLDAP gensec_schannel
|
||||
# End SUBSYSTEM LIBNET
|
||||
#################################
|
||||
|
@ -26,8 +26,6 @@ REQUIRED_SUBSYSTEMS = LIBCOMPRESSION
|
||||
# End SUBSYSTEM NDR_COMPRESSION
|
||||
################################################
|
||||
|
||||
include rpc/config.mk
|
||||
|
||||
[SUBSYSTEM::NDR_SECURITY_HELPER]
|
||||
OBJ_FILES = ndr/ndr_sec_helper.o ndr/ndr_sec.o
|
||||
|
||||
@ -127,7 +125,7 @@ REQUIRED_SUBSYSTEMS = LIBNDR
|
||||
[SUBSYSTEM::NDR_SAMR]
|
||||
OBJ_FILES = gen_ndr/ndr_samr.o
|
||||
NOPROTO = YES
|
||||
REQUIRED_SUBSYSTEMS = LIBNDR
|
||||
REQUIRED_SUBSYSTEMS = LIBNDR NDR_LSA
|
||||
|
||||
[SUBSYSTEM::NDR_SPOOLSS]
|
||||
OBJ_FILES = gen_ndr/ndr_spoolss.o
|
||||
@ -273,7 +271,7 @@ REQUIRED_SUBSYSTEMS = LIBNDR
|
||||
[SUBSYSTEM::NDR_KRB5PAC]
|
||||
OBJ_FILES = gen_ndr/ndr_krb5pac.o
|
||||
NOPROTO = YES
|
||||
REQUIRED_SUBSYSTEMS = LIBNDR NDR_KRB5PAC_UTIL
|
||||
REQUIRED_SUBSYSTEMS = LIBNDR NDR_KRB5PAC_UTIL NDR_NETLOGON
|
||||
|
||||
[SUBSYSTEM::NDR_KRB5PAC_UTIL]
|
||||
OBJ_FILES = ndr/ndr_krb5pac.o
|
||||
@ -522,7 +520,18 @@ MINOR_VERSION = 0
|
||||
DESCRIPTION = DCE/RPC client library
|
||||
RELEASE_VERSION = 1
|
||||
PUBLIC_HEADERS = rpc/dcerpc.h
|
||||
REQUIRED_SUBSYSTEMS = LIBNDR RPC_RAW LIBSMB NDR_MISC NDR_DCERPC NDR_SCHANNEL NDR_LSA NDR_NETLOGON NDR_SAMR NDR_UNIXINFO RPC_NDR_NETLOGON RPC_NDR_EPMAPPER
|
||||
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
|
||||
REQUIRED_SUBSYSTEMS = SOCKET LIBNDR LIBSMB NDR_MISC NDR_DCERPC NDR_SCHANNEL NDR_LSA NDR_NETLOGON NDR_SAMR NDR_UNIXINFO RPC_NDR_NETLOGON RPC_NDR_EPMAPPER
|
||||
# End SUBSYSTEM LIBRPC
|
||||
################################################
|
||||
|
||||
|
@ -1,18 +0,0 @@
|
||||
################################################
|
||||
# Start SUBSYSTEM RPC_RAW
|
||||
[SUBSYSTEM::RPC_RAW]
|
||||
PRIVATE_PROTO_HEADER = dcerpc_proto.h
|
||||
OBJ_FILES = \
|
||||
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
|
||||
REQUIRED_SUBSYSTEMS = SOCKET
|
||||
# End SUBSYSTEM RPC_RAW
|
||||
################################################
|
||||
|
@ -29,9 +29,11 @@ include client/config.mk
|
||||
include libcli/config.mk
|
||||
include scripting/config.mk
|
||||
include kdc/config.mk
|
||||
include passdb/config.mk
|
||||
|
||||
binaries: $(BINARIES)
|
||||
libraries: $(STATIC_LIBS) $(SHARED_LIBS)
|
||||
modules: $(SHARED_MODULES)
|
||||
headers: $(PUBLIC_HEADERS)
|
||||
manpages: $(MANPAGES)
|
||||
everything: all
|
||||
|
@ -2,6 +2,5 @@
|
||||
OBJ_FILES = ../dynconfig.o \
|
||||
loadparm.o \
|
||||
params.o \
|
||||
../passdb/secrets.o \
|
||||
generic.o
|
||||
REQUIRED_SUBSYSTEMS = LIBBASIC DB_WRAP
|
||||
|
3
source/passdb/config.mk
Normal file
3
source/passdb/config.mk
Normal file
@ -0,0 +1,3 @@
|
||||
[SUBSYSTEM::SECRETS]
|
||||
OBJ_FILES = secrets.o
|
||||
REQUIRED_SUBSYSTEMS = SAMDB
|
@ -119,6 +119,7 @@ REQUIRED_SUBSYSTEMS = \
|
||||
[MODULE::dcerpc_winreg]
|
||||
INIT_FUNCTION = dcerpc_server_winreg_init
|
||||
SUBSYSTEM = DCERPC
|
||||
OUTPUT_TYPE = MERGEDOBJ
|
||||
OBJ_FILES = \
|
||||
winreg/rpc_winreg.o
|
||||
REQUIRED_SUBSYSTEMS = \
|
||||
@ -159,6 +160,7 @@ REQUIRED_SUBSYSTEMS = \
|
||||
[MODULE::dcerpc_spoolss]
|
||||
INIT_FUNCTION = dcerpc_server_spoolss_init
|
||||
SUBSYSTEM = DCERPC
|
||||
OUTPUT_TYPE = MERGEDOBJ
|
||||
OBJ_FILES = \
|
||||
spoolss/dcesrv_spoolss.o
|
||||
REQUIRED_SUBSYSTEMS = \
|
||||
@ -207,7 +209,8 @@ OBJ_FILES = \
|
||||
handles.o
|
||||
REQUIRED_SUBSYSTEMS = \
|
||||
LIBCLI_AUTH \
|
||||
LIBNDR
|
||||
LIBNDR \
|
||||
LIBRPC
|
||||
#
|
||||
# End SUBSYSTEM DCERPC
|
||||
################################################
|
||||
|
@ -14,6 +14,7 @@ REQUIRED_SUBSYSTEMS = \
|
||||
# Start MODULE server_service_smb
|
||||
[MODULE::server_service_smb]
|
||||
INIT_FUNCTION = server_service_smb_init
|
||||
OUTPUT_TYPE = MERGEDOBJ
|
||||
SUBSYSTEM = SERVER_SERVICE
|
||||
REQUIRED_SUBSYSTEMS = \
|
||||
SMB
|
||||
@ -25,6 +26,7 @@ REQUIRED_SUBSYSTEMS = \
|
||||
[MODULE::server_service_rpc]
|
||||
INIT_FUNCTION = server_service_rpc_init
|
||||
SUBSYSTEM = SERVER_SERVICE
|
||||
OUTPUT_TYPE = MERGEDOBJ
|
||||
REQUIRED_SUBSYSTEMS = \
|
||||
DCERPC
|
||||
# End MODULE server_rpc
|
||||
|
Loading…
Reference in New Issue
Block a user