build: netapi does not depend on TOKEN_UTIL
[sfrench/samba-autobuild/.git] / source3 / wscript_build
index 7a277aa2c50e6ea1a598aeef02a72650488a6a81..9f3eb0502ac2fac147036dd8058176653110bdce 100755 (executable)
@@ -14,8 +14,9 @@ bld.env.public_headers_skip = ['lib/ldb_compat.h']
 bld.env.public_headers_allow_broken = True
 
 TDB_LIB_SRC = '''
-          lib/dbwrap.c lib/dbwrap_tdb.c
-          lib/dbwrap_ctdb.c
+         lib/dbwrap/dbwrap_open.c
+         lib/dbwrap/dbwrap_tdb.c
+          lib/dbwrap/dbwrap_ctdb.c
           lib/g_lock.c'''
 
 TDB_VALIDATE_SRC = '''lib/tdb_validate.c'''
@@ -47,9 +48,6 @@ LIBCLI_SAMR_SRC = 'rpc_client/cli_samr.c'
 
 LIBRPCCLI_NETLOGON_SRC = 'rpc_client/cli_netlogon.c rpc_client/util_netlogon.c'
 
-LIBCLI_WINREG_SRC = '''rpc_client/cli_winreg.c
-                       rpc_client/cli_winreg_int.c'''
-
 # this includes only the low level parse code, not stuff
 # that requires knowledge of security contexts
 REG_PARSE_PRS_SRC = '''registry/reg_parse_prs.c'''
@@ -57,6 +55,7 @@ REG_PARSE_PRS_SRC = '''registry/reg_parse_prs.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
@@ -77,12 +76,14 @@ LIB_SRC = '''
           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/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
@@ -116,7 +117,7 @@ LIBADS_SERVER_SRC = '''libads/kerberos_verify.c libads/authdata.c'''
 LIBADS_PRINTER_SRC = '''libads/ldap_printer.c'''
 
 SECRETS_SRC = '''passdb/secrets.c passdb/machine_account_secrets.c
-                 passdb/machine_sid.c'''
+                 passdb/machine_sid.c passdb/secrets_lsa.c'''
 
 LIBNMB_SRC = '''libsmb/unexpected.c libsmb/namecache.c libsmb/nmblib.c
              libsmb/namequery.c libsmb/conncache.c
@@ -135,8 +136,18 @@ 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/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
+             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/cli_np_tstream.c
              libsmb/reparse_symlink.c
              libsmb/clisymlink.c
@@ -366,7 +377,6 @@ SMBD_SRC_SRV = '''smbd/server_reload.c smbd/files.c smbd/connection.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
@@ -401,9 +411,8 @@ PRINTBACKEND_SRC = '''printing/printing.c
                       printing/nt_printing.c
                       printing/nt_printing_tdb.c
                       printing/nt_printing_migrate_internal.c
-                      printing/nt_printing_ads.c'''
-
-SMBD_SRC = '''${SMBD_SRC_BASE} ${SMBD_SRC_MAIN}'''
+                      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
@@ -543,6 +552,7 @@ NET_SRC1 = '''utils/net.c utils/net_ads.c utils/net_help.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'''
@@ -565,6 +575,7 @@ SMBTORTURE_SRC1 = '''torture/torture.c torture/nbio.c torture/scanner.c torture/
                torture/test_nttrans_create.c
                torture/test_case_insensitive.c
                torture/test_notify_online.c
+               torture/test_smb2.c
                 torture/test_smbsock_any_connect.c'''
 
 SMBTORTURE_SRC = '''${SMBTORTURE_SRC1}
@@ -626,10 +637,7 @@ if bld.env.toplevel_build:
 else:
     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',
@@ -655,22 +663,24 @@ if not bld.env.toplevel_build:
 bld.SAMBA3_LIBRARY('netapi',
                     source=LIBNETAPI_SRC,
                     public_deps='''talloc tdb_compat cap wbclient smbd_shim libsmb KRBCLIENT
-                    passdb SMBLDAP param samba-util
+                    pdb SMBLDAP 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',
                     source=LIBSMBCLIENT_SRC,
-                    public_deps='''talloc tdb_compat wbclient cap param  smbd_shim libsmb KRBCLIENT passdb SMBLDAP
+                    public_deps='''talloc tdb_compat wbclient cap param  smbd_shim libsmb KRBCLIENT pdb SMBLDAP
                     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',
@@ -678,6 +688,7 @@ bld.SAMBA3_LIBRARY('smbsharemodes',
                     public_deps='''talloc tdb_compat''',
                     deps='''ccan''',
                     public_headers='include/smb_share_modes.h',
+                    pc_files=[],
                     vnum='0',
                     vars=locals())
 
@@ -692,7 +703,7 @@ bld.SAMBA3_LIBRARY('msrpc3',
                    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)
@@ -702,10 +713,11 @@ bld.SAMBA3_SUBSYSTEM('LIBMSRPC_GEN',
                     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,
@@ -720,7 +732,7 @@ bld.SAMBA3_SUBSYSTEM('TLDAP',
                     source=TLDAP_SRC,
                     deps='asn1util LIBTSOCKET')
 
-bld.SAMBA3_LIBRARY('passdb',
+bld.SAMBA3_LIBRARY('pdb',
                    source=PASSDB_SRC,
                    deps='SECRETS3 SMBLDAP GROUPDB wbclient LIBCLI_AUTH flag_mapping',
                    private_library=True,
@@ -736,11 +748,6 @@ if bld.env.toplevel_build:
                          deps='''s3_param_h param''',
                          vars=locals())
 
-bld.SAMBA_GENERATOR('param/param_local_h',
-                    source= 'param/loadparm.c ../script/mkparamdefs.pl',
-                    target='param/param_local.h',
-                    rule='${PERL} ${SRC[1].abspath(env)} ${SRC[0].abspath(env)} --file ${TGT} --generate-scope=LOCAL')
-
 bld.SAMBA_GENERATOR('param/param_global_h',
                     source= 'param/loadparm.c ../script/mkparamdefs.pl',
                     target='param/param_global.h',
@@ -748,8 +755,15 @@ bld.SAMBA_GENERATOR('param/param_global_h',
 
 bld.SAMBA3_SUBSYSTEM('param',
                    source=PARAM_WITHOUT_REG_SRC,
-                   deps='samba-util PARAM_UTIL smbd_conn ldap lber LOADPARM_CTX samba3core smbconf param/param_local_h param/param_global_h''')
+                   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_SUBSYSTEM('param_service',
                      source='param/service.c',
                      deps = 'USER_UTIL param USER_UTIL PRINTING')
@@ -768,7 +782,7 @@ bld.SAMBA3_LIBRARY('smbregistry',
                    source=REG_BASE_SRC,
                    deps='''smbd_shim tdb-wrap3 NDR_SECURITY UTIL_TDB talloc
                    replace util_reg samba-util security
-                   errors3 adt_tree dbwrap_util util_str util_sec util_malloc''',
+                   errors3 adt_tree dbwrap util_str util_sec util_malloc''',
                    vars=locals(),
                    allow_undefined_symbols=True,
                    private_library=True)
@@ -801,7 +815,7 @@ bld.SAMBA3_SUBSYSTEM('KRBCLIENT',
 
 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 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',
                    vars=locals())
 
 bld.SAMBA3_LIBRARY('smbd_shim',
@@ -810,17 +824,17 @@ bld.SAMBA3_LIBRARY('smbd_shim',
 
 bld.SAMBA3_SUBSYSTEM('LIBSMB_ERR',
                     source='',
-                    deps='errors3 passdb 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',
                    source=LIBSMB_SRC,
-                   deps='LIBNTLMSSP CLDAP LIBNMB LIBNBT LIBDRSUAPI SPNEGO_PARSE LIBTSOCKET KRBCLIENT LIBCLI_SMB_COMMON util_cmdline tevent',
+                   deps='LIBNTLMSSP CLDAP LIBNMB LIBNBT LIBDRSUAPI SPNEGO_PARSE LIBTSOCKET KRBCLIENT cli_smb_common util_cmdline tevent',
                    vars=locals(),
                    private_library=True)
 
@@ -831,12 +845,12 @@ bld.SAMBA3_SUBSYSTEM('LIBDRSUAPI',
 
 bld.SAMBA3_SUBSYSTEM('CLDAP',
                     source='libads/cldap.c',
-                    deps='cli-ldap-common LIBCLI_CLDAP LIBTSOCKET',
+                    deps='cli-ldap-common cli_cldap LIBTSOCKET',
                     vars=locals())
 
 bld.SAMBA3_SUBSYSTEM('SECRETS3',
                    source=SECRETS_SRC,
-                   deps='NDR_SECRETS param samba3core passdb',
+                   deps='NDR_SECRETS param samba3core pdb',
                    vars=locals())
 
 bld.SAMBA3_SUBSYSTEM('SMBLDAP',
@@ -847,7 +861,7 @@ bld.SAMBA3_SUBSYSTEM('SMBLDAP',
 
 bld.SAMBA3_LIBRARY('ads',
                    source=LIBADS_SRC,
-                   deps='cli-ldap-common KRB5_WRAP ldap lber KRBCLIENT param LIBNTLMSSP LIBNMB libsmb DCUTIL',
+                   deps='cli-ldap-common KRB5_WRAP ldap lber KRBCLIENT param LIBNMB libsmb DCUTIL',
                    private_library=True,
                    vars=locals())
 
@@ -874,27 +888,28 @@ 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''',
                    public_headers='../lib/smbconf/smbconf.h',
+                   pc_files=[],
                    vnum='0')
 
 bld.SAMBA3_LIBRARY('smbd_conn',
                    source='smbd/conn.c',
-                   deps='string_init bitmap namearray',
+                   deps='string_init samba-util namearray',
                    private_library=True)
 
 bld.SAMBA3_LIBRARY('smbd_base',
                     source=SMBD_SRC_BASE,
                     deps='''tdb_compat tevent dl krb5 ldap gssapi gssapi_krb5
-                    samba-util wbclient crypt nsl cups cap z passdb
+                    samba-util wbclient crypt nsl cups cap z pdb
                     param samba3core libsmb popt_samba3 KRBCLIENT AVAHI
                     LIBMSRPC_GEN msrpc3 ads LIBADS_SERVER LIBADS_PRINTER
                     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 LIBCLI_SPOOLSS
+                    LIBCLI_SAMR libcli_lsa3 LIBRPCCLI_NETLOGON cli_spoolss
                     RPC_NDR_SRVSVC npa_tstream INIT_NETLOGON INIT_SAMR
-                    LIBCLI_SMB_COMMON RPC_SERVER smbd_conn param_service
+                    cli_smb_common RPC_SERVER smbd_conn param_service
                     smbd_shim
                     ''',
                     private_library=True,
@@ -922,7 +937,7 @@ bld.SAMBA3_SUBSYSTEM('PRINTBACKEND',
 
 bld.SAMBA3_LIBRARY('printing_migrate',
                     source='printing/nt_printing_migrate.c rpc_client/cli_winreg_spoolss.c printing/nt_printing_os2.c',
-                    deps='NDR_NTPRINTING LIBCLI_SPOOLSS RPC_NDR_WINREG LIBCLI_WINREG param',
+                    deps='NDR_NTPRINTING cli_spoolss RPC_NDR_WINREG LIBCLI_WINREG param',
                     vars=locals(),
                     private_library=True)
 
@@ -1006,8 +1021,8 @@ bld.SAMBA3_SUBSYSTEM('tdb-wrap3',
                      deps='tdb-wrap',
                     vars=locals())
 
-bld.SAMBA3_LIBRARY('dbwrap_util',
-                   source='lib/dbwrap_util.c lib/dbwrap_rbt.c',
+bld.SAMBA3_LIBRARY('dbwrap',
+                   source='lib/dbwrap/dbwrap.c lib/dbwrap/dbwrap_util.c lib/dbwrap/dbwrap_rbt.c',
                    deps='samba-util UTIL_TDB errors',
                    private_library=True)
 
@@ -1023,7 +1038,7 @@ bld.SAMBA3_LIBRARY('string_init',
 
 bld.SAMBA3_LIBRARY('util_str',
                    source='''lib/util_str.c''',
-                   deps='samba-util CHARSET',
+                   deps='samba-util charset',
                    private_library=True)
 
 bld.SAMBA3_LIBRARY('util_sec',
@@ -1031,11 +1046,6 @@ bld.SAMBA3_LIBRARY('util_sec',
                    deps='samba-util',
                    private_library=True)
 
-bld.SAMBA3_LIBRARY('bitmap',
-                   source='lib/bitmap.c',
-                   deps='samba-util',
-                   private_library=True)
-
 bld.SAMBA3_LIBRARY('namearray',
                    source='lib/namearray.c',
                    deps='samba-util',
@@ -1053,14 +1063,10 @@ bld.SAMBA3_LIBRARY('memcache',
 
 bld.SAMBA3_LIBRARY('CHARSET3',
                     source='''lib/charcnv.c lib/fstring.c''',
-                    public_deps='ICONV_WRAPPER CHARSET',
+                    public_deps='ICONV_WRAPPER charset',
                     deps='samba-util util_str',
                    private_library=True)
 
-bld.SAMBA3_SUBSYSTEM('ldb3',
-                    source='lib/ldb_compat.c',
-                    deps='samba-util')
-
 bld.SAMBA3_SUBSYSTEM('errors3',
                      source='libsmb/errormap.c libsmb/smberr.c lib/errmap_unix.c',
                      deps='errors')
@@ -1078,14 +1084,18 @@ bld.SAMBA3_SUBSYSTEM('LIBRPCCLI_NETLOGON',
                     source=LIBRPCCLI_NETLOGON_SRC,
                     deps='RPC_NDR_NETLOGON')
 
-bld.SAMBA3_LIBRARY('LIBCLI_SPOOLSS',
+bld.SAMBA3_LIBRARY('cli_spoolss',
                    source=LIBCLI_SPOOLSS_SRC,
                    deps='RPC_NDR_SPOOLSS param SECRETS3',
                    private_library=True)
 
 bld.SAMBA3_SUBSYSTEM('LIBCLI_WINREG',
-                    source=LIBCLI_WINREG_SRC,
-                    deps='RPC_NDR_WINREG RPC_NCACN_NP')
+                    source='rpc_client/cli_winreg.c',
+                    deps='RPC_NDR_WINREG')
+
+bld.SAMBA3_SUBSYSTEM('LIBCLI_WINREG_INTERNAL',
+                    source='rpc_client/cli_winreg_int.c',
+                    deps='LIBCLI_WINREG RPC_NCACN_NP')
 
 bld.SAMBA3_SUBSYSTEM('RPC_CLIENT_SCHANNEL',
                     source=RPC_CLIENT_SCHANNEL_SRC,
@@ -1108,14 +1118,14 @@ bld.SAMBA3_SUBSYSTEM('INIT_SAMR',
 
 bld.SAMBA3_BINARY('smbd/smbd',
                  source='${SMBD_SRC_MAIN}',
-                 deps='smbd_base EPMD',
+                 deps='smbd_base EPMD LSASD',
                  install_path='${SBINDIR}',
                  vars=locals())
 
 bld.SAMBA3_BINARY('nmbd/nmbd',
                  source=NMBD_SRC,
                  deps='''talloc tdb_compat tevent z cap wbclient dl
-                 passdb param ldap smbd_shim libsmb
+                 pdb param ldap smbd_shim libsmb
                  popt_samba3 KRBCLIENT NDR_SAMR NDR_LSA PROFILE''',
                  install_path='${SBINDIR}',
                  vars=locals())
@@ -1123,7 +1133,7 @@ bld.SAMBA3_BINARY('nmbd/nmbd',
 bld.SAMBA3_BINARY('winbindd/winbindd',
                  source=WINBINDD_SRC,
                  deps='''talloc tdb_compat tevent cap dl z
-                 wbclient passdb ldap param smbd_shim libsmb
+                 wbclient pdb ldap param smbd_shim libsmb
                  popt_samba3 KRBCLIENT LIBMSRPC_GEN msrpc3 ads LIBADS_SERVER
                  SRV_NDR_WBINT RPC_NDR_WBINT NDR_WBINT LIBAFS
                  LIBAFS_SETTOKEN PROFILE SLCACHE DCUTIL idmap nss_info
@@ -1140,7 +1150,7 @@ bld.SAMBA3_BINARY('winbindd/winbindd',
 bld.SAMBA3_BINARY('web/swat',
                  source=SWAT_SRC,
                  deps='''talloc tevent cap samba3core libsmb wbclient param
-                 smbd_shim passdb popt_samba3 KRBCLIENT cups
+                 smbd_shim pdb popt_samba3 KRBCLIENT cups
                  LIBMSRPC_GEN msrpc3 LOCKING PLAINTEXT_AUTH PRINTBASE PRINTING FNAME_UTIL
                  LIBCLI_SAMR INIT_LSA PASSCHANGE''',
                  enabled=bld.env.build_swat,
@@ -1149,11 +1159,11 @@ bld.SAMBA3_BINARY('web/swat',
 
 bld.SAMBA3_BINARY('rpcclient/rpcclient',
                  source=RPCCLIENT_SRC,
-                 deps='''talloc tdb_compat cap popt_samba3 passdb libsmb smbd_shim
+                 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
                  RPC_CLIENT_SCHANNEL
-                 LIBCLI_SAMR libcli_lsa3 LIBRPCCLI_NETLOGON LIBCLI_SPOOLSS
+                 LIBCLI_SAMR libcli_lsa3 LIBRPCCLI_NETLOGON 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
                  INIT_SAMR
@@ -1162,21 +1172,21 @@ bld.SAMBA3_BINARY('rpcclient/rpcclient',
 
 bld.SAMBA3_BINARY('client/smbclient' + bld.env.suffix3,
                  source=CLIENT_SRC,
-                 deps='''talloc tdb_compat cap popt_samba3 passdb libsmb smbd_shim
+                 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
-                 LIBCLI_SMB_COMMON''',
+                 cli_smb_common''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('net',
                  source=NET_SRC,
-                 deps='''talloc tdb_compat netapi addns cap intl popt_samba3 passdb libsmb smbd_shim
-                 param wbclient param KRBCLIENT LIBMSRPC_GEN msrpc3 LIBGPO ads LIBADS_SERVER LIBADS_PRINTER
+                 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
                  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 LIBCLI_SPOOLSS
+                 LIBCLI_SAMR libcli_lsa3 LIBRPCCLI_NETLOGON 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
@@ -1197,7 +1207,7 @@ bld.SAMBA3_BINARY('smbspool',
 bld.SAMBA3_BINARY('testparm',
                  source=TESTPARM_SRC,
                  deps='''talloc tevent ldap cap 
-                 wbclient asn1util LIBTSOCKET passdb param smbd_shim
+                 wbclient asn1util LIBTSOCKET pdb param smbd_shim
                  LIBSMB_ERR popt_samba3''',
                  vars=locals())
 
@@ -1221,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 passdb SMBLDAP LIBMSRPC_GEN msrpc3 PROFILE
+                 libsmb LIBSMB_ERR popt_samba3 KRBCLIENT pdb SMBLDAP 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 passdb SMBLDAP LIBMSRPC_GEN msrpc3 PASSWD_UTIL
+                 libsmb LIBSMB_ERR popt_samba3 KRBCLIENT pdb SMBLDAP 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 passdb SMBLDAP
+                 LIBNTLMSSP LIBSMB_ERR popt_samba3 pdb SMBLDAP
                  PASSWD_UTIL cli-ldap-common''',
                  vars=locals())
 
@@ -1279,21 +1289,21 @@ bld.SAMBA3_BINARY('msgtest',
 bld.SAMBA3_BINARY('smbcacls',
                  source=SMBCACLS_SRC,
                  deps='''talloc tdb_compat cap wbclient param libsmb KRBCLIENT
-                 smbd_shim passdb popt_samba3 SMBLDAP LIBMSRPC_GEN
+                 smbd_shim pdb popt_samba3 SMBLDAP 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 passdb SMBLDAP LIBMSRPC_GEN msrpc3
+                 popt_samba3 pdb SMBLDAP LIBMSRPC_GEN msrpc3
                  libcli_lsa3''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('eventlogadm',
                  source=EVTLOGADM_SRC,
                  deps='''talloc tevent cap popt_samba3 samba3core param
-                 smbd_shim LIBSMB_ERR passdb wbclient LIBEVENTLOG''',
+                 smbd_shim LIBSMB_ERR pdb wbclient LIBEVENTLOG''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('sharesec',
@@ -1309,7 +1319,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 passdb
+                 deps='''talloc tdb_compat cap wbclient param libsmb KRBCLIENT smbd_shim pdb
                  SMBLDAP popt_samba3 NDR_SAMR NDR_LSA''',
                  vars=locals())
 
@@ -1353,7 +1363,7 @@ bld.SAMBA3_BINARY('versiontest',
 bld.SAMBA3_BINARY('wbinfo' + bld.env.suffix3,
                  source=WBINFO_SRC,
                  deps='''talloc wbclient tevent cap
-                 asn1util LIBTSOCKET passdb ldap param smbd_shim
+                 asn1util LIBTSOCKET pdb ldap param smbd_shim
                  LIBNTLMSSP popt_samba3 LIBAFS_SETTOKEN''',
                  vars=locals())
 
@@ -1361,7 +1371,7 @@ 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
-                 passdb SMBLDAP winbind-client LIBINIPARSER LIBADS_SERVER
+                 pdb SMBLDAP winbind-client LIBINIPARSER LIBADS_SERVER
                  NDR_SAMR NDR_LSA NDR_NETLOGON cli-ldap-common LIBNMB SLCACHE SPNEGO_PARSE KRBCLIENT''',
                  vars=locals())
 
@@ -1412,9 +1422,12 @@ bld.INSTALL_FILES('${SWATDIR}', swat_files, base_name='../swat')
 
 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('dcerpc', '', deps='tevent-util')
+    bld.SAMBA3_SUBSYSTEM('cli-ldap', '', deps='tevent-util')
     bld.SAMBA3_SUBSYSTEM('LOADPARM_CTX', '')
 
 ########################## INCLUDES #################################
@@ -1426,6 +1439,7 @@ 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')