#!/usr/bin/env python
-from samba_utils import *
-import samba_version, samba3
-
LIBS='ICONV'
config_h = "../include/config.h"
samba3util
smbconf
cmocka
- ''')
+ ''',
+ for_selftest=True)
# libpdb.so should not expose internal symbols that are only usable
# to the statically linked modules that are merged into libpdb.
''',
abi_match=private_pdb_match,
abi_directory='passdb/ABI',
- vnum='0.27.0')
+ vnum='0.28.0')
bld.SAMBA3_SUBSYSTEM('pdb',
source='''
lib/winbind_util.c
passdb/pdb_util.c
passdb/pdb_interface.c
- passdb/pdb_secrets.c
- passdb/pdb_unixid.c''',
+ passdb/pdb_secrets.c''',
deps='''
secrets3
GROUPDB
LIBCLI_AUTH
flag_mapping
samba-credentials
+ samba-modules
+ nscd
''')
bld.SAMBA3_LIBRARY('smbldaphelper',
source='registry/regfio.c',
deps='samba-util REG_PARSE_PRS')
-bld.SAMBA3_SUBSYSTEM('REG_API_REGF',
- source='registry/reg_api_regf.c',
- deps='samba-util')
+bld.SAMBA_BINARY('test_registry_regfio',
+ source='registry/tests/test_regfio.c',
+ deps='cmocka samba3-util smbconf REGFIO',
+ local_include=False,
+ for_selftest=True)
# Do not link against this use 'smbconf'
bld.SAMBA3_SUBSYSTEM('SMBREGISTRY',
lib/util_nttoken.c
registry/reg_backend_db.c
registry/reg_parse_internal.c
+ registry/reg_parse.c
lib/srprs.c
registry/reg_init_basic.c
''',
bld.SAMBA3_LIBRARY('popt_samba3',
source='lib/popt_common.c',
- deps='popt samba-util util_cmdline',
+ deps='popt samba-util smbconf',
+ private_library=True)
+
+bld.SAMBA3_LIBRARY('popt_samba3_cmdline',
+ source='lib/popt_common_cmdline.c',
+ deps='popt_samba3 util_cmdline cmdline_contexts',
private_library=True)
bld.SAMBA3_LIBRARY('util_cmdline',
source='lib/util_cmdline.c',
- deps='secrets3',
+ deps='secrets3 samba-credentials',
+ private_library=True)
+
+bld.SAMBA3_LIBRARY('cmdline_contexts',
+ source='lib/cmdline_contexts.c',
+ deps='samba3core',
private_library=True)
bld.SAMBA3_SUBSYSTEM('KRBCLIENT',
lib/util_sock.c
lib/util_tsock.c
lib/util_transfer_file.c
- lib/sys_popen.c
+ lib/util_macstreams.c
''',
deps='''
CHARSET3
samba-cluster-support
''')
-bld.SAMBA3_LIBRARY('messages_dgm',
- source='''
- lib/messages_dgm.c
- lib/messages_dgm_ref.c
- ''',
- deps='''
- talloc
- samba-debug
- PTHREADPOOL
- msghdr
- genrand
- ''',
- private_library=True)
-
bld.SAMBA3_LIBRARY('messages_util',
source='''lib/messages_util.c''',
deps='samba-util',
lib/ms_fnmatch.c
lib/tallocmsg.c
lib/dmallocmsg.c
- intl/lang_tdb.c
lib/gencache.c
lib/util_event.c
- lib/server_contexts.c
+ lib/global_contexts.c
lib/server_prefork.c
lib/server_prefork_util.c
lib/ldap_escape.c
- libads/krb5_errs.c
lib/system_smbd.c
lib/audit.c
- lib/tevent_wait.c
lib/idmap_cache.c
lib/namemap_cache.c
lib/util_ea.c
server_id_db
messages_util
messages_dgm
- talloc_report
+ talloc_report_printf
access
TDB_LIB
+ z
''')
bld.SAMBA3_LIBRARY('smbd_shim',
libsmb/cliprint.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/async_smb.c
libsmb/reparse_symlink.c
libsmb/clisymlink.c
LIBTSOCKET
KRBCLIENT
NDR_IOCTL
+ NDR_QUOTA
cli_smb_common
util_cmdline
tevent
smbconf
samba3util
dbwrap
+ krb5samba
+ LIBCLI_AUTH
''',
private_library=True)
abi_directory='lib/ABI',
abi_match='smbldap_*',
pc_files=[],
- vnum='2',
+ vnum='2.1.0',
public_headers='include/smbldap.h include/smb_ldap.h')
bld.SAMBA3_LIBRARY('ads',
SAMBA_VERSION
cap
charset
- cli_smb_common
+ samba-hostconfig
errors3
SMBCONF_PARAM
samba-util
bld.SAMBA3_LIBRARY('smbd_conn',
source='smbd/conn.c',
- deps='samba3-util samba-util',
+ deps='samba3-util samba-util FNAME_UTIL',
private_library=True)
bld.SAMBA3_SUBSYSTEM('sysquotas',
lib/sysquotas_xfs.c
lib/sysquotas_4A.c
lib/sysquotas_4B.c
+ lib/sysquotas_jfs2.c
lib/sysquotas_nfs.c
''',
allow_warnings=True,
smbd/error.c
printing/printspoolss.c
lib/sessionid_tdb.c
- lib/conn_tdb.c
lib/cleanupdb.c
smbd/fake_file.c
smbd/quotas.c
smbd/mangle_hash.c
smbd/mangle_hash2.c
smbd/oplock.c
- smbd/oplock_irix.c
smbd/oplock_linux.c
smbd/notify.c
smbd/notify_msg.c
smbd/build_options.c
+ smbd/smb1_utils.c
''' + NOTIFY_SOURCES,
deps='''
talloc
NDR_IOCTL
notifyd
vfs_acl_common
+ NDR_QUOTA
+ GNUTLS_HELPERS
''' +
bld.env['dmapi_lib'] +
bld.env['legacy_quota_libs'] +
if bld.CONFIG_GET("WITH_PROFILE"):
bld.SAMBA3_SUBSYSTEM('PROFILE',
source='profile/profile.c',
- deps='samba-util')
+ deps='''
+ samba-util
+ gnutls
+ ''')
else:
bld.SAMBA3_SUBSYSTEM('PROFILE',
source='profile/profile_dummy.c',
libsmb/unexpected.c
libsmb/namecache.c
libsmb/nmblib.c
+ libsmb/clidgram.c
libsmb/namequery.c
libsmb/conncache.c
libads/sitename_cache.c
''',
deps='''
LIBTSOCKET
+ LIBCLI_NETLOGON
samba3util
addns
lmhosts
auth/pass_check.c
''',
deps='''
+ crypt
pam
PAM_ERRORS
''')
tdb
''')
+bld.SAMBA3_SUBSYSTEM('dsgetdcname',
+ source='''
+ libsmb/dsgetdcname.c
+ ''',
+ deps='''
+ CLDAP
+ LIBNMB
+ ''')
+
bld.SAMBA3_SUBSYSTEM('DCUTIL',
source='''
libsmb/namequery_dc.c
- libsmb/trustdom_cache.c
- libsmb/dsgetdcname.c
''',
deps='''
ads
+ dsgetdcname
msrpc3
libcli_lsa3
''')
lib/namearray.c
lib/file_id.c
lib/cbuf.c
+ lib/per_thread_cwd.c
''',
deps='''
samba-util
bld.SAMBA3_SUBSYSTEM('LIBCLI_SAMR',
source='rpc_client/cli_samr.c',
- deps='RPC_NDR_SAMR')
+ deps='RPC_NDR_SAMR INIT_SAMR')
bld.SAMBA3_LIBRARY('libcli_lsa3',
source='rpc_client/cli_lsarpc.c',
deps='''
msrpc3
RPC_NDR_NETLOGON
- INIT_NETLOGON
cliauth
smbconf
NETLOGON_CREDS_CLI''',
source='rpc_client/cli_pipe_schannel.c',
deps='samba-util krb5samba')
+bld.SAMBA3_SUBSYSTEM('RPCCLI_MDSSVC',
+ source='''
+ rpc_client/cli_mdssvc.c
+ rpc_client/cli_mdssvc_util.c
+ ''',
+ deps='mdssvc RPC_NDR_MDSSVC')
+
bld.SAMBA3_SUBSYSTEM('INIT_LSA',
source='rpc_client/init_lsa.c',
deps='samba-util')
-bld.SAMBA3_SUBSYSTEM('INIT_NETLOGON',
- source='rpc_client/init_netlogon.c',
- deps='samba-util')
-
bld.SAMBA3_SUBSYSTEM('INIT_SAMR',
source='rpc_client/init_samr.c',
- deps='samba-util')
+ deps='samba-util GNUTLS_HELPERS')
bld.SAMBA3_SUBSYSTEM('LIBLSA',
source='lib/lsa.c')
RPC_SOCK_HELPER
''')
+bld.SAMBA3_SUBSYSTEM('tevent-glib-glue',
+ source='lib/tevent_glib_glue.c',
+ deps='glib-2.0',
+ enabled=bld.CONFIG_SET('WITH_TEVENT_GLIB_GLUE'),
+)
+
+bld.SAMBA3_SUBSYSTEM('ADOUBLE',
+ source='lib/adouble.c',
+ deps='STRING_REPLACE')
+
+bld.SAMBA3_SUBSYSTEM('STRING_REPLACE',
+ source='lib/string_replace.c')
+
########################## BINARIES #################################
bld.SAMBA3_BINARY('smbd/smbd',
''',
deps='''
talloc
- popt_samba3
+ popt_samba3_cmdline
smbconf
ndr-standard
SMBREADLINE
deps='''
DYNCONFIG
cups
+ krb5samba
''',
install_path='${LIBEXECDIR}/samba',
enabled=bld.CONFIG_SET('HAVE_CUPS'))
+bld.SAMBA3_BINARY('smbspool_argv_wrapper',
+ source='script/tests/smbspool_argv_wrapper.c',
+ for_selftest=True)
+
bld.SAMBA3_BINARY('locktest2',
source='torture/locktest2.c',
deps='''
libsmb
LOCKING
''',
- install=False)
+ for_selftest=True)
-smbstatus_source = 'utils/status.c smbd/notify_msg.c'
+TORTURE3_ADDITIONAL_SOURCE=""
-if bld.CONFIG_GET("WITH_PROFILE"):
- smbstatus_source += ' utils/status_profile.c'
-else:
- smbstatus_source += ' utils/status_profile_dummy.c'
-
-bld.SAMBA3_BINARY('smbstatus',
- source=smbstatus_source,
- deps='''
- talloc
- smbconf
- popt_samba3
- smbd_base
- LOCKING
- PROFILE
- ''')
+if bld.env.with_ctdb:
+ TORTURE3_ADDITIONAL_SOURCE += ' torture/test_ctdbd_conn.c'
bld.SAMBA3_BINARY('smbtorture' + bld.env.suffix3,
source='''
torture/wbc_async.c
torture/test_g_lock.c
torture/test_namemap_cache.c
- ''',
+ torture/test_idmap_cache.c
+ torture/test_hidenewfiles.c
+ torture/test_readdir_timestamp.c
+ ''' + TORTURE3_ADDITIONAL_SOURCE,
deps='''
talloc
smbconf
samba-cluster-support
''',
cflags='-DWINBINDD_SOCKET_DIR=\"%s\"' % bld.env.WINBINDD_SOCKET_DIR,
- install=False)
+ for_selftest=True)
bld.SAMBA3_BINARY('smbconftort',
source='lib/smbconf/testsuite.c',
smbconf
popt_samba3
''',
- install=False)
-
-bld.SAMBA3_BINARY('replacetort',
- source='../lib/replace/test/main.c',
- deps='replace replace-test',
- install=False)
+ for_selftest=True)
bld.SAMBA3_BINARY('msgtest',
source='torture/msgtest.c',
''',
install=False)
+bld.SAMBA3_BINARY('test_mdsparser_es',
+ source='''
+ rpc_server/mdssvc/test_mdsparser_es.c
+ rpc_server/mdssvc/es_parser.y
+ rpc_server/mdssvc/es_lexer.gcov.lex.c
+ rpc_server/mdssvc/es_mapping.c
+ ''',
+ deps='''
+ samba3-util
+ talloc
+ smbconf
+ jansson
+ cmocka
+ popt_samba3_cmdline
+ ''',
+ enabled=bld.env.spotlight_backend_es,
+ for_selftest=True)
+
bld.SAMBA3_BINARY('pdbtest',
source='torture/pdbtest.c',
deps='''
AUTH_COMMON
auth
''',
- install=False)
+ for_selftest=True)
bld.SAMBA3_BINARY('vfstest',
source='''
smbconf
SMBREADLINE
''',
- install=False)
+ for_selftest=True)
bld.SAMBA3_BINARY('versiontest',
source='lib/version_test.c',
bld.SAMBA3_BINARY('timelimit',
source='script/tests/timelimit.c',
- install=False)
+ for_selftest=True)
bld.SAMBA3_BINARY('rpc_open_tcp',
source='torture/rpc_open_tcp.c',
talloc
msrpc3
''',
- install=False)
+ for_selftest=True)
bld.SAMBA3_BINARY('vlp',
source='printing/tests/vlp.c',
talloc
smbconf
''',
- install=False)
+ for_selftest=True)
+
+pyrpc_util = bld.pyembed_libname('pyrpc_util')
+pytalloc_util = bld.pyembed_libname('pytalloc-util')
bld.SAMBA3_PYTHON('pysmbd',
source='smbd/pysmbd.c',
- deps='smbd_base pyrpc_util pytalloc-util',
+ deps=' '.join(['smbd_base', pyrpc_util, pytalloc_util]),
realname='samba/samba3/smbd.so'
)
+pycredentials = 'pycredentials'
bld.SAMBA3_PYTHON('pylibsmb',
source='libsmb/pylibsmb.c',
- deps='smbclient samba-credentials pycredentials',
+ deps='smbclient samba-credentials %s' % pycredentials,
realname='samba/samba3/libsmb_samba_internal.so'
)
+bld.SAMBA3_PYTHON('pymdscli',
+ source='rpc_client/py_mdscli.c',
+ deps=' '.join(['RPCCLI_MDSSVC', pytalloc_util, pyrpc_util]),
+ realname='samba/samba3/mdscli.so')
+
bld.SAMBA3_BINARY('spotlight2sparql',
source='''
rpc_server/mdssvc/sparql_parser_test.c
rpc_server/mdssvc/sparql_parser.y
- rpc_server/mdssvc/sparql_lexer.l
+ rpc_server/mdssvc/sparql_lexer.gcov.lex.c
rpc_server/mdssvc/sparql_mapping.c''',
deps='samba3-util talloc ' + bld.env['libtracker'],
- enabled=bld.env.with_spotlight,
+ enabled=bld.env.spotlight_backend_tracker,
+ install=False)
+
+bld.SAMBA3_BINARY('spotlight2es',
+ source='''
+ rpc_server/mdssvc/es_parser_test.c
+ rpc_server/mdssvc/es_parser.y
+ rpc_server/mdssvc/es_lexer.gcov.lex.c
+ rpc_server/mdssvc/es_mapping.c''',
+ deps='samba3-util talloc jansson smbconf',
+ enabled=bld.env.spotlight_backend_es,
+ install=False)
+
+bld.SAMBA3_BINARY('tevent_glib_glue_test',
+ source='lib/tevent_glib_glue_tests.c',
+ deps='''
+ talloc
+ libsmb
+ popt_samba3
+ tevent-glib-glue''',
+ enabled=bld.CONFIG_SET('WITH_TEVENT_GLIB_GLUE'),
+ for_selftest=True)
+
+bld.SAMBA3_BINARY('tevent_glib_tracker',
+ source='utils/async-tracker.c',
+ deps='''
+ talloc
+ libsmb
+ popt_samba3
+ tevent-glib-glue ''' + bld.env['libtracker'],
+ enabled=bld.CONFIG_SET('HAVE_TRACKER') and bld.CONFIG_SET('WITH_TEVENT_GLIB_GLUE'),
install=False)
########################## INCLUDES #################################
bld.RECURSE('../examples/pdb')
bld.RECURSE('../examples/VFS')
bld.RECURSE('../examples/fuse')
+bld.RECURSE('../examples/winexe')
bld.RECURSE('lib/netapi/tests')
bld.RECURSE('lib/netapi/examples')
bld.RECURSE('smbd/notifyd')
bld.RECURSE('rpcclient')
bld.RECURSE('utils')
bld.RECURSE('nmbd')
+bld.RECURSE('lib/util')
bld.ENFORCE_GROUP_ORDERING()
bld.CHECK_PROJECT_RULES()