X-Git-Url: http://git.samba.org/samba.git/?p=kai%2Fsamba.git;a=blobdiff_plain;f=source3%2Fwscript_build;h=b9984fe98bd71762b0142a87fc1d0fbf0666ea61;hp=99d7bd80748f0b9c48e75f33b6a3943d29a9b813;hb=850d5de96702b8c4bd8a285b4bd44a15350dfca8;hpb=aca64f642da78e777b113a6b25342f18fc18c502 diff --git a/source3/wscript_build b/source3/wscript_build index 99d7bd80748..b9984fe98bd 100755 --- a/source3/wscript_build +++ b/source3/wscript_build @@ -58,8 +58,7 @@ LIB_SRC = ''' lib/ms_fnmatch.c lib/tallocmsg.c lib/dmallocmsg.c intl/lang_tdb.c - lib/conn_tdb.c lib/gencache.c - lib/sessionid_tdb.c + lib/gencache.c lib/events.c lib/server_contexts.c lib/server_prefork.c @@ -67,6 +66,7 @@ LIB_SRC = ''' lib/ldap_escape.c lib/fncall.c libads/krb5_errs.c lib/system_smbd.c lib/audit.c + lib/tevent_wait.c lib/idmap_cache.c''' LIB_UTIL_SRC = ''' @@ -113,7 +113,8 @@ SECRETS_SRC = '''passdb/secrets.c passdb/machine_account_secrets.c LIBNMB_SRC = '''libsmb/unexpected.c libsmb/namecache.c libsmb/nmblib.c libsmb/namequery.c libsmb/conncache.c - libads/dns.c libads/sitename_cache.c''' + + libads/sitename_cache.c''' LIBNTLMSSP_SRC = ''' libsmb/ntlmssp.c @@ -129,17 +130,7 @@ LIBSMB_SRC = '''libsmb/clientgen.c libsmb/cliconnect.c libsmb/clifile.c libsmb/clistr.c libsmb/cliquota.c libsmb/clifsinfo.c libsmb/clidfs.c libsmb/clioplock.c libsmb/clirap2.c libsmb/async_smb.c - libsmb/clisigning.c libsmb/smb2cli_tcon.c - libsmb/smb2cli_create.c - libsmb/smb2cli_close.c - libsmb/smb2cli_flush.c - libsmb/smb2cli_read.c - libsmb/smb2cli_write.c - libsmb/smb2cli_query_directory.c - libsmb/smb2cli_ioctl.c - libsmb/smb2cli_query_info.c - libsmb/smb2cli_set_info.c libsmb/cli_np_tstream.c libsmb/reparse_symlink.c libsmb/clisymlink.c @@ -223,8 +214,8 @@ PASSDB_SRC = '''${PASSDB_GET_SET_SRC} passdb/passdb.c passdb/account_pol.c ${PRIVILEGES_SRC} lib/util_nscd.c lib/winbind_util.c passdb/pdb_util.c passdb/pdb_interface.c - passdb/pdb_ldap_schema.c - passdb/pdb_secrets.c''' + passdb/pdb_secrets.c + passdb/pdb_unixid.c''' #FIXME: lib/winbind_util.c probably is not part of PASSDB_SRC GROUPDB_SRC = '''groupdb/mapping.c groupdb/mapping_tdb.c''' @@ -232,8 +223,7 @@ GROUPDB_SRC = '''groupdb/mapping.c groupdb/mapping_tdb.c''' PROFILE_SRC = '''profile/profile.c''' PROFILES_SRC = '''utils/profiles.c''' -OPLOCK_SRC = '''smbd/oplock.c smbd/oplock_irix.c smbd/oplock_linux.c - smbd/oplock_onefs.c''' +OPLOCK_SRC = '''smbd/oplock.c smbd/oplock_irix.c smbd/oplock_linux.c''' NOTIFY_SRC = '''smbd/notify.c smbd/notify_inotify.c smbd/notify_internal.c''' @@ -357,9 +347,11 @@ SMBD_SRC_SRV = '''smbd/server_reload.c smbd/files.c smbd/connection.c smbd/process.c smbd/service.c smbd/error.c printing/printspoolss.c printing/spoolssd.c lib/sysquotas.c lib/sysquotas_linux.c - lib/sysquotas_xfs.c lib/sysquotas_4A.c + lib/sysquotas_xfs.c lib/sysquotas_4A.c lib/sysquotas_4B.c lib/sysquotas_nfs.c lib/background.c + lib/sessionid_tdb.c + lib/conn_tdb.c smbd/fake_file.c smbd/quotas.c smbd/ntquotas.c smbd/msdfs.c smbd/aio.c smbd/statvfs.c @@ -384,7 +376,12 @@ SMBD_SRC_SRV = '''smbd/server_reload.c smbd/files.c smbd/connection.c smbd/smb2_getinfo.c smbd/smb2_setinfo.c smbd/smb2_break.c + smbd/smbXsrv_version.c + smbd/smbXsrv_session.c + smbd/smbXsrv_tcon.c + smbd/smbXsrv_open.c smbd/server_exit.c + smbd/durable.c ${MANGLE_SRC}''' SMBD_SRC_BASE = '''${SMBD_SRC_SRV} @@ -452,7 +449,7 @@ RPCCLIENT_SRC1 = '''rpcclient/rpcclient.c rpcclient/cmd_lsarpc.c rpcclient/cmd_shutdown.c rpcclient/cmd_test.c rpcclient/cmd_wkssvc.c rpcclient/cmd_ntsvcs.c rpcclient/cmd_drsuapi.c rpcclient/cmd_eventlog.c - rpcclient/cmd_winreg.c''' + rpcclient/cmd_winreg.c rpcclient/cmd_fss.c''' RPCCLIENT_SRC = '''${RPCCLIENT_SRC1}''' @@ -554,23 +551,20 @@ SMBTORTURE_SRC1 = '''torture/torture.c torture/nbio.c torture/scanner.c torture/ torture/test_authinfo_structs.c torture/test_smbsock_any_connect.c torture/test_cleanup.c - torture/test_ctdbconn.c - torture/test_msg.c - torture/test_notify.c - lib/tevent_barrier.c - torture/test_dbwrap_watch.c - torture/test_idmap_tdb_common.c + torture/test_ctdbconn.c + torture/test_msg.c + torture/test_notify.c + lib/tevent_barrier.c + torture/test_dbwrap_watch.c + torture/test_idmap_tdb_common.c + torture/test_dbwrap_ctdb.c torture/t_strappend.c''' SMBTORTURE_SRC = '''${SMBTORTURE_SRC1} torture/wbc_async.c''' -MASKTEST_SRC = '''torture/masktest.c''' - MSGTEST_SRC = '''torture/msgtest.c''' -LOCKTEST_SRC = '''torture/locktest.c''' - PDBTEST_SRC = '''torture/pdbtest.c''' VFSTEST_SRC = '''torture/cmd_vfs.c torture/vfstest.c @@ -642,18 +636,19 @@ bld.SAMBA3_LIBRARY('netapi', libcli_netlogon3 LIBCLI_SAMR INIT_SAMR + auth ''', public_headers='../source3/lib/netapi/netapi.h', - pc_files=[], + pc_files='libnet/netapi.pc', vnum='0', vars=locals()) bld.SAMBA3_LIBRARY('smbsharemodes', source=LIBSMBSHAREMODES_SRC, public_deps='''talloc tdb_compat''', - deps='''ccan''', + deps='''ccan-hash''', public_headers='include/smb_share_modes.h', - pc_files=[], + pc_files='libsmb/smbsharemodes.pc', vnum='0', vars=locals()) @@ -661,6 +656,7 @@ bld.SAMBA3_LIBRARY('nss_wins', source=WINBIND_WINS_NSS_SRC, deps='''param libsmb LIBTSOCKET''', realname='libnss_wins.so.2', + soname='libnss_wins.so', vnum='2') bld.SAMBA3_LIBRARY('gse', @@ -679,7 +675,7 @@ bld.SAMBA3_LIBRARY('msrpc3', bld.SAMBA3_LIBRARY('gpo', source='${LIBGPO_SRC}', - deps='talloc ads TOKEN_UTIL gpext', + deps='talloc ads TOKEN_UTIL gpext auth', vars=locals(), private_library=True) @@ -696,16 +692,57 @@ bld.SAMBA3_SUBSYSTEM('TLDAP', source=TLDAP_SRC, deps='asn1util LIBTSOCKET') +# libpdb.so should not expose internal symbols that are only usable +# to the statically linked modules that are merged into libpdb. +# Note that we always filter these symbols out in libpdb, even +# when modules are not linked statically. In the latter case +# symbols will not be present in the libpdb anyway so no hurt is +# done to the version script. +static_pdb_match = ['tdbsam', 'smbpasswd', 'wbc_sam'] +private_pdb_match = [] + +# AD DC module when linked statically will pull in few source4/winbind +# dependencies which are not used outside AD DC module +static_pdb_match.append('samba_dsdb') +private_pdb_match.append('!idmap_init') +private_pdb_match.append('!idmap_sids_to_xids') +private_pdb_match.append('!idmap_xids_to_sids') + +# ldap module is actually three modules merged together: ldapsam, ipa, and nds +static_pdb_match = static_pdb_match + ['ldap', 'ipa', 'nds'] +ldapsam_pdb_match = ['!priv2ld', '!smbldap_search_domain_info', + '!ldapsam_*', '!groupmap_attr_list*', '!get_userattr_list', + '!dominfo_attr_list', '!get_attr_key2string', + '!sidmap_attr_list', '!attrib_map_*', '!idpool_attr_list', + '!get_attr_list'] +private_pdb_match.append('!pdb_nds_*') +private_pdb_match.append('!pdb_init_ldapsam') +private_pdb_match = private_pdb_match + ldapsam_pdb_match + +private_pdb_match = private_pdb_match + map(lambda x: '!pdb_%s_init' % x, static_pdb_match) + bld.SAMBA3_LIBRARY('pdb', source=PASSDB_SRC, deps='secrets3 GROUPDB SERVER_MUTEX wbclient LIBCLI_AUTH flag_mapping', - private_library=True, + private_library=False, + pc_files=[], + public_headers_install=True, public_headers=''' include/passdb.h passdb/machine_sid.h passdb/lookup_sid.h''', + abi_match=private_pdb_match + ['*'], + abi_directory='passdb/ABI', + vnum='0', vars=locals()) +bld.SAMBA3_LIBRARY('smbldaphelper', + source='passdb/pdb_ldap_schema.c passdb/pdb_ldap_util.c', + deps='smbldap secrets3', + allow_undefined_symbols=True, + enabled=bld.CONFIG_SET('HAVE_LDAP'), + private_library=True) + bld.SAMBA3_SUBSYSTEM('SERVER_MUTEX', source=SERVER_MUTEX_SRC, deps='talloc') @@ -720,9 +757,9 @@ bld.SAMBA3_SUBSYSTEM('LOADPARM_CTX', vars=locals()) bld.SAMBA_GENERATOR('param/param_global_h', - source= 'param/loadparm.c ../script/mkparamdefs.pl', + source= '../script/mkparamdefs.pl param/loadparm.c ../lib/param/param_functions.c', target='param/param_global.h', - rule='${PERL} ${SRC[1].abspath(env)} ${SRC[0].abspath(env)} --file ${TGT} --generate-scope=GLOBAL') + rule='${PERL} ${SRC[0].abspath(env)} ${SRC[1].abspath(env)} ${SRC[2].abspath(env)} --file ${TGT} --generate-scope=GLOBAL') bld.SAMBA3_SUBSYSTEM('param', source=PARAM_WITHOUT_REG_SRC, @@ -751,7 +788,7 @@ bld.SAMBA3_SUBSYSTEM('REG_API_REGF', bld.SAMBA3_LIBRARY('smbregistry', source=REG_BASE_SRC, deps='''smbd_shim tdb-wrap3 NDR_SECURITY util_tdb talloc - replace util_reg samba-util security + replace util_reg samba-util samba-security errors3 dbwrap samba3-util''', allow_undefined_symbols=True, private_library=True) @@ -784,18 +821,12 @@ bld.SAMBA3_SUBSYSTEM('KRBCLIENT', bld.SAMBA3_SUBSYSTEM('samba3util', source=LIB_UTIL_SRC, - deps='ndr security NDR_SECURITY samba-util util_tdb ccan', + deps='ndr samba-security NDR_SECURITY samba-util util_tdb ccan-hash', vars=locals()) -bld.SAMBA3_SUBSYSTEM('pidfile', - source='lib/pidfile.c', - # only pidfile.c assumes that CONFIGFILE is set - cflags = ['-DCONFIGFILE="%s"' % bld.env['CONFIGFILE']]) - bld.SAMBA3_SUBSYSTEM('samba3core', source=LIB_SRC, deps=''' - pidfile samba3util LIBTSOCKET NDR_MESSAGING @@ -807,7 +838,6 @@ bld.SAMBA3_SUBSYSTEM('samba3core', param dbwrap samba3-util - ccan errors3''', vars=locals()) @@ -860,8 +890,12 @@ bld.SAMBA3_LIBRARY('smbldap', source=SMBLDAP_SRC, deps='ldap lber samba-util param', vars=locals(), - enabled=bld.env.HAVE_LDAP, - private_library=True, + enabled=bld.CONFIG_SET("HAVE_LDAP"), + private_library=False, + abi_directory='lib/ABI', + abi_match='smbldap_*', + pc_files=[], + vnum='0', public_headers='include/smbldap.h include/smb_ldap.h') bld.SAMBA3_LIBRARY('ads', @@ -877,7 +911,7 @@ bld.SAMBA3_SUBSYSTEM('LIBADS_SERVER', bld.SAMBA3_SUBSYSTEM('LIBADS_PRINTER', source=LIBADS_PRINTER_SRC, - deps='samba-util', + deps='samba-util krb5samba', vars=locals()) bld.SAMBA3_SUBSYSTEM('LIBAFS', @@ -938,7 +972,12 @@ bld.SAMBA3_LIBRARY('smbd_base', LIBAFS LIBAFS_SETTOKEN RPC_SERVER - ''', + NDR_SMBXSRV + LIBASYS + ccan-hash + NDR_SMB_ACL + netapi + ''' + bld.env['dmapi_lib'], private_library=True, vars=locals()) @@ -1016,7 +1055,7 @@ bld.SAMBA3_SUBSYSTEM('LIBEVENTLOG', bld.SAMBA3_SUBSYSTEM('LIBNMB', source=LIBNMB_SRC, - deps='lmhosts resolv', + deps='addns lmhosts resolv', vars=locals()) bld.SAMBA3_SUBSYSTEM('SERVICES', @@ -1033,7 +1072,8 @@ bld.SAMBA3_SUBSYSTEM('PASSCHANGE', source=PASSCHANGE_SRC, deps='''LIBCLI_SAMR INIT_LSA - msrpc3''', + msrpc3 + krb5samba''', vars=locals()) bld.SAMBA3_SUBSYSTEM('SAMBA_VERSION', @@ -1063,7 +1103,7 @@ bld.SAMBA3_SUBSYSTEM('tdb-wrap3', vars=locals()) bld.SAMBA3_LIBRARY('samba3-util', - source='''lib/util_sec.c lib/util_str.c lib/adt_tree.c lib/util_malloc.c lib/memcache.c lib/string_init.c lib/namearray.c lib/file_id.c''', + source='''lib/util_sec.c lib/util_str.c lib/adt_tree.c lib/util_malloc.c lib/memcache.c lib/namearray.c lib/file_id.c''', deps='samba-util charset', private_library=True) @@ -1111,7 +1151,7 @@ bld.SAMBA3_SUBSYSTEM('LIBCLI_WINREG_INTERNAL', bld.SAMBA3_SUBSYSTEM('RPC_CLIENT_SCHANNEL', source=RPC_CLIENT_SCHANNEL_SRC, - deps='samba-util', + deps='samba-util krb5samba', vars=locals()) bld.SAMBA3_SUBSYSTEM('INIT_LSA', @@ -1184,6 +1224,7 @@ bld.SAMBA3_BINARY('web/swat', param pdb popt_samba3 + smbd_base LOCKING PLAINTEXT_AUTH PASSCHANGE @@ -1222,10 +1263,11 @@ bld.SAMBA3_BINARY('rpcclient/rpcclient', RPC_NDR_NTSVCS RPC_NDR_EVENTLOG INIT_SAMR + RPC_NDR_FSRVP ''', vars=locals()) -bld.SAMBA3_BINARY('client/smbclient' + bld.env.suffix3, +bld.SAMBA3_BINARY('client/smbclient', source=CLIENT_SRC, deps=''' talloc @@ -1254,6 +1296,7 @@ bld.SAMBA3_BINARY('net', msrpc3 gpo ads + smbd_base LIBADS_SERVER LIBADS_PRINTER SMBREADLINE @@ -1319,6 +1362,7 @@ bld.SAMBA3_BINARY('smbstatus', talloc param popt_samba3 + smbd_base LOCKING PROFILE''', vars=locals()) @@ -1372,7 +1416,7 @@ bld.SAMBA3_BINARY('smbget', smbclient''', vars=locals()) -bld.SAMBA3_BINARY('nmblookup' + bld.env.suffix3, +bld.SAMBA3_BINARY('nmblookup', source=NMBLOOKUP_SRC, deps=''' talloc @@ -1391,8 +1435,11 @@ bld.SAMBA3_BINARY('smbtorture' + bld.env.suffix3, TLDAP RPC_NDR_ECHO WB_REQTRANS + LOCKING + NDR_OPEN_FILES idmap ''', + install=False, vars=locals()) bld.SAMBA3_BINARY('smbconftort', @@ -1401,6 +1448,7 @@ bld.SAMBA3_BINARY('smbconftort', talloc param popt_samba3''', + install=False, vars=locals()) bld.SAMBA3_BINARY('replacetort', @@ -1408,19 +1456,12 @@ bld.SAMBA3_BINARY('replacetort', deps='replace replace-test', install=False) -bld.SAMBA3_BINARY('masktest' + bld.env.suffix3, - source=MASKTEST_SRC, - deps=''' - talloc - param - libsmb''', - vars=locals()) - bld.SAMBA3_BINARY('msgtest', source=MSGTEST_SRC, deps=''' talloc param''', + install=False, vars=locals()) bld.SAMBA3_BINARY('smbcacls', @@ -1429,7 +1470,8 @@ bld.SAMBA3_BINARY('smbcacls', talloc popt_samba3 msrpc3 - libcli_lsa3''', + libcli_lsa3 + krb5samba''', vars=locals()) bld.SAMBA3_BINARY('smbcquotas', @@ -1457,21 +1499,15 @@ bld.SAMBA3_BINARY('sharesec', popt_samba3''', vars=locals()) -bld.SAMBA3_BINARY('locktest' + bld.env.suffix3, - source=LOCKTEST_SRC, - deps=''' - talloc - param - libsmb - LOCKING''', - vars=locals()) - bld.SAMBA3_BINARY('pdbtest', source=PDBTEST_SRC, deps=''' talloc pdb - popt_samba3''', + popt_samba3 + AUTH_COMMON + auth''', + install=False, vars=locals()) bld.SAMBA3_BINARY('vfstest', @@ -1480,11 +1516,13 @@ bld.SAMBA3_BINARY('vfstest', vfs popt_samba3 SMBREADLINE''', + install=False, vars=locals()) bld.SAMBA3_BINARY('log2pcap', source=LOG2PCAP_SRC, deps='''talloc popt''', + install=False, vars=locals()) bld.SAMBA3_BINARY('locktest2', @@ -1494,11 +1532,13 @@ bld.SAMBA3_BINARY('locktest2', param libsmb LOCKING''', + install=False, vars=locals()) bld.SAMBA3_BINARY('debug2html', source=DEBUG2HTML_SRC, deps='''talloc popt''', + install=False, vars=locals()) bld.SAMBA3_BINARY('smbfilter', @@ -1507,6 +1547,7 @@ bld.SAMBA3_BINARY('smbfilter', talloc param LIBNMB''', + install=False, vars=locals()) bld.SAMBA3_BINARY('versiontest', @@ -1514,9 +1555,10 @@ bld.SAMBA3_BINARY('versiontest', deps=''' SAMBA_VERSION param''', + install=False, vars=locals()) -bld.SAMBA3_BINARY('ntlm_auth' + bld.env.suffix3, +bld.SAMBA3_BINARY('ntlm_auth', source=NTLM_AUTH_SRC, deps=''' talloc @@ -1529,6 +1571,7 @@ bld.SAMBA3_BINARY('ntlm_auth' + bld.env.suffix3, bld.SAMBA3_BINARY('timelimit', source='script/tests/timelimit.c', + install=False, vars=locals()) bld.SAMBA3_BINARY('rpc_open_tcp', @@ -1536,6 +1579,7 @@ bld.SAMBA3_BINARY('rpc_open_tcp', deps=''' talloc msrpc3''', + install=False, vars=locals()) bld.SAMBA3_BINARY('test_lp_load', @@ -1544,6 +1588,7 @@ bld.SAMBA3_BINARY('test_lp_load', talloc param popt_samba3''', + install=False, vars=locals()) bld.SAMBA3_BINARY('dbwrap_tool', @@ -1558,6 +1603,7 @@ bld.SAMBA3_BINARY('dbwrap_torture', deps=''' talloc popt_samba3''', + install=False, vars=locals()) bld.SAMBA3_BINARY('split_tokens', @@ -1565,6 +1611,7 @@ bld.SAMBA3_BINARY('split_tokens', deps=''' talloc popt_samba3''', + install=False, vars=locals()) bld.SAMBA3_BINARY('vlp', @@ -1572,14 +1619,21 @@ bld.SAMBA3_BINARY('vlp', deps=''' talloc param''', + install=False, vars=locals()) bld.SAMBA3_PYTHON('pysmbd', source='smbd/pysmbd.c', - deps='smbd_base', + deps='smbd_base pyrpc_util', realname='samba/samba3/smbd.so' ) +bld.SAMBA3_PYTHON('pylibsmb', + source='libsmb/pylibsmb.c', + deps='smbclient samba-credentials', + realname='samba/samba3/libsmb_samba_internal.so' + ) + swat_dir = os.path.join(bld.curdir, '../swat') swat_files = recursive_dirlist(swat_dir, swat_dir, '*') bld.INSTALL_FILES('${SWATDIR}', swat_files, base_name='../swat') @@ -1589,6 +1643,7 @@ bld.INSTALL_FILES('${SWATDIR}', swat_files, base_name='../swat') bld.RECURSE('auth') bld.RECURSE('libgpo/gpext') bld.RECURSE('lib/pthreadpool') +bld.RECURSE('lib/asys') bld.RECURSE('librpc') bld.RECURSE('librpc/idl') bld.RECURSE('libsmb')