s3:smbd: remove unused sconn_server_id()
[mat/samba.git] / source3 / wscript_build
index 7c3dcffd12d3718d999b65f3dd70c4b6cc3eb358..8ac6cc0d48767084ae97fbeaa698659e68abbedc 100755 (executable)
@@ -3,16 +3,6 @@
 from samba_utils import *
 import samba_version, samba3
 
-# enable building of public headers in the build tree
-bld.env.build_public_headers = 'include/public'
-
-# these are includes which appear in public headers, but with #ifdef conditional
-# compilation, so they are safe
-bld.env.public_headers_skip = ['lib/ldb_compat.h']
-
-# s3 public headers refer to non-public headers
-bld.env.public_headers_allow_broken = True
-
 TDB_LIB_SRC = '''
          lib/dbwrap/dbwrap_open.c
          lib/dbwrap/dbwrap_tdb.c
@@ -21,7 +11,7 @@ TDB_LIB_SRC = '''
 
 TDB_VALIDATE_SRC = '''lib/tdb_validate.c'''
 
-SMBLDAP_SRC = '''lib/smbldap.c lib/smbldap_util.c'''
+SMBLDAP_SRC = '''lib/smbldap.c'''
 
 VERSION_SRC = '''lib/version.c'''
 
@@ -42,11 +32,11 @@ DRSUAPI_SRC = '''${COMPRESSION_SRC}'''
 LIBCLI_SPOOLSS_SRC = '''rpc_client/cli_spoolss.c
                      rpc_client/init_spoolss.c'''
 
-LIBCLI_LSA_SRC = '''rpc_client/cli_lsarpc.c rpc_client/util_lsarpc.c'''
+LIBCLI_LSA_SRC = '''rpc_client/cli_lsarpc.c'''
 
 LIBCLI_SAMR_SRC = 'rpc_client/cli_samr.c'
 
-LIBRPCCLI_NETLOGON_SRC = 'rpc_client/cli_netlogon.c rpc_client/util_netlogon.c'
+LIBCLI_NETLOGON_SRC = 'rpc_client/cli_netlogon.c rpc_client/util_netlogon.c'
 
 # this includes only the low level parse code, not stuff
 # that requires knowledge of security contexts
@@ -57,7 +47,6 @@ LIB_SRC = '''
           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/util_transfer_file.c
           lib/addrchange.c
@@ -76,11 +65,10 @@ LIB_SRC = '''
           lib/substitute.c lib/substitute_generic.c
           lib/ms_fnmatch.c
           lib/tallocmsg.c lib/dmallocmsg.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
@@ -93,7 +81,7 @@ POPT_LIB_SRC = '''lib/popt_common.c'''
 
 PARAM_UTIL_SRC = '''param/util.c'''
 
-PARAM_WITHOUT_REG_SRC = '''param/loadparm.c param/loadparm_server_role.c
+PARAM_WITHOUT_REG_SRC = '''param/loadparm.c
                            lib/sharesec.c lib/ldap_debug_handler.c lib/util_names.c'''
 
 KRBCLIENT_SRC = '''libads/kerberos.c libads/ads_status.c libsmb/clikrb5.c'''
@@ -136,10 +124,8 @@ LIBSMB_SRC = '''libsmb/clientgen.c libsmb/cliconnect.c libsmb/clifile.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/clisigning.c
-             libsmb/smb2cli_base.c
-             libsmb/smb2cli_negprot.c
+             libsmb/async_smb.c
+             libsmb/clisigning.c
              libsmb/smb2cli_session.c
              libsmb/smb2cli_tcon.c
              libsmb/smb2cli_create.c
@@ -199,6 +185,9 @@ REG_BASE_SRC = '''registry/reg_api.c
                registry/reg_util_internal.c
                lib/util_nttoken.c
                ${REG_BACKENDS_BASE_SRC}
+               registry/reg_parse_internal.c
+              lib/cbuf.c
+               lib/srprs.c
                ${REG_INIT_BASIC_SRC}'''
 
 REG_SMBCONF_SRC = '''
@@ -255,7 +244,7 @@ PLAINTEXT_AUTH_SRC = '''auth/pampass.c auth/pass_check.c'''
 
 SLCACHE_SRC = '''libsmb/samlogon_cache.c'''
 
-DCUTIL_SRC  = '''libsmb/namequery_dc.c libsmb/trustdom_cache.c libsmb/trusts_util.c libsmb/dsgetdcname.c'''
+DCUTIL_SRC  = '''libsmb/namequery_dc.c libsmb/trustdom_cache.c libsmb/dsgetdcname.c'''
 
 WINBINDD_SRC1 = '''winbindd/winbindd.c
                    winbindd/winbindd_group.c
@@ -349,7 +338,7 @@ WINBINDD_SRC = '''${WINBINDD_SRC1}
 
 MANGLE_SRC = '''smbd/mangle.c smbd/mangle_hash.c smbd/mangle_hash2.c'''
 
-SMBD_SRC_MAIN = '''smbd/server.c smbd/msg_idmap.c'''
+SMBD_SRC_MAIN = '''smbd/server.c'''
 
 BUILDOPT_SRC = '''smbd/build_options.c'''
 
@@ -521,7 +510,7 @@ SMBCONFTORT_SRC0 = 'lib/smbconf/testsuite.c'
 
 SMBCONFTORT_SRC = '''${SMBCONFTORT_SRC0}'''
 
-LIBNET_SRC = 'libnet/libnet_join.c libnet/libnet_keytab.c'
+LIBNET_SRC = 'libnet/libnet_join.c'
 
 
 LIBNET_DSSYNC_SRC = '''libnet/libnet_dssync.c
@@ -539,6 +528,7 @@ NET_SRC1 = '''utils/net.c utils/net_ads.c utils/net_help.c
               utils/net_rpc_join.c utils/net_time.c utils/net_lookup.c
               utils/net_cache.c utils/net_groupmap.c
               utils/net_idmap.c utils/net_idmap_check.c
+              utils/interact.c
               utils/net_status.c utils/net_rpc_printer.c utils/net_rpc_rights.c
               utils/net_rpc_service.c utils/net_rpc_registry.c utils/net_usershare.c
               utils/netlookup.c utils/net_sam.c utils/net_rpc_shell.c
@@ -546,6 +536,7 @@ NET_SRC1 = '''utils/net.c utils/net_ads.c utils/net_help.c
               utils/net_dns.c utils/net_ads_gpo.c
               utils/net_conf.c utils/net_join.c utils/net_user.c
               utils/net_group.c utils/net_file.c utils/net_registry.c
+              utils/net_registry_check.c
               utils/net_dom.c utils/net_share.c
               utils/net_g_lock.c
               utils/net_serverid.c
@@ -554,8 +545,8 @@ NET_SRC1 = '''utils/net.c utils/net_ads.c utils/net_help.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'''
+              registry/reg_import.c
+              '''
 
 NET_SRC2 = 'utils/net_registry_util.c utils/net_help_common.c'
 
@@ -573,11 +564,13 @@ SMBTORTURE_SRC1 = '''torture/torture.c torture/nbio.c torture/scanner.c torture/
                 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'''
+                torture/test_smbsock_any_connect.c
+                torture/t_strappend.c'''
 
 SMBTORTURE_SRC = '''${SMBTORTURE_SRC1}
         torture/wbc_async.c'''
@@ -592,8 +585,6 @@ PDBTEST_SRC = '''torture/pdbtest.c'''
 
 VFSTEST_SRC = '''torture/cmd_vfs.c torture/vfstest.c'''
 
-SMBICONV_SRC = '''torture/smbiconv.c'''
-
 LOG2PCAP_SRC = '''utils/log2pcaphex.c'''
 
 LOCKTEST2_SRC = '''torture/locktest2.c'''
@@ -615,8 +606,6 @@ SMBFILTER_SRC = '''utils/smbfilter.c'''
 
 WINBIND_WINS_NSS_SRC = '''../nsswitch/wins.c'''
 
-WBINFO_SRC = '''../nsswitch/wbinfo.c'''
-
 NTLM_AUTH_SRC1 = '''utils/ntlm_auth.c utils/ntlm_auth_diagnostics.c'''
 
 NTLM_AUTH_SRC = '''${NTLM_AUTH_SRC1}'''
@@ -633,10 +622,7 @@ SPLIT_TOKENS_SRC = 'utils/split_tokens.c'
 
 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_BLDOPTIONS('smbd/build_options.c')
 
@@ -650,26 +636,17 @@ t.env.BUILDDIR = bld.path.abspath()
 
 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
-                    LIBCLI_SAMR libcli_lsa3 LIBRPCCLI_NETLOGON
+                    LIBCLI_SAMR libcli_lsa3 libcli_netlogon3
                     RPC_NDR_SRVSVC RPC_NDR_WKSSVC RPC_NDR_INITSHUTDOWN
-                    INIT_NETLOGON INIT_SAMR popt_samba3''',
+                    INIT_SAMR popt_samba3''',
                     public_headers='../source3/lib/netapi/netapi.h',
                     pc_files=[],
                     vnum='0',
@@ -677,11 +654,13 @@ bld.SAMBA3_LIBRARY('netapi',
 
 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=[],
+                    abi_directory='libsmb/ABI',
+                    abi_match='smbc_*',
+                    vnum='0.1.0',
+                    pc_files='libsmb/smbclient.pc',
                     vars=locals())
 
 bld.SAMBA3_LIBRARY('smbsharemodes',
@@ -714,7 +693,7 @@ bld.SAMBA3_SUBSYSTEM('LIBMSRPC_GEN',
                     deps='''ndr-standard NDR_DSSETUP NDR_SPOOLSS''',
                     vars=locals())
 
-bld.SAMBA3_LIBRARY('libgpo',
+bld.SAMBA3_LIBRARY('gpo',
                    source='${LIBGPO_SRC}',
                    deps='talloc ads TOKEN_UTIL gpext',
                    vars=locals(),
@@ -735,19 +714,22 @@ bld.SAMBA3_SUBSYSTEM('TLDAP',
 
 bld.SAMBA3_LIBRARY('pdb',
                    source=PASSDB_SRC,
-                   deps='SECRETS3 SMBLDAP GROUPDB wbclient LIBCLI_AUTH flag_mapping',
+                   deps='SECRETS3 GROUPDB wbclient LIBCLI_AUTH flag_mapping',
                    private_library=True,
+                   public_headers='''
+                               include/passdb.h
+                               passdb/machine_sid.h
+                               passdb/lookup_sid.h''',
                    vars=locals())
 
 bld.SAMBA3_SUBSYSTEM('PARAM_UTIL',
                     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',
@@ -758,12 +740,11 @@ bld.SAMBA3_SUBSYSTEM('param',
                    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''')
 
-if bld.env.toplevel_build:
-    bld.SAMBA3_PYTHON('pys3param',
-                      source='param/pyparam.c',
-                      deps='param',
-                      public_deps='samba-hostconfig pytalloc-util talloc',
-                      realname='samba/samba3/param.so')
+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',
@@ -811,12 +792,12 @@ bld.SAMBA3_LIBRARY('util_cmdline',
 
 bld.SAMBA3_SUBSYSTEM('KRBCLIENT',
                     source=KRBCLIENT_SRC,
-                    public_deps='KRB5_WRAP k5crypto',
+                    public_deps='KRB5_WRAP k5crypto LIBTSOCKET CLDAP',
                     vars=locals())
 
 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',
                    vars=locals())
 
 bld.SAMBA3_LIBRARY('smbd_shim',
@@ -830,7 +811,7 @@ bld.SAMBA3_SUBSYSTEM('LIBSMB_ERR',
 
 bld.SAMBA3_SUBSYSTEM('LIBNTLMSSP',
                     source=LIBNTLMSSP_SRC,
-                    deps='LIBSMB_ERR NDR_NTLMSSP NTLMSSP_COMMON gensec_runtime',
+                    deps='LIBSMB_ERR NDR_NTLMSSP NTLMSSP_COMMON gensec',
                     vars=locals())
 
 bld.SAMBA3_LIBRARY('libsmb',
@@ -854,15 +835,17 @@ bld.SAMBA3_SUBSYSTEM('SECRETS3',
                    deps='NDR_SECRETS param samba3core pdb',
                    vars=locals())
 
-bld.SAMBA3_SUBSYSTEM('SMBLDAP',
+bld.SAMBA3_LIBRARY('smbldap',
                     source=SMBLDAP_SRC,
-                    deps='ldap lber',
+                    deps='ldap lber samba-util param',
                     vars=locals(),
-                    enabled=bld.env.HAVE_LDAP)
+                    enabled=bld.env.HAVE_LDAP,
+                    private_library=True,
+                    public_headers='include/smbldap.h include/smb_ldap.h')
 
 bld.SAMBA3_LIBRARY('ads',
                    source=LIBADS_SRC,
-                   deps='cli-ldap-common KRB5_WRAP ldap lber KRBCLIENT param LIBNMB libsmb DCUTIL',
+                   deps='cli-ldap-common KRB5_WRAP ldap lber KRBCLIENT param LIBNMB libsmb DCUTIL smbldap',
                    private_library=True,
                    vars=locals())
 
@@ -889,7 +872,8 @@ bld.SAMBA3_SUBSYSTEM('LIBAFS_SETTOKEN',
 bld.SAMBA3_LIBRARY('smbconf',
                    source=LIB_SMBCONF_SRC,
                    deps='''LIBSMBCONF smbregistry REG_SMBCONF talloc param
-                   util_reg samba-util errors3 charset SAMBA_VERSION''',
+                   util_reg samba-util errors3 charset SAMBA_VERSION
+                   cli_smb_common''',
                    public_headers='../lib/smbconf/smbconf.h',
                    pc_files=[],
                    vnum='0')
@@ -908,17 +892,18 @@ bld.SAMBA3_LIBRARY('smbd_base',
                     vfs vfs_default vfs_posixacl auth rpc LOCKING LIBAFS LIBAFS_SETTOKEN PROFILE
                     PRINTING PRINTBACKEND NDR_XATTR NDR_NOTIFY REGFIO
                     smbconf REG_FULL FNAME_UTIL
-                    LIBCLI_SAMR libcli_lsa3 LIBRPCCLI_NETLOGON cli_spoolss
-                    RPC_NDR_SRVSVC npa_tstream INIT_NETLOGON INIT_SAMR
+                    NDR_OPEN_FILES
+                    LIBCLI_SAMR libcli_lsa3 libcli_netlogon3 cli_spoolss
+                    RPC_NDR_SRVSVC npa_tstream INIT_SAMR
                     cli_smb_common RPC_SERVER smbd_conn param_service
-                    smbd_shim
+                    smbd_shim NDR_DFSBLOBS
                     ''',
                     private_library=True,
                     vars=locals())
 
 bld.SAMBA3_SUBSYSTEM('LOCKING',
                     source='${LOCKING_SRC}',
-                    deps='''tdb_compat talloc''',
+                    deps='''tdb_compat talloc NDR_OPEN_FILES''',
                     vars=locals())
 
 bld.SAMBA3_SUBSYSTEM('PROFILE',
@@ -959,12 +944,19 @@ bld.SAMBA3_SUBSYSTEM('FNAME_UTIL',
 
 bld.SAMBA3_SUBSYSTEM('LIBNET',
                     source=LIBNET_SRC,
-                    deps='NDR_LIBNET_JOIN KRB5_WRAP',
+                    deps='NDR_LIBNET_JOIN KRB5_WRAP net_keytab',
                     vars=locals())
 
+bld.SAMBA3_LIBRARY('net_keytab',
+                   source='libnet/libnet_keytab.c',
+                   deps='KRB5_WRAP ads',
+                   vars=locals(),
+                   private_library=True)
+
+
 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',
@@ -984,7 +976,7 @@ bld.SAMBA3_SUBSYSTEM('LIBNMB',
 
 bld.SAMBA3_SUBSYSTEM('LIBNBT',
                     source='',
-                    deps='NDR_SVCCTL NDR_NBT NDR_NBT_BUF LIBCLI_NETLOGON LIBCLI_NDR_NETLOGON',
+                    deps='NDR_SVCCTL ndr_nbt LIBCLI_NETLOGON',
                     vars=locals())
 
 bld.SAMBA3_SUBSYSTEM('SERVICES',
@@ -1014,9 +1006,15 @@ bld.SAMBA3_SUBSYSTEM('SLCACHE',
 
 bld.SAMBA3_SUBSYSTEM('DCUTIL',
                     source=DCUTIL_SRC,
-                     deps='ads LIBRPCCLI_NETLOGON msrpc3 libcli_lsa3 INIT_NETLOGON',
+                    deps='ads msrpc3 libcli_lsa3',
                     vars=locals())
 
+bld.SAMBA3_LIBRARY('trusts_util',
+                   source='libsmb/trusts_util.c',
+                   deps='ads libcli_netlogon3 msrpc3',
+                   vars=locals(),
+                   private_library=True)
+
 bld.SAMBA3_SUBSYSTEM('tdb-wrap3',
                     source='lib/util_tdb.c',
                      deps='tdb-wrap',
@@ -1070,7 +1068,7 @@ bld.SAMBA3_LIBRARY('CHARSET3',
 
 bld.SAMBA3_SUBSYSTEM('errors3',
                      source='libsmb/errormap.c libsmb/smberr.c lib/errmap_unix.c',
-                     deps='errors')
+                     deps='errors gssapi')
 
 bld.SAMBA3_SUBSYSTEM('LIBCLI_SAMR',
                     source=LIBCLI_SAMR_SRC,
@@ -1078,12 +1076,13 @@ bld.SAMBA3_SUBSYSTEM('LIBCLI_SAMR',
 
 bld.SAMBA3_LIBRARY('libcli_lsa3',
                    source=LIBCLI_LSA_SRC,
-                   deps='RPC_NDR_LSA INIT_LSA', 
+                   deps='RPC_NDR_LSA INIT_LSA UTIL_LSARPC', 
                    private_library=True)
 
-bld.SAMBA3_SUBSYSTEM('LIBRPCCLI_NETLOGON',
-                    source=LIBRPCCLI_NETLOGON_SRC,
-                    deps='RPC_NDR_NETLOGON')
+bld.SAMBA3_LIBRARY('libcli_netlogon3',
+                   source=LIBCLI_NETLOGON_SRC,
+                   deps='RPC_NDR_NETLOGON INIT_NETLOGON cliauth param',
+                   private_library=True)
 
 bld.SAMBA3_LIBRARY('cli_spoolss',
                    source=LIBCLI_SPOOLSS_SRC,
@@ -1139,8 +1138,8 @@ bld.SAMBA3_BINARY('winbindd/winbindd',
                  SRV_NDR_WBINT RPC_NDR_WBINT NDR_WBINT LIBAFS
                  LIBAFS_SETTOKEN PROFILE SLCACHE DCUTIL idmap nss_info
                  TOKEN_UTIL
-                 LIBCLI_SAMR libcli_lsa3 LIBRPCCLI_NETLOGON
-                 RPC_NDR_DSSETUP npa_tstream INIT_NETLOGON
+                 LIBCLI_SAMR libcli_lsa3 libcli_netlogon3
+                 RPC_NDR_DSSETUP npa_tstream
                  RPC_NCACN_NP RPC_PIPE_REGISTER RPC_SAMR RPC_LSARPC
                  PAM_ERRORS WB_REQTRANS auth
                  ''',
@@ -1162,11 +1161,11 @@ bld.SAMBA3_BINARY('rpcclient/rpcclient',
                  source=RPCCLIENT_SRC,
                  deps='''talloc tdb_compat cap popt_samba3 pdb libsmb smbd_shim
                  param wbclient param KRBCLIENT LIBMSRPC_GEN msrpc3
-                 ads SMBREADLINE DCUTIL RPC_NDR_WINREG RPC_NDR_ECHO
+                 ads SMBREADLINE trusts_util RPC_NDR_WINREG RPC_NDR_ECHO
                  RPC_CLIENT_SCHANNEL
-                 LIBCLI_SAMR libcli_lsa3 LIBRPCCLI_NETLOGON cli_spoolss
+                 LIBCLI_SAMR libcli_lsa3 libcli_netlogon3 cli_spoolss
                  RPC_NDR_SRVSVC RPC_NDR_WKSSVC RPC_NDR_DSSETUP RPC_NDR_DFS
-                 RPC_NDR_DRSUAPI RPC_NDR_NTSVCS RPC_NDR_EVENTLOG INIT_NETLOGON
+                 RPC_NDR_DRSUAPI RPC_NDR_NTSVCS RPC_NDR_EVENTLOG
                  INIT_SAMR
                  ''',
                  vars=locals())
@@ -1182,15 +1181,15 @@ bld.SAMBA3_BINARY('client/smbclient' + bld.env.suffix3,
 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 gpo ads LIBADS_SERVER LIBADS_PRINTER
                  LIBAFS LIBAFS_SETTOKEN SMBREADLINE PASSWD_UTIL LIBNET
                  LIBNET_DSSYNC LIBNET_SAMSYNC LIBEVENTLOG DCUTIL
                  REGFIO NDR_NTPRINTING RPC_NDR_WINREG
                  RPC_CLIENT_SCHANNEL TOKEN_UTIL
-                 LIBCLI_SAMR libcli_lsa3 LIBRPCCLI_NETLOGON cli_spoolss
+                 LIBCLI_SAMR libcli_lsa3 libcli_netlogon3 cli_spoolss
                  RPC_NDR_SRVSVC RPC_NDR_WKSSVC RPC_NDR_SVCCTL RPC_NDR_DSSETUP
-                 RPC_NDR_INITSHUTDOWN RPC_NDR_DRSUAPI INIT_NETLOGON INIT_SAMR
-                 printing_migrate
+                 RPC_NDR_INITSHUTDOWN RPC_NDR_DRSUAPI INIT_SAMR
+                 printing_migrate trusts_util
                 ''',
                  vars=locals())
 
@@ -1232,21 +1231,21 @@ bld.SAMBA3_BINARY('smbcontrol',
 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())
 
@@ -1290,14 +1289,14 @@ bld.SAMBA3_BINARY('msgtest',
 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())
 
@@ -1321,7 +1320,7 @@ bld.SAMBA3_BINARY('locktest' + bld.env.suffix3,
 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',
@@ -1329,11 +1328,6 @@ bld.SAMBA3_BINARY('vfstest',
                  deps='smbd_base SMBREADLINE',
                  vars=locals())
 
-bld.SAMBA3_BINARY('smbiconv',
-                 source=SMBICONV_SRC,
-                 deps='''talloc tdb_compat tevent cap param smbd_shim popt_samba3 LIBSMB_ERR''',
-                 vars=locals())
-
 bld.SAMBA3_BINARY('log2pcap',
                  source=LOG2PCAP_SRC,
                  deps='''talloc popt''',
@@ -1361,18 +1355,11 @@ bld.SAMBA3_BINARY('versiontest',
                  deps='SAMBA_VERSION samba3core param',
                  vars=locals())
 
-bld.SAMBA3_BINARY('wbinfo' + bld.env.suffix3,
-                 source=WBINFO_SRC,
-                 deps='''talloc wbclient tevent cap
-                 asn1util LIBTSOCKET pdb ldap param smbd_shim
-                 LIBNTLMSSP popt_samba3 LIBAFS_SETTOKEN''',
-                 vars=locals())
-
 bld.SAMBA3_BINARY('ntlm_auth' + bld.env.suffix3,
                  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())
 
@@ -1418,60 +1405,8 @@ 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')
 
-# 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='tevent-util')
-    bld.SAMBA3_SUBSYSTEM('cli-ldap', '', deps='tevent-util')
-    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')
@@ -1482,7 +1417,12 @@ bld.RECURSE('pam_smbpass')
 bld.RECURSE('passdb')
 bld.RECURSE('rpc_server')
 bld.RECURSE('winbindd')
-
+bld.RECURSE('../examples/auth')
+bld.RECURSE('../examples/libsmbclient')
+bld.RECURSE('../examples/pdb')
+bld.RECURSE('../examples/VFS')
+bld.RECURSE('lib/netapi/tests')
+bld.RECURSE('lib/netapi/examples')
 
 bld.ENFORCE_GROUP_ORDERING()
 bld.CHECK_PROJECT_RULES()