torture3: Test namemap_cache
[amitay/samba.git] / source3 / wscript_build
old mode 100755 (executable)
new mode 100644 (file)
index d0b3264..8b46cae
@@ -9,14 +9,6 @@ config_h = "../include/config.h"
 
 bld.SAMBA_BLDOPTIONS('smbd/build_options.c')
 
-t = bld.SAMBA_GENERATOR('build_env.h',
-                        source='script/build_env.sh',
-                        target='include/build_env.h',
-                        rule='${SRC} ${SRCDIR} ${BUILDDIR} ${CC} > ${TGT}')
-# todo: work out what is really wanted here
-t.env.SRCDIR = bld.path.abspath()
-t.env.BUILDDIR = bld.path.abspath()
-
 bld.SETUP_BUILD_GROUPS()
 
 ######################## SUBSYSTEMS #################################
@@ -57,7 +49,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',
@@ -84,25 +76,6 @@ bld.SAMBA3_LIBRARY('msrpc3',
                    ''',
                    private_library=True)
 
-bld.SAMBA3_LIBRARY('gpo',
-                   source='''
-                          ../libgpo/gpo_ldap.c
-                          ../libgpo/gpo_ini.c
-                          ../libgpo/gpo_util.c
-                          ../libgpo/gpo_fetch.c
-                          libgpo/gpo_filesync.c
-                          ../libgpo/gpo_sec.c
-                          libgpo/gpo_reg.c
-                          ''',
-                   deps='''
-                        talloc
-                        ads
-                        TOKEN_UTIL
-                        gpext
-                        auth
-                        ''',
-                   private_library=True)
-
 bld.SAMBA3_SUBSYSTEM('AVAHI',
                     source='''
                            lib/avahi.c
@@ -168,7 +141,7 @@ bld.SAMBA3_LIBRARY('samba-passdb',
                                   ''',
                    abi_match=private_pdb_match,
                    abi_directory='passdb/ABI',
-                   vnum='0.25.0')
+                   vnum='0.27.0')
 
 bld.SAMBA3_SUBSYSTEM('pdb',
                    source='''
@@ -213,26 +186,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 +199,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
@@ -256,7 +210,6 @@ bld.SAMBA3_LIBRARY('smbregistry',
                           lib/util_nttoken.c
                           registry/reg_backend_db.c
                           registry/reg_parse_internal.c
-                          lib/cbuf.c
                           lib/srprs.c
                           registry/reg_init_basic.c
                           ''',
@@ -273,10 +226,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
@@ -284,7 +236,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='''
@@ -299,7 +251,7 @@ bld.SAMBA3_SUBSYSTEM('REG_FULL',
                            registry/reg_init_full.c
                            registry/reg_perfcount.c''',
                     deps='''
-                         REG_SMBCONF
+                         smbconf
                          tdb-wrap3
                          ''')
 
@@ -333,9 +285,9 @@ bld.SAMBA3_SUBSYSTEM('samba3util',
                           lib/util_tsock.c
                           lib/util_transfer_file.c
                           lib/sys_popen.c
-                          lib/sock_exec.c
                           ''',
                    deps='''
+                        CHARSET3
                         ndr
                         LIBTSOCKET
                         samba-security
@@ -350,7 +302,8 @@ if bld.env.with_ctdb:
     SAMBA_CLUSTER_SUPPORT_SOURCES='''
                      lib/cluster_support.c
                      lib/dbwrap/dbwrap_ctdb.c
-                     lib/messages_ctdbd.c
+                     lib/messages_ctdb.c
+                     lib/messages_ctdb_ref.c
                      lib/ctdbd_conn.c
                    '''
     SAMBA_CLUSTER_SUPPORT_DEPS='''
@@ -409,7 +362,6 @@ bld.SAMBA3_SUBSYSTEM('samba3core',
                           lib/messages.c
                           lib/util_cluster.c
                           lib/id_cache.c
-                          lib/talloc_dict.c
                           lib/serverid.c
                           lib/server_id_watch.c
                           lib/server_id_db_util.c
@@ -432,15 +384,14 @@ bld.SAMBA3_SUBSYSTEM('samba3core',
                           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
                           lib/tevent_wait.c
                           lib/idmap_cache.c
+                          lib/namemap_cache.c
                           lib/util_ea.c
                           lib/background.c
-                          lib/cleanupdb.c
                           ''',
                    deps='''
                         samba3util
@@ -451,7 +402,7 @@ bld.SAMBA3_SUBSYSTEM('samba3core',
                         SAMBA_VERSION
                         PTHREADPOOL
                         interfaces
-                        param
+                        smbconf
                         dbwrap
                         samba3-util
                         errors3
@@ -529,7 +480,7 @@ bld.SAMBA3_LIBRARY('secrets3',
                           ''',
                    deps='''
                         NDR_SECRETS
-                        param
+                        smbconf
                         samba3util
                         dbwrap
                         ''',
@@ -537,13 +488,13 @@ 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',
                     abi_match='smbldap_*',
                     pc_files=[],
-                    vnum='0',
+                    vnum='2',
                     public_headers='include/smbldap.h include/smb_ldap.h')
 
 bld.SAMBA3_LIBRARY('ads',
@@ -568,11 +519,12 @@ bld.SAMBA3_LIBRARY('ads',
                         ldap
                         lber
                         KRBCLIENT
-                        param
+                        smbconf
                         LIBNMB
                         libsmb
                         DCUTIL
                         smbldap
+                        trusts_util
                         ''',
                    private_library=True)
 
@@ -584,13 +536,33 @@ 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
                           lib/smbconf/smbconf_reg.c
                           ''',
                    deps='''
-                        CHARSET3
                         LIBSMBCONF
                         REG_SMBCONF
                         SAMBA_VERSION
@@ -598,9 +570,8 @@ bld.SAMBA3_LIBRARY('smbconf',
                         charset
                         cli_smb_common
                         errors3
-                        param
+                        SMBCONF_PARAM
                         samba-util
-                        smbregistry
                         talloc
                         util_reg
                         ''',
@@ -678,6 +649,7 @@ bld.SAMBA3_LIBRARY('smbd_base',
                           printing/printspoolss.c
                           lib/sessionid_tdb.c
                           lib/conn_tdb.c
+                          lib/cleanupdb.c
                           smbd/fake_file.c
                           smbd/quotas.c
                           smbd/ntquotas.c
@@ -737,7 +709,6 @@ bld.SAMBA3_LIBRARY('smbd_base',
                         vfs_default
                         vfs_posixacl
                         inotify
-                        popt_samba3
                         samba3core
                         smbd_conn
                         param_service
@@ -750,11 +721,13 @@ bld.SAMBA3_LIBRARY('smbd_base',
                         RPC_SERVICE
                         NDR_SMBXSRV
                         LEASES_DB
+                        LEASES_UTIL
                         sysquotas
                         NDR_SMB_ACL
                         netapi
                         NDR_IOCTL
                         notifyd
+                        vfs_acl_common
                    ''' +
                    bld.env['dmapi_lib'] +
                    bld.env['legacy_quota_libs'] +
@@ -772,6 +745,7 @@ bld.SAMBA3_SUBSYSTEM('LOCKING',
                          tdb
                          talloc
                          LEASES_DB
+                         LEASES_UTIL
                          NDR_OPEN_FILES
                          FNAME_UTIL
                          ''')
@@ -780,6 +754,10 @@ bld.SAMBA3_SUBSYSTEM('LEASES_DB',
                     source='locking/leases_db.c',
                     deps='NDR_LEASES_DB')
 
+bld.SAMBA3_SUBSYSTEM('LEASES_UTIL',
+                    source='locking/leases_util.c',
+                    deps='NDR_OPEN_FILES')
+
 if bld.CONFIG_GET("WITH_PROFILE"):
     bld.SAMBA3_SUBSYSTEM('PROFILE',
                          source='profile/profile.c',
@@ -827,7 +805,7 @@ bld.SAMBA3_LIBRARY('printing_migrate',
                          cli_spoolss
                          RPC_NDR_WINREG
                          LIBCLI_WINREG
-                         param
+                         smbconf
                          ''',
                     private_library=True)
 
@@ -875,19 +853,6 @@ bld.SAMBA3_SUBSYSTEM('LIBNET_DSSYNC',
                          RPC_NDR_DRSUAPI
                          ''')
 
-bld.SAMBA3_SUBSYSTEM('LIBNET_SAMSYNC',
-                    source='''
-                           libnet/libnet_samsync.c
-                           libnet/libnet_samsync_ldif.c
-                           libnet/libnet_samsync_passdb.c
-                           libnet/libnet_samsync_display.c
-                           libnet/libnet_samsync_keytab.c
-                           ''',
-                    deps='''
-                         LIBNET
-                         LIBCLI_SAMSYNC
-                         ''')
-
 bld.SAMBA3_SUBSYSTEM('LIBEVENTLOG',
                     source='lib/eventlog/eventlog.c',
                     deps='NDR_EVENTLOG tdb')
@@ -983,6 +948,7 @@ bld.SAMBA3_LIBRARY('samba3-util',
                           lib/util_malloc.c
                           lib/namearray.c
                           lib/file_id.c
+                          lib/cbuf.c
                           ''',
                    deps='''
                         samba-util
@@ -1037,7 +1003,7 @@ bld.SAMBA3_LIBRARY('libcli_netlogon3',
                         RPC_NDR_NETLOGON
                         INIT_NETLOGON
                         cliauth
-                        param
+                        smbconf
                         NETLOGON_CREDS_CLI''',
                    private_library=True)
 
@@ -1048,7 +1014,7 @@ bld.SAMBA3_LIBRARY('cli_spoolss',
                           ''',
                    deps='''
                         RPC_NDR_SPOOLSS
-                        param
+                        smbconf
                         secrets3''',
                    private_library=True)
 
@@ -1091,6 +1057,7 @@ bld.SAMBA3_SUBSYSTEM('SPOOLSSD',
 bld.SAMBA3_BINARY('smbd/smbd',
                  source='smbd/server.c smbd/smbd_cleanupd.c',
                  deps='''
+                      popt_samba3
                       smbd_base
                       EPMD
                       LSASD
@@ -1115,7 +1082,7 @@ bld.SAMBA3_BINARY('client/smbclient',
                  deps='''
                       talloc
                       popt_samba3
-                      param
+                      smbconf
                       ndr-standard
                       SMBREADLINE
                       libsmb
@@ -1130,7 +1097,7 @@ bld.SAMBA3_BINARY('smbspool',
                  deps='''
                       talloc
                       popt_samba3
-                      param
+                      smbconf
                       libsmb
                       samba3core
                       ''')
@@ -1148,7 +1115,7 @@ bld.SAMBA3_BINARY('locktest2',
                  source='torture/locktest2.c',
                  deps='''
                       talloc
-                      param
+                      smbconf
                       libsmb
                       LOCKING
                       ''',
@@ -1165,7 +1132,7 @@ bld.SAMBA3_BINARY('smbstatus',
                  source=smbstatus_source,
                  deps='''
                       talloc
-                      param
+                      smbconf
                       popt_samba3
                       smbd_base
                       LOCKING
@@ -1196,6 +1163,7 @@ bld.SAMBA3_BINARY('smbtorture' + bld.env.suffix3,
                         torture/test_notify.c
                         lib/tevent_barrier.c
                         torture/test_dbwrap_watch.c
+                        torture/test_dbwrap_do_locked.c
                         torture/test_idmap_tdb_common.c
                         torture/test_dbwrap_ctdb.c
                         torture/test_buffersize.c
@@ -1205,10 +1173,12 @@ bld.SAMBA3_BINARY('smbtorture' + bld.env.suffix3,
                         torture/test_pthreadpool_tevent.c
                         torture/bench_pthreadpool.c
                         torture/wbc_async.c
+                        torture/test_g_lock.c
+                        torture/test_namemap_cache.c
                         ''',
                  deps='''
                       talloc
-                      param
+                      smbconf
                       libsmb
                       msrpc3
                       TLDAP
@@ -1227,7 +1197,7 @@ bld.SAMBA3_BINARY('smbconftort',
                  source='lib/smbconf/testsuite.c',
                  deps='''
                       talloc
-                      param
+                      smbconf
                       popt_samba3
                       ''',
                  install=False)
@@ -1241,7 +1211,7 @@ bld.SAMBA3_BINARY('msgtest',
                  source='torture/msgtest.c',
                  deps='''
                       talloc
-                      param
+                      smbconf
                       ''',
                  install=False)
 
@@ -1249,7 +1219,7 @@ bld.SAMBA3_BINARY('msg_sink',
                  source='torture/msg_sink.c',
                  deps='''
                       talloc
-                      param
+                      smbconf
                       ''',
                  install=False)
 
@@ -1257,35 +1227,41 @@ bld.SAMBA3_BINARY('msg_source',
                  source='torture/msg_source.c',
                  deps='''
                       talloc
-                      param
+                      smbconf
                       ''',
                  install=False)
 
 bld.SAMBA3_BINARY('pdbtest',
                  source='torture/pdbtest.c',
                  deps='''
-                 talloc
-                 pdb
-                 popt_samba3
-                 AUTH_COMMON
-                 auth''',
+                      talloc
+                      pdb
+                      popt_samba3
+                      AUTH_COMMON
+                      auth
+                      ''',
                  install=False)
 
 bld.SAMBA3_BINARY('vfstest',
-                 source='''torture/cmd_vfs.c
-                 torture/vfstest.c
-                 torture/vfstest_chain.c''',
+                 source='''
+                        torture/cmd_vfs.c
+                        torture/vfstest.c
+                        torture/vfstest_chain.c
+                        ''',
                  deps='''
-                 vfs
-                 popt_samba3
-                 SMBREADLINE''',
+                      vfs
+                      popt_samba3
+                      smbconf
+                      SMBREADLINE
+                      ''',
                  install=False)
 
 bld.SAMBA3_BINARY('versiontest',
                  source='lib/version_test.c',
                  deps='''
-                 SAMBA_VERSION
-                 param''',
+                      SAMBA_VERSION
+                      smbconf
+                      ''',
                  install=False)
 
 bld.SAMBA3_BINARY('timelimit',
@@ -1295,15 +1271,17 @@ bld.SAMBA3_BINARY('timelimit',
 bld.SAMBA3_BINARY('rpc_open_tcp',
                  source='torture/rpc_open_tcp.c',
                  deps='''
-                 talloc
-                 msrpc3''',
+                      talloc
+                      msrpc3
+                      ''',
                  install=False)
 
 bld.SAMBA3_BINARY('vlp',
                  source='printing/tests/vlp.c',
                  deps='''
-                 talloc
-                 param''',
+                      talloc
+                      smbconf
+                      ''',
                  install=False)
 
 bld.SAMBA3_PYTHON('pysmbd',
@@ -1321,8 +1299,8 @@ bld.SAMBA3_PYTHON('pylibsmb',
 bld.SAMBA3_BINARY('spotlight2sparql',
                  source='''
                  rpc_server/mdssvc/sparql_parser_test.c
-                 rpc_server/mdssvc/sparql_parser.c
-                 rpc_server/mdssvc/sparql_lexer.c
+                 rpc_server/mdssvc/sparql_parser.y
+                 rpc_server/mdssvc/sparql_lexer.l
                  rpc_server/mdssvc/sparql_mapping.c''',
                  deps='samba3-util talloc ' + bld.env['libtracker'],
                  enabled=bld.env.with_spotlight,
@@ -1332,7 +1310,6 @@ bld.SAMBA3_BINARY('spotlight2sparql',
 
 bld.RECURSE('auth')
 bld.RECURSE('libgpo/gpext')
-bld.RECURSE('lib/pthreadpool')
 bld.RECURSE('librpc')
 bld.RECURSE('librpc/idl')
 bld.RECURSE('libsmb')