LIBCLI_SPOOLSS_SRC = '''rpc_client/cli_spoolss.c
rpc_client/init_spoolss.c'''
-LIBCLI_LSA_SRC = '''rpc_client/cli_lsarpc.c'''
+LIBCLI_LSA_SRC = '''rpc_client/cli_lsarpc.c rpc_client/util_lsarpc.c'''
LIBCLI_SAMR_SRC = 'rpc_client/cli_samr.c'
LIB_SRC = '''
lib/messages.c lib/messages_local.c
lib/messages_ctdbd.c lib/ctdb_packet.c lib/ctdbd_conn.c
+ lib/id_cache.c
lib/talloc_dict.c
lib/util_sconn.c
lib/serverid.c
lib/substitute.c lib/substitute_generic.c
lib/ms_fnmatch.c
lib/tallocmsg.c lib/dmallocmsg.c
- libsmb/clisigning.c libsmb/smb_signing.c
+ libsmb/smb_signing.c
intl/lang_tdb.c
lib/conn_tdb.c lib/gencache.c
lib/sessionid_tdb.c
- lib/module.c lib/events.c
+ lib/events.c
lib/server_contexts.c
+ lib/server_prefork.c
+ lib/server_prefork_util.c
lib/ldap_escape.c
lib/fncall.c
libads/krb5_errs.c lib/system_smbd.c lib/audit.c
libsmb/clitrans.c libsmb/clisecdesc.c libsmb/clidgram.c
libsmb/clistr.c libsmb/cliquota.c libsmb/clifsinfo.c libsmb/clidfs.c
libsmb/clioplock.c libsmb/clirap2.c
- libsmb/smb_seal.c libsmb/async_smb.c libsmb/read_smb.c
+ libsmb/smb_seal.c libsmb/async_smb.c
+ libsmb/read_smb.c libsmb/clisigning.c
libsmb/smb2cli_base.c
libsmb/smb2cli_negprot.c
libsmb/smb2cli_session.c
smbd/file_access.c
smbd/dnsregister.c smbd/globals.c
smbd/smb2_server.c
- smbd/smb2_signing.c
smbd/smb2_glue.c
smbd/smb2_negprot.c
smbd/smb2_sesssetup.c
printing/nt_printing.c
printing/nt_printing_tdb.c
printing/nt_printing_migrate_internal.c
- printing/nt_printing_ads.c'''
+ printing/nt_printing_ads.c
+ printing/queue_process.c'''
NMBD_SRC1 = '''nmbd/asyncdns.c nmbd/nmbd.c nmbd/nmbd_become_dmb.c
nmbd/nmbd_become_lmb.c nmbd/nmbd_browserdb.c
utils/net_eventlog.c
utils/net_printing.c
utils/net_rpc_trust.c
+ utils/net_rpc_conf.c
registry/reg_parse.c registry/reg_format.c
registry/reg_parse_internal.c registry/reg_import.c
lib/cbuf.c lib/srprs.c'''
torture/test_addrchange.c
torture/test_posix_append.c
torture/test_nttrans_create.c
+ torture/test_nttrans_fsctl.c
torture/test_case_insensitive.c
torture/test_notify_online.c
torture/test_smb2.c
+ torture/test_authinfo_structs.c
torture/test_smbsock_any_connect.c'''
SMBTORTURE_SRC = '''${SMBTORTURE_SRC1}
LIBS='ICONV'
-if bld.env.toplevel_build:
- config_h = "../include/config.h"
-else:
- config_h = "include/config.h"
+config_h = "../include/config.h"
-bld.SAMBA_GENERATOR('build_options',
- source= config_h + ' script/mkbuildoptions-waf.awk',
- target='smbd/build_options.c',
- rule='${AWK} -f ${SRC[1].abspath(env)} > ${TGT} < ${SRC[0].abspath(env)}')
+bld.SAMBA_BLDOPTIONS('smbd/build_options.c')
t = bld.SAMBA_GENERATOR('build_env.h',
source='script/build_env.sh',
bld.SETUP_BUILD_GROUPS()
-if not bld.env.toplevel_build:
- # when using a toplevel build, these are already supplied
- samba_version.load_version(bld.env)
- bld.SAMBA_MKVERSION('include/version.h')
- bld.RECURSE('../lib/replace')
- bld.RECURSE('../dynconfig')
- bld.env.suffix3 = ''
-
-
######################## SUBSYSTEMS #################################
bld.SAMBA3_LIBRARY('netapi',
source=LIBNETAPI_SRC,
public_deps='''talloc tdb_compat cap wbclient smbd_shim libsmb KRBCLIENT
- pdb SMBLDAP param samba-util
+ pdb param samba-util
LIBMSRPC_GEN msrpc3 ads LIBNET DCUTIL NDR_LIBNETAPI
- RPC_CLIENT_SCHANNEL smbconf REG_SMBCONF TOKEN_UTIL
+ RPC_CLIENT_SCHANNEL smbconf REG_SMBCONF
LIBCLI_SAMR libcli_lsa3 LIBRPCCLI_NETLOGON
RPC_NDR_SRVSVC RPC_NDR_WKSSVC RPC_NDR_INITSHUTDOWN
INIT_NETLOGON INIT_SAMR popt_samba3''',
public_headers='../source3/lib/netapi/netapi.h',
+ pc_files=[],
vnum='0',
vars=locals())
-bld.SAMBA3_LIBRARY('libsmb/smbclient',
+bld.SAMBA3_LIBRARY('smbclient',
source=LIBSMBCLIENT_SRC,
- public_deps='''talloc tdb_compat wbclient cap param smbd_shim libsmb KRBCLIENT pdb SMBLDAP
+ public_deps='''talloc tdb_compat wbclient cap param smbd_shim libsmb KRBCLIENT pdb
LIBMSRPC_GEN msrpc3 libcli_lsa3 RPC_NDR_SRVSVC popt_samba3''',
public_headers='include/libsmbclient.h',
vnum='0',
+ pc_files=[],
vars=locals())
bld.SAMBA3_LIBRARY('smbsharemodes',
public_deps='''talloc tdb_compat''',
deps='''ccan''',
public_headers='include/smb_share_modes.h',
+ pc_files=[],
vnum='0',
vars=locals())
source='${LIBMSRPC_SRC}',
deps='''ndr ndr-standard
RPC_NDR_EPMAPPER NTLMSSP_COMMON COMMON_SCHANNEL LIBCLI_AUTH
- LIBTSOCKET KRB5_WRAP rpccommon
+ LIBTSOCKET KRB5_WRAP dcerpc-binding
libsmb''',
vars=locals(),
private_library=True)
deps='''ndr-standard NDR_DSSETUP NDR_SPOOLSS''',
vars=locals())
-bld.SAMBA3_SUBSYSTEM('LIBGPO',
- source='${LIBGPO_SRC}',
- deps='gpext talloc',
- vars=locals())
+bld.SAMBA3_LIBRARY('libgpo',
+ source='${LIBGPO_SRC}',
+ deps='talloc ads TOKEN_UTIL gpext',
+ vars=locals(),
+ private_library=True)
bld.SAMBA3_SUBSYSTEM('AVAHI',
source=AVAHI_SRC,
source=PARAM_UTIL_SRC,
deps='samba-util')
-if bld.env.toplevel_build:
- bld.SAMBA3_SUBSYSTEM('LOADPARM_CTX',
- source='param/loadparm_ctx.c',
- deps='''s3_param_h param''',
- vars=locals())
+bld.SAMBA3_SUBSYSTEM('LOADPARM_CTX',
+ source='param/loadparm_ctx.c',
+ deps='''s3_param_h param''',
+ vars=locals())
bld.SAMBA_GENERATOR('param/param_global_h',
source= 'param/loadparm.c ../script/mkparamdefs.pl',
source=PARAM_WITHOUT_REG_SRC,
deps='samba-util PARAM_UTIL smbd_conn ldap lber LOADPARM_CTX samba3core smbconf param_local_h param/param_global_h''')
+bld.SAMBA3_PYTHON('pys3param',
+ source='param/pyparam.c',
+ deps='param',
+ public_deps='samba-hostconfig pytalloc-util talloc',
+ realname='samba/samba3/param.so')
+
bld.SAMBA3_SUBSYSTEM('param_service',
source='param/service.c',
deps = 'USER_UTIL param USER_UTIL PRINTING')
bld.SAMBA3_SUBSYSTEM('REG_FULL',
source=REG_FULL_SRC,
- deps='REG_SMBCONF',
+ deps='REG_SMBCONF tdb-wrap3',
vars=locals())
bld.SAMBA3_LIBRARY('popt_samba3',
bld.SAMBA3_SUBSYSTEM('samba3core',
source=LIB_SRC,
- deps='LIBTSOCKET LIBCRYPTO ndr security NDR_SECURITY samba-util NDR_MESSAGING LIBASYNC_REQ tdb-wrap3 UTIL_TDB UTIL_PW SAMBA_VERSION KRB5_WRAP flag_mapping util_reg PTHREADPOOL interfaces cap string_init param util_str CHARSET3 namearray dbwrap util_sec util_malloc memcache ccan errors3',
+ deps='LIBTSOCKET LIBCRYPTO ndr security NDR_SECURITY samba-util NDR_MESSAGING LIBASYNC_REQ tdb-wrap3 UTIL_TDB UTIL_PW SAMBA_VERSION KRB5_WRAP flag_mapping util_reg PTHREADPOOL interfaces cap string_init param util_str CHARSET3 namearray dbwrap util_sec util_malloc memcache ccan errors3 samba-modules uid_wrapper',
vars=locals())
bld.SAMBA3_LIBRARY('smbd_shim',
bld.SAMBA3_SUBSYSTEM('LIBSMB_ERR',
source='',
- deps='errors3 pdb ldap lber MSRPC_PARSE LIBCLI_AUTH rpccommon',
+ deps='errors3 pdb ldap lber MSRPC_PARSE LIBCLI_AUTH dcerpc-binding',
vars=locals())
bld.SAMBA3_SUBSYSTEM('LIBNTLMSSP',
source=LIBNTLMSSP_SRC,
- deps='LIBSMB_ERR NDR_NTLMSSP NTLMSSP_COMMON',
+ deps='LIBSMB_ERR NDR_NTLMSSP NTLMSSP_COMMON gensec_runtime',
vars=locals())
bld.SAMBA3_LIBRARY('libsmb',
deps='''LIBSMBCONF smbregistry REG_SMBCONF talloc param
util_reg samba-util errors3 charset SAMBA_VERSION''',
public_headers='../lib/smbconf/smbconf.h',
+ pc_files=[],
vnum='0')
bld.SAMBA3_LIBRARY('smbd_conn',
LIBCLI_SAMR libcli_lsa3 LIBRPCCLI_NETLOGON cli_spoolss
RPC_NDR_SRVSVC npa_tstream INIT_NETLOGON INIT_SAMR
cli_smb_common RPC_SERVER smbd_conn param_service
- smbd_shim
+ smbd_shim uid_wrapper
''',
private_library=True,
vars=locals())
bld.SAMBA3_SUBSYSTEM('LIBNET_DSSYNC',
source=LIBNET_DSSYNC_SRC,
- deps='LIBNET LIBCLI_DRSUAPI',
+ deps='LIBNET LIBCLI_DRSUAPI tdb-wrap3',
vars=locals())
bld.SAMBA3_SUBSYSTEM('LIBNET_SAMSYNC',
bld.SAMBA3_BINARY('smbd/smbd',
source='${SMBD_SRC_MAIN}',
- deps='smbd_base EPMD',
+ deps='smbd_base EPMD LSASD',
install_path='${SBINDIR}',
vars=locals())
source=CLIENT_SRC,
deps='''talloc tdb_compat cap popt_samba3 pdb libsmb smbd_shim
param wbclient param KRBCLIENT LIBMSRPC_GEN
- msrpc3 SMBREADLINE libsmb/smbclient RPC_NDR_SRVSVC INIT_LSA
+ msrpc3 SMBREADLINE smbclient RPC_NDR_SRVSVC INIT_LSA
cli_smb_common''',
vars=locals())
bld.SAMBA3_BINARY('net',
source=NET_SRC,
deps='''talloc tdb_compat netapi addns cap intl popt_samba3 pdb libsmb smbd_shim
- param wbclient param KRBCLIENT LIBMSRPC_GEN msrpc3 LIBGPO ads LIBADS_SERVER LIBADS_PRINTER
+ param wbclient param KRBCLIENT LIBMSRPC_GEN msrpc3 libgpo ads LIBADS_SERVER LIBADS_PRINTER
LIBAFS LIBAFS_SETTOKEN SMBREADLINE PASSWD_UTIL LIBNET
LIBNET_DSSYNC LIBNET_SAMSYNC LIBEVENTLOG DCUTIL
REGFIO NDR_NTPRINTING RPC_NDR_WINREG
bld.SAMBA3_BINARY('smbtree',
source=SMBTREE_SRC,
deps='''talloc tdb_compat tevent cap wbclient param smbd_shim
- libsmb LIBSMB_ERR popt_samba3 KRBCLIENT pdb SMBLDAP LIBMSRPC_GEN msrpc3 PROFILE
+ libsmb LIBSMB_ERR popt_samba3 KRBCLIENT pdb LIBMSRPC_GEN msrpc3 PROFILE
RPC_NDR_SRVSVC''',
vars=locals())
bld.SAMBA3_BINARY('smbpasswd',
source=SMBPASSWD_SRC,
deps='''talloc tdb_compat tevent cap wbclient param smbd_shim
- libsmb LIBSMB_ERR popt_samba3 KRBCLIENT pdb SMBLDAP LIBMSRPC_GEN msrpc3 PASSWD_UTIL
+ libsmb LIBSMB_ERR popt_samba3 KRBCLIENT pdb LIBMSRPC_GEN msrpc3 PASSWD_UTIL
LIBCLI_SAMR INIT_LSA PASSCHANGE''',
vars=locals())
bld.SAMBA3_BINARY('pdbedit',
source=PDBEDIT_SRC,
deps='''talloc tdb_compat tevent cap wbclient param smbd_shim
- LIBNTLMSSP LIBSMB_ERR popt_samba3 pdb SMBLDAP
+ LIBNTLMSSP LIBSMB_ERR popt_samba3 pdb
PASSWD_UTIL cli-ldap-common''',
vars=locals())
bld.SAMBA3_BINARY('smbget',
source=SMBGET_SRC,
- deps='''talloc tdb_compat libsmb/smbclient popt_samba3''',
+ deps='''talloc tdb_compat smbclient popt_samba3''',
vars=locals())
bld.SAMBA3_BINARY('nmblookup' + bld.env.suffix3,
bld.SAMBA3_BINARY('smbtorture' + bld.env.suffix3,
source=SMBTORTURE_SRC,
deps='''talloc tdb_compat tevent cap wbclient param libsmb KRBCLIENT TLDAP
- smbd_shim popt_samba3 asn1util LIBTSOCKET NDR_LSA msrpc3 LIBMSRPC_GEN RPC_NDR_ECHO WB_REQTRANS''',
+ smbd_shim popt_samba3 asn1util LIBTSOCKET NDR_LSA msrpc3 LIBMSRPC_GEN RPC_NDR_ECHO WB_REQTRANS libcli_lsa3''',
vars=locals())
bld.SAMBA3_BINARY('smbconftort',
bld.SAMBA3_BINARY('smbcacls',
source=SMBCACLS_SRC,
deps='''talloc tdb_compat cap wbclient param libsmb KRBCLIENT
- smbd_shim pdb popt_samba3 SMBLDAP LIBMSRPC_GEN
+ smbd_shim pdb popt_samba3 LIBMSRPC_GEN
msrpc3 libcli_lsa3''',
vars=locals())
bld.SAMBA3_BINARY('smbcquotas',
source=SMBCQUOTAS_SRC,
deps='''talloc tdb_compat cap wbclient param smbd_shim libsmb KRBCLIENT
- popt_samba3 pdb SMBLDAP LIBMSRPC_GEN msrpc3
+ popt_samba3 pdb LIBMSRPC_GEN msrpc3
libcli_lsa3''',
vars=locals())
bld.SAMBA3_BINARY('pdbtest',
source=PDBTEST_SRC,
deps='''talloc tdb_compat cap wbclient param libsmb KRBCLIENT smbd_shim pdb
- SMBLDAP popt_samba3 NDR_SAMR NDR_LSA''',
+ popt_samba3 NDR_SAMR NDR_LSA''',
vars=locals())
bld.SAMBA3_BINARY('vfstest',
source=NTLM_AUTH_SRC,
deps='''tdb_compat talloc cap KRB5_WRAP k5crypto wbclient param smbd_shim
samba3core LIBNTLMSSP popt_samba3 asn1util LIBTSOCKET
- pdb SMBLDAP winbind-client LIBINIPARSER LIBADS_SERVER
+ pdb winbind-client LIBINIPARSER LIBADS_SERVER
NDR_SAMR NDR_LSA NDR_NETLOGON cli-ldap-common LIBNMB SLCACHE SPNEGO_PARSE KRBCLIENT''',
vars=locals())
bld.SAMBA3_BINARY('dbwrap_tool',
source=DBWRAP_TOOL_SRC,
- deps='''talloc tdb_compat tevent cap param smbd_shim LIBSMB_ERR''',
+ deps='''talloc tdb_compat tevent cap param smbd_shim LIBSMB_ERR
+ popt_samba3''',
vars=locals())
bld.SAMBA3_BINARY('dbwrap_torture',
swat_files = recursive_dirlist(swat_dir, swat_dir, '*')
bld.INSTALL_FILES('${SWATDIR}', swat_files, base_name='../swat')
-# additional compatibility rules.
-# these rules allow us to have a common set of waf rules for toplevel and source3
-# builds. Effectively these are build rule aliases
-
-if not bld.env.toplevel_build:
- bld.SAMBA3_SUBSYSTEM('POPT_SAMBA', source='', deps='popt_samba3')
- bld.SAMBA3_SUBSYSTEM('ldb3',
- source='lib/ldb_compat.c',
- deps='samba-util')
- bld.SAMBA3_SUBSYSTEM('ldb', source='', deps='ldb3')
- bld.SAMBA3_SUBSYSTEM('dcerpc', '', deps='UTIL_TEVENT')
- bld.SAMBA3_SUBSYSTEM('cli-ldap', '', deps='UTIL_TEVENT')
- bld.SAMBA3_SUBSYSTEM('LOADPARM_CTX', '')
-
########################## INCLUDES #################################
-bld.RECURSE('../lib/util/charset')
-bld.RECURSE('../auth')
-bld.RECURSE('../auth/kerberos')
-bld.RECURSE('../lib/addns')
-bld.RECURSE('../lib/async_req')
-bld.RECURSE('../lib/ccan')
-bld.RECURSE('../lib/socket')
-bld.RECURSE('../lib/param')
-bld.RECURSE('../libcli/auth')
-bld.RECURSE('../libcli/drsuapi')
-bld.RECURSE('../libcli/ldap')
-bld.RECURSE('../libcli/cldap')
-bld.RECURSE('../libcli/named_pipe_auth')
-bld.RECURSE('../libcli/netlogon')
-bld.RECURSE('../libcli/samsync')
-bld.RECURSE('../libcli/security')
-bld.RECURSE('../libcli/smb')
-bld.RECURSE('../libcli/util')
-bld.RECURSE('../libcli/smbreadline')
-bld.RECURSE('../libcli/nbt')
-bld.RECURSE('../libcli/registry')
-bld.RECURSE('../lib/crypto')
-bld.RECURSE('../lib/iniparser/src')
-bld.RECURSE('../lib/nss_wrapper')
-bld.RECURSE('../lib/popt')
-bld.RECURSE('../librpc')
-bld.RECURSE('../lib/smbconf')
-bld.RECURSE('../lib/socket_wrapper')
-bld.RECURSE('../lib/uid_wrapper')
-bld.RECURSE('../lib/talloc')
-bld.RECURSE('../lib/tdb_compat')
-bld.RECURSE('../lib/util')
-bld.RECURSE('../lib/tevent')
-bld.RECURSE('../lib/tsocket')
-bld.RECURSE('../lib/zlib')
-bld.RECURSE('../libds/common')
-bld.RECURSE('../nsswitch')
-bld.RECURSE('../nsswitch/libwbclient')
bld.RECURSE('auth')
bld.RECURSE('libgpo/gpext')
bld.RECURSE('lib/pthreadpool')