mirror of
https://github.com/samba-team/samba.git
synced 2024-12-22 13:34:15 +03:00
s3:waf: Make PARAM and SMBREGISTRY a subsystem of smbconf only
This is the only way to resolve cirular dependencies with these libraries. I've tried several ways but this is the only way to do it correctly. In future we should try to seperate them by passing down information or making a more lightweight loadparm mechanism. +---------+ +-------------+ | | | | | param <---------+ +--------+ smbregistry | | | | | | | +----+----+ | | +------^------+ | +---+----v--+ | | | | | +----------> smbconf +------------+ | | +-----------+ Signed-off-by: Andreas Schneider <asn@samba.org> Reviewed-by: Michael Adam <obnox@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
This commit is contained in:
parent
4c4fb6926d
commit
f858121d8f
@ -3,5 +3,5 @@
|
||||
if bld.env.HAVE_FUSE:
|
||||
bld.SAMBA_BINARY('smb2mount',
|
||||
source='smb2mount.c clifuse.c',
|
||||
deps='param popt_samba3 libsmb fuse',
|
||||
deps='smbconf popt_samba3 libsmb fuse',
|
||||
install=False)
|
||||
|
@ -19,7 +19,7 @@ def build(bld):
|
||||
libsmb_setget.c''',
|
||||
public_deps='''
|
||||
talloc
|
||||
param
|
||||
smbconf
|
||||
libsmb
|
||||
KRBCLIENT
|
||||
msrpc3
|
||||
|
@ -33,7 +33,7 @@ bld.SAMBA3_BINARY('nmbd',
|
||||
deps='''
|
||||
talloc
|
||||
tevent
|
||||
param
|
||||
smbconf
|
||||
libsmb
|
||||
popt_samba3
|
||||
''',
|
||||
|
@ -6,7 +6,7 @@ bld.SAMBA3_SUBSYSTEM('PARAM_UTIL',
|
||||
|
||||
bld.SAMBA3_SUBSYSTEM('LOADPARM_CTX',
|
||||
source='loadparm_ctx.c',
|
||||
deps='''talloc param''')
|
||||
deps='''talloc smbconf''')
|
||||
|
||||
bld.SAMBA_GENERATOR('s3_param_proto_h',
|
||||
source= '../../script/generate_param.py ../../docs-xml/smbdotconf/parameters.all.xml',
|
||||
@ -16,18 +16,18 @@ bld.SAMBA_GENERATOR('s3_param_proto_h',
|
||||
|
||||
bld.SAMBA3_PYTHON('pys3param',
|
||||
source='pyparam.c',
|
||||
deps='param',
|
||||
deps='smbconf',
|
||||
public_deps='samba-hostconfig pytalloc-util talloc',
|
||||
realname='samba/samba3/param.so')
|
||||
|
||||
bld.SAMBA3_SUBSYSTEM('param_service',
|
||||
source='service.c',
|
||||
deps = 'USER_UTIL param PRINTING')
|
||||
deps = 'USER_UTIL smbconf PRINTING')
|
||||
|
||||
bld.SAMBA3_BINARY('test_lp_load',
|
||||
source='test_lp_load.c',
|
||||
deps='''
|
||||
talloc
|
||||
param
|
||||
smbconf
|
||||
popt_samba3''',
|
||||
install=False)
|
||||
|
@ -28,7 +28,7 @@ bld.SAMBA3_BINARY('rpcclient',
|
||||
popt_samba3
|
||||
pdb
|
||||
libsmb
|
||||
param
|
||||
smbconf
|
||||
ndr-standard
|
||||
msrpc3
|
||||
SMBREADLINE
|
||||
|
@ -8,12 +8,12 @@ bld.SAMBA3_BINARY('notifyd-tests',
|
||||
source='tests.c',
|
||||
install=False,
|
||||
deps='''
|
||||
param
|
||||
smbconf
|
||||
''')
|
||||
|
||||
bld.SAMBA3_BINARY('notifydd',
|
||||
source='notifydd.c',
|
||||
install=False,
|
||||
deps='''notifyd
|
||||
param
|
||||
smbconf
|
||||
''')
|
||||
|
@ -9,14 +9,14 @@ bld.SAMBA3_BINARY('profiles',
|
||||
deps='''
|
||||
talloc
|
||||
popt_samba3
|
||||
param
|
||||
smbconf
|
||||
REGFIO''')
|
||||
|
||||
bld.SAMBA3_BINARY('smbcontrol',
|
||||
source='smbcontrol.c',
|
||||
deps='''
|
||||
talloc
|
||||
param
|
||||
smbconf
|
||||
popt_samba3
|
||||
PRINTBASE''')
|
||||
|
||||
@ -24,7 +24,7 @@ bld.SAMBA3_BINARY('smbtree',
|
||||
source='smbtree.c',
|
||||
deps='''
|
||||
talloc
|
||||
param
|
||||
smbconf
|
||||
libsmb
|
||||
msrpc3
|
||||
popt_samba3
|
||||
@ -34,7 +34,7 @@ bld.SAMBA3_BINARY('smbpasswd',
|
||||
source='smbpasswd.c',
|
||||
deps='''
|
||||
talloc
|
||||
param
|
||||
smbconf
|
||||
pdb
|
||||
PASSWD_UTIL
|
||||
PASSCHANGE''')
|
||||
@ -43,7 +43,7 @@ bld.SAMBA3_BINARY('pdbedit',
|
||||
source='pdbedit.c',
|
||||
deps='''
|
||||
talloc
|
||||
param
|
||||
smbconf
|
||||
popt_samba3
|
||||
pdb
|
||||
PASSWD_UTIL''')
|
||||
@ -59,7 +59,7 @@ bld.SAMBA3_BINARY('nmblookup',
|
||||
source='nmblookup.c',
|
||||
deps='''
|
||||
talloc
|
||||
param
|
||||
smbconf
|
||||
popt_samba3
|
||||
LIBNMB''')
|
||||
|
||||
@ -85,7 +85,7 @@ bld.SAMBA3_BINARY('eventlogadm',
|
||||
source='eventlogadm.c',
|
||||
deps='''
|
||||
talloc
|
||||
param
|
||||
smbconf
|
||||
LIBEVENTLOG''')
|
||||
|
||||
bld.SAMBA3_BINARY('sharesec',
|
||||
@ -110,7 +110,7 @@ bld.SAMBA3_BINARY('smbfilter',
|
||||
source='smbfilter.c',
|
||||
deps='''
|
||||
talloc
|
||||
param
|
||||
smbconf
|
||||
LIBNMB''',
|
||||
install=False)
|
||||
|
||||
@ -149,14 +149,14 @@ bld.SAMBA3_BINARY('samba-regedit',
|
||||
regedit_wrap.c regedit_treeview.c
|
||||
regedit_valuelist.c regedit_dialog.c
|
||||
regedit_hexedit.c regedit_list.c""",
|
||||
deps='ncurses menu panel form registry param popt_samba3 smbregistry',
|
||||
deps='ncurses menu panel form registry smbconf popt_samba3',
|
||||
enabled=bld.env.build_regedit)
|
||||
|
||||
bld.SAMBA3_BINARY('testparm',
|
||||
source='testparm.c',
|
||||
deps='''
|
||||
talloc
|
||||
param
|
||||
smbconf
|
||||
popt_samba3''')
|
||||
|
||||
bld.SAMBA3_BINARY('net',
|
||||
@ -218,7 +218,7 @@ bld.SAMBA3_BINARY('net',
|
||||
popt_samba3
|
||||
pdb
|
||||
libsmb
|
||||
param
|
||||
smbconf
|
||||
KRBCLIENT
|
||||
ndr-standard
|
||||
msrpc3
|
||||
|
@ -116,7 +116,7 @@ bld.SAMBA3_MODULE('idmap_autorid',
|
||||
|
||||
bld.SAMBA3_LIBRARY('nss_info',
|
||||
source='nss_info.c',
|
||||
deps='samba-util param',
|
||||
deps='samba-util smbconf',
|
||||
private_library=True)
|
||||
|
||||
bld.SAMBA3_MODULE('nss_info_template',
|
||||
|
@ -57,7 +57,7 @@ bld.SAMBA3_LIBRARY('netapi',
|
||||
|
||||
bld.SAMBA3_LIBRARY('gse',
|
||||
source='librpc/crypto/gse_krb5.c librpc/crypto/gse.c',
|
||||
deps='krb5samba gensec param KRBCLIENT secrets3',
|
||||
deps='krb5samba gensec smbconf KRBCLIENT secrets3',
|
||||
private_library=True)
|
||||
|
||||
bld.SAMBA3_LIBRARY('msrpc3',
|
||||
@ -213,26 +213,6 @@ bld.SAMBA3_SUBSYSTEM('SERVER_MUTEX',
|
||||
source='lib/server_mutex.c',
|
||||
deps='talloc')
|
||||
|
||||
bld.SAMBA3_SUBSYSTEM('param',
|
||||
source='''
|
||||
param/loadparm.c
|
||||
lib/sharesec.c
|
||||
lib/ldap_debug_handler.c
|
||||
lib/util_names.c
|
||||
''',
|
||||
deps='''
|
||||
samba-util
|
||||
PARAM_UTIL
|
||||
ldap
|
||||
lber
|
||||
LOADPARM_CTX
|
||||
samba3core
|
||||
smbconf
|
||||
param_local.h
|
||||
param_global.h
|
||||
cups
|
||||
''')
|
||||
|
||||
# this includes only the low level parse code, not stuff
|
||||
# that requires knowledge of security contexts
|
||||
bld.SAMBA3_SUBSYSTEM('REG_PARSE_PRS',
|
||||
@ -246,7 +226,8 @@ bld.SAMBA3_SUBSYSTEM('REG_API_REGF',
|
||||
source='registry/reg_api_regf.c',
|
||||
deps='samba-util')
|
||||
|
||||
bld.SAMBA3_LIBRARY('smbregistry',
|
||||
# Do not link against this use 'smbconf'
|
||||
bld.SAMBA3_SUBSYSTEM('SMBREGISTRY',
|
||||
source='''
|
||||
registry/reg_api.c
|
||||
registry/reg_dispatcher.c
|
||||
@ -272,10 +253,9 @@ bld.SAMBA3_LIBRARY('smbregistry',
|
||||
errors3
|
||||
dbwrap
|
||||
samba3-util
|
||||
''',
|
||||
allow_undefined_symbols=True,
|
||||
private_library=True)
|
||||
''')
|
||||
|
||||
# Do not link against this use 'smbconf'
|
||||
bld.SAMBA3_SUBSYSTEM('REG_SMBCONF',
|
||||
source='''
|
||||
registry/reg_backend_smbconf.c
|
||||
@ -283,7 +263,7 @@ bld.SAMBA3_SUBSYSTEM('REG_SMBCONF',
|
||||
registry/reg_util_token.c
|
||||
registry/reg_api_util.c
|
||||
''',
|
||||
deps='smbregistry')
|
||||
deps='SMBREGISTRY')
|
||||
|
||||
bld.SAMBA3_SUBSYSTEM('REG_FULL',
|
||||
source='''
|
||||
@ -298,7 +278,7 @@ bld.SAMBA3_SUBSYSTEM('REG_FULL',
|
||||
registry/reg_init_full.c
|
||||
registry/reg_perfcount.c''',
|
||||
deps='''
|
||||
REG_SMBCONF
|
||||
smbconf
|
||||
tdb-wrap3
|
||||
''')
|
||||
|
||||
@ -451,7 +431,7 @@ bld.SAMBA3_SUBSYSTEM('samba3core',
|
||||
SAMBA_VERSION
|
||||
PTHREADPOOL
|
||||
interfaces
|
||||
param
|
||||
smbconf
|
||||
dbwrap
|
||||
samba3-util
|
||||
errors3
|
||||
@ -529,7 +509,7 @@ bld.SAMBA3_LIBRARY('secrets3',
|
||||
''',
|
||||
deps='''
|
||||
NDR_SECRETS
|
||||
param
|
||||
smbconf
|
||||
samba3util
|
||||
dbwrap
|
||||
''',
|
||||
@ -537,7 +517,7 @@ bld.SAMBA3_LIBRARY('secrets3',
|
||||
|
||||
bld.SAMBA3_LIBRARY('smbldap',
|
||||
source='lib/smbldap.c',
|
||||
deps='ldap lber samba-util param',
|
||||
deps='ldap lber samba-util smbconf',
|
||||
enabled=bld.CONFIG_SET("HAVE_LDAP"),
|
||||
private_library=False,
|
||||
abi_directory='lib/ABI',
|
||||
@ -568,7 +548,7 @@ bld.SAMBA3_LIBRARY('ads',
|
||||
ldap
|
||||
lber
|
||||
KRBCLIENT
|
||||
param
|
||||
smbconf
|
||||
LIBNMB
|
||||
libsmb
|
||||
DCUTIL
|
||||
@ -584,6 +564,27 @@ bld.SAMBA3_SUBSYSTEM('LIBADS_PRINTER',
|
||||
source='libads/ldap_printer.c',
|
||||
deps='samba-util krb5samba')
|
||||
|
||||
# Only smbconf should link against this subsystem, else we will create
|
||||
# a circular dependency.
|
||||
bld.SAMBA3_SUBSYSTEM('SMBCONF_PARAM',
|
||||
source='''
|
||||
param/loadparm.c
|
||||
lib/sharesec.c
|
||||
lib/ldap_debug_handler.c
|
||||
lib/util_names.c
|
||||
''',
|
||||
deps='''
|
||||
samba-util
|
||||
PARAM_UTIL
|
||||
ldap
|
||||
lber
|
||||
LOADPARM_CTX
|
||||
samba3core
|
||||
param_local.h
|
||||
param_global.h
|
||||
cups
|
||||
''')
|
||||
|
||||
bld.SAMBA3_LIBRARY('smbconf',
|
||||
source='''
|
||||
lib/smbconf/smbconf_init.c
|
||||
@ -598,9 +599,8 @@ bld.SAMBA3_LIBRARY('smbconf',
|
||||
charset
|
||||
cli_smb_common
|
||||
errors3
|
||||
param
|
||||
SMBCONF_PARAM
|
||||
samba-util
|
||||
smbregistry
|
||||
talloc
|
||||
util_reg
|
||||
''',
|
||||
@ -826,7 +826,7 @@ bld.SAMBA3_LIBRARY('printing_migrate',
|
||||
cli_spoolss
|
||||
RPC_NDR_WINREG
|
||||
LIBCLI_WINREG
|
||||
param
|
||||
smbconf
|
||||
''',
|
||||
private_library=True)
|
||||
|
||||
@ -1037,7 +1037,7 @@ bld.SAMBA3_LIBRARY('libcli_netlogon3',
|
||||
RPC_NDR_NETLOGON
|
||||
INIT_NETLOGON
|
||||
cliauth
|
||||
param
|
||||
smbconf
|
||||
NETLOGON_CREDS_CLI''',
|
||||
private_library=True)
|
||||
|
||||
@ -1048,7 +1048,7 @@ bld.SAMBA3_LIBRARY('cli_spoolss',
|
||||
''',
|
||||
deps='''
|
||||
RPC_NDR_SPOOLSS
|
||||
param
|
||||
smbconf
|
||||
secrets3''',
|
||||
private_library=True)
|
||||
|
||||
@ -1116,7 +1116,7 @@ bld.SAMBA3_BINARY('client/smbclient',
|
||||
deps='''
|
||||
talloc
|
||||
popt_samba3
|
||||
param
|
||||
smbconf
|
||||
ndr-standard
|
||||
SMBREADLINE
|
||||
libsmb
|
||||
@ -1131,7 +1131,7 @@ bld.SAMBA3_BINARY('smbspool',
|
||||
deps='''
|
||||
talloc
|
||||
popt_samba3
|
||||
param
|
||||
smbconf
|
||||
libsmb
|
||||
samba3core
|
||||
''')
|
||||
@ -1149,7 +1149,7 @@ bld.SAMBA3_BINARY('locktest2',
|
||||
source='torture/locktest2.c',
|
||||
deps='''
|
||||
talloc
|
||||
param
|
||||
smbconf
|
||||
libsmb
|
||||
LOCKING
|
||||
''',
|
||||
@ -1166,7 +1166,7 @@ bld.SAMBA3_BINARY('smbstatus',
|
||||
source=smbstatus_source,
|
||||
deps='''
|
||||
talloc
|
||||
param
|
||||
smbconf
|
||||
popt_samba3
|
||||
smbd_base
|
||||
LOCKING
|
||||
@ -1209,7 +1209,7 @@ bld.SAMBA3_BINARY('smbtorture' + bld.env.suffix3,
|
||||
''',
|
||||
deps='''
|
||||
talloc
|
||||
param
|
||||
smbconf
|
||||
libsmb
|
||||
msrpc3
|
||||
TLDAP
|
||||
@ -1228,7 +1228,7 @@ bld.SAMBA3_BINARY('smbconftort',
|
||||
source='lib/smbconf/testsuite.c',
|
||||
deps='''
|
||||
talloc
|
||||
param
|
||||
smbconf
|
||||
popt_samba3
|
||||
''',
|
||||
install=False)
|
||||
@ -1242,7 +1242,7 @@ bld.SAMBA3_BINARY('msgtest',
|
||||
source='torture/msgtest.c',
|
||||
deps='''
|
||||
talloc
|
||||
param
|
||||
smbconf
|
||||
''',
|
||||
install=False)
|
||||
|
||||
@ -1250,7 +1250,7 @@ bld.SAMBA3_BINARY('msg_sink',
|
||||
source='torture/msg_sink.c',
|
||||
deps='''
|
||||
talloc
|
||||
param
|
||||
smbconf
|
||||
''',
|
||||
install=False)
|
||||
|
||||
@ -1258,7 +1258,7 @@ bld.SAMBA3_BINARY('msg_source',
|
||||
source='torture/msg_source.c',
|
||||
deps='''
|
||||
talloc
|
||||
param
|
||||
smbconf
|
||||
''',
|
||||
install=False)
|
||||
|
||||
@ -1282,6 +1282,7 @@ bld.SAMBA3_BINARY('vfstest',
|
||||
deps='''
|
||||
vfs
|
||||
popt_samba3
|
||||
smbconf
|
||||
SMBREADLINE
|
||||
''',
|
||||
install=False)
|
||||
@ -1290,7 +1291,7 @@ bld.SAMBA3_BINARY('versiontest',
|
||||
source='lib/version_test.c',
|
||||
deps='''
|
||||
SAMBA_VERSION
|
||||
param
|
||||
smbconf
|
||||
''',
|
||||
install=False)
|
||||
|
||||
@ -1310,7 +1311,7 @@ bld.SAMBA3_BINARY('vlp',
|
||||
source='printing/tests/vlp.c',
|
||||
deps='''
|
||||
talloc
|
||||
param
|
||||
smbconf
|
||||
''',
|
||||
install=False)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user