s3-lib: Fix util_cmdline which doesn't use popt.
[nivanova/samba-autobuild/.git] / source3 / wscript_build
index 863d15146180e3e39a04dd94d2cad08bea10067b..5df95197bf56bec02b61bd3f7c1067ec72aa5e0f 100755 (executable)
@@ -223,7 +223,7 @@ PASSDB_SRC = '''${PASSDB_GET_SET_SRC} passdb/passdb.c
                 lib/util_unixsids.c passdb/lookup_sid.c
                 passdb/login_cache.c
                 passdb/account_pol.c ${PRIVILEGES_SRC}
-                lib/util_nscd.c lib/winbind_util.c ${SERVER_MUTEX_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'''
@@ -499,8 +499,6 @@ LIBNETAPI_SRC0 = '''lib/netapi/netapi.c
 
 LIBNETAPI_SRC = '''${LIBNETAPI_SRC0}'''
 
-# FIXME:  bigballofmud
-
 CLIENT_SRC1 = '''client/client.c client/clitar.c
                  client/dnsbrowse.c'''
 
@@ -643,12 +641,18 @@ bld.SETUP_BUILD_GROUPS()
 
 bld.SAMBA3_LIBRARY('netapi',
                     source=LIBNETAPI_SRC,
-                    public_deps='''talloc tdb_compat libsmb KRBCLIENT
-                    pdb param samba-util ndr-standard msrpc3 ads LIBNET DCUTIL NDR_LIBNETAPI
-                    RPC_CLIENT_SCHANNEL smbconf REG_SMBCONF
-                    LIBCLI_SAMR libcli_lsa3 libcli_netlogon3
-                    RPC_NDR_SRVSVC RPC_NDR_WKSSVC RPC_NDR_INITSHUTDOWN
-                    INIT_SAMR''',
+                    public_deps='''
+                    talloc
+                    util_cmdline
+                    msrpc3
+                    ads
+                    NDR_LIBNETAPI
+                    LIBNET
+                    RPC_CLIENT_SCHANNEL
+                    libcli_netlogon3
+                    LIBCLI_SAMR
+                    INIT_SAMR
+                    ''',
                     public_headers='../source3/lib/netapi/netapi.h',
                     pc_files=[],
                     vnum='0',
@@ -656,8 +660,14 @@ bld.SAMBA3_LIBRARY('netapi',
 
 bld.SAMBA3_LIBRARY('smbclient',
                     source=LIBSMBCLIENT_SRC,
-                    public_deps='''talloc tdb_compat param libsmb KRBCLIENT pdb
-                    ndr-standard msrpc3 libcli_lsa3 RPC_NDR_SRVSVC popt_samba3''',
+                    public_deps='''
+                    talloc
+                    param
+                    libsmb
+                    KRBCLIENT
+                    msrpc3
+                    libcli_lsa3
+                    ''',
                     public_headers='include/libsmbclient.h',
                     abi_directory='libsmb/ABI',
                     abi_match='smbc_*',
@@ -682,7 +692,7 @@ bld.SAMBA3_LIBRARY('nss_wins',
 
 bld.SAMBA3_LIBRARY('gse',
                    source='librpc/crypto/gse_krb5.c librpc/crypto/gse.c',
-                   deps='KRB5_WRAP gensec param KRBCLIENT SECRETS3',
+                   deps='KRB5_WRAP gensec param KRBCLIENT secrets3',
                    private_library=True)
 
 bld.SAMBA3_LIBRARY('msrpc3',
@@ -715,7 +725,7 @@ bld.SAMBA3_SUBSYSTEM('TLDAP',
 
 bld.SAMBA3_LIBRARY('pdb',
                    source=PASSDB_SRC,
-                   deps='SECRETS3 GROUPDB wbclient LIBCLI_AUTH flag_mapping',
+                   deps='secrets3 GROUPDB SERVER_MUTEX wbclient LIBCLI_AUTH flag_mapping',
                    private_library=True,
                    public_headers='''
                                include/passdb.h
@@ -723,6 +733,9 @@ bld.SAMBA3_LIBRARY('pdb',
                                passdb/lookup_sid.h''',
                    vars=locals())
 
+bld.SAMBA3_SUBSYSTEM('SERVER_MUTEX',
+                     source=SERVER_MUTEX_SRC)
+
 bld.SAMBA3_SUBSYSTEM('PARAM_UTIL',
                     source=PARAM_UTIL_SRC)
 
@@ -787,7 +800,7 @@ bld.SAMBA3_LIBRARY('popt_samba3',
 
 bld.SAMBA3_LIBRARY('util_cmdline',
                    source='lib/util_cmdline.c',
-                   deps='SECRETS3 popt',
+                   deps='secrets3',
                    private_library=True)
 
 bld.SAMBA3_SUBSYSTEM('KRBCLIENT',
@@ -829,7 +842,7 @@ bld.SAMBA3_LIBRARY('smbd_shim',
 
 bld.SAMBA3_SUBSYSTEM('LIBNTLMSSP',
                     source=LIBNTLMSSP_SRC,
-                    deps='NDR_NTLMSSP NTLMSSP_COMMON',
+                    deps='NDR_NTLMSSP NTLMSSP_COMMON wbclient',
                     vars=locals())
 
 bld.SAMBA3_SUBSYSTEM('auth_generic',
@@ -858,9 +871,13 @@ bld.SAMBA3_SUBSYSTEM('CLDAP',
                     deps='cli-ldap-common cli_cldap LIBTSOCKET',
                     vars=locals())
 
-bld.SAMBA3_SUBSYSTEM('SECRETS3',
+# NOTE: The secrets3 library is a low level library used by several subsystems.
+# PLEASE DO NOT make it depend on high level libraries like PDB, if you are
+# doing that your design is wrong and needs changing. -SSS
+bld.SAMBA3_LIBRARY('secrets3',
                    source=SECRETS_SRC,
-                   deps='NDR_SECRETS param samba3util dbwrap pdb',
+                   deps='NDR_SECRETS param samba3util dbwrap',
+                   private_library=True,
                    vars=locals())
 
 bld.SAMBA3_LIBRARY('smbldap',
@@ -879,7 +896,7 @@ bld.SAMBA3_LIBRARY('ads',
 
 bld.SAMBA3_SUBSYSTEM('LIBADS_SERVER',
                     source=LIBADS_SERVER_SRC,
-                    deps='ndr-krb5pac KRB5_WRAP',
+                    deps='SERVER_MUTEX ndr-krb5pac KRB5_WRAP',
                    vars=locals())
 
 bld.SAMBA3_SUBSYSTEM('LIBADS_PRINTER',
@@ -926,59 +943,26 @@ bld.SAMBA3_LIBRARY('smbd_conn',
 bld.SAMBA3_LIBRARY('smbd_base',
                     source=SMBD_SRC_BASE,
                     deps='''
+                    talloc
                     tevent
-                    dl
-                    krb5
-                    ldap
-                    gssapi
-                    gssapi_krb5
-                    samba-util
-                    wbclient
-                    crypt
-                    nsl
-                    cups
-                    cap
-                    z
                     pdb
-                    param
-                    samba3core
                     libsmb
-                    popt_samba3
-                    KRBCLIENT
-                    AVAHI
-                    ndr-standard
                     msrpc3
-                    ads
-                    LIBADS_SERVER
-                    LIBADS_PRINTER
                     vfs
                     vfs_default
                     vfs_posixacl
-                    auth
+                    popt_samba3
+                    samba3core
+                    smbd_conn
+                    param_service
+                    AVAHI
+                    PRINTBASE
+                    PROFILE
                     LOCKING
+                    LIBADS_SERVER
                     LIBAFS
                     LIBAFS_SETTOKEN
-                    PROFILE
-                    PRINTING
-                    PRINTBACKEND
-                    NDR_XATTR
-                    NDR_NOTIFY
-                    REGFIO
-                    smbconf
-                    REG_FULL
-                    FNAME_UTIL
-                    NDR_OPEN_FILES
-                    libcli_lsa3
-                    cli_spoolss
-                    RPC_NDR_SRVSVC
-                    npa_tstream
-                    INIT_SAMR
-                    cli_smb_common
                     RPC_SERVER
-                    smbd_conn
-                    param_service
-                    smbd_shim
-                    NDR_DFSBLOBS
                     ''',
                     private_library=True,
                     vars=locals())
@@ -1015,7 +999,7 @@ bld.SAMBA3_LIBRARY('printing_migrate',
 
 bld.SAMBA3_SUBSYSTEM('PRINTING',
                     source=PRINTING_SRC,
-                    deps='NDR_PRINTCAP tdb',
+                    deps='NDR_PRINTCAP tdb cups',
                     vars=locals())
 
 bld.SAMBA3_SUBSYSTEM('PASSWD_UTIL',
@@ -1030,7 +1014,7 @@ bld.SAMBA3_SUBSYSTEM('FNAME_UTIL',
 
 bld.SAMBA3_SUBSYSTEM('LIBNET',
                     source=LIBNET_SRC,
-                    deps='NDR_LIBNET_JOIN net_keytab',
+                    deps='NDR_LIBNET_JOIN INIT_SAMR net_keytab pdb',
                     vars=locals())
 
 bld.SAMBA3_LIBRARY('net_keytab',
@@ -1094,7 +1078,7 @@ bld.SAMBA3_SUBSYSTEM('DCUTIL',
 
 bld.SAMBA3_LIBRARY('trusts_util',
                    source='libsmb/trusts_util.c',
-                   deps='libcli_netlogon3 msrpc3',
+                   deps='libcli_netlogon3 msrpc3 pdb',
                    vars=locals(),
                    private_library=True)
 
@@ -1150,7 +1134,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,
@@ -1168,7 +1152,7 @@ bld.SAMBA3_LIBRARY('libcli_netlogon3',
 
 bld.SAMBA3_LIBRARY('cli_spoolss',
                    source=LIBCLI_SPOOLSS_SRC,
-                   deps='RPC_NDR_SPOOLSS param SECRETS3',
+                   deps='RPC_NDR_SPOOLSS param secrets3',
                    private_library=True)
 
 bld.SAMBA3_SUBSYSTEM('LIBCLI_WINREG',
@@ -1221,39 +1205,24 @@ bld.SAMBA3_BINARY('winbindd/winbindd',
                  deps='''
                  talloc
                  tevent
-                 dl
                  pdb
-                 ldap
-                 param
-                 libsmb
                  popt_samba3
-                 KRBCLIENT
-                 ndr-standard
-                 msrpc3
-                 ads
-                 LIBADS_SERVER
-                 SRV_NDR_WBINT
-                 RPC_NDR_WBINT
-                 NDR_WBINT
-                 LIBAFS
-                 PROFILE
-                 SLCACHE
-                 DCUTIL
                  idmap
+                 ads
+                 msrpc3
                  nss_info
-                 TOKEN_UTIL
+                 LIBAFS
+                 LIBADS_SERVER
                  LIBCLI_SAMR
-                 libcli_lsa3
-                 libcli_netlogon3
+                 SLCACHE
                  RPC_NDR_DSSETUP
-                 npa_tstream
-                 RPC_NCACN_NP
-                 RPC_PIPE_REGISTER
+                 RPC_NDR_WBINT
+                 SRV_NDR_WBINT
                  RPC_SAMR
                  RPC_LSARPC
-                 PAM_ERRORS
+                 RPC_NCACN_NP
+                 RPC_PIPE_REGISTER
                  WB_REQTRANS
-                 auth
                  ''',
                  enabled=bld.env.build_winbind,
                  install_path='${SBINDIR}',
@@ -1274,7 +1243,7 @@ bld.SAMBA3_BINARY('web/swat',
                  PASSCHANGE
                  PRINTBASE
                  PRINTING
-                 cups''',
+                 ''',
                  enabled=bld.env.build_swat,
                  install_path='${SBINDIR}',
                  vars=locals())
@@ -1359,7 +1328,6 @@ bld.SAMBA3_BINARY('net',
                  RPC_NDR_SVCCTL
                  RPC_NDR_DSSETUP
                  RPC_NDR_INITSHUTDOWN
-                 INIT_SAMR
                  printing_migrate
                  trusts_util''',
                  vars=locals())
@@ -1377,7 +1345,6 @@ bld.SAMBA3_BINARY('smbspool',
                  source=CUPS_SRC,
                  deps='''
                  talloc
-                 tevent
                  popt_samba3
                  param
                  libsmb
@@ -1394,60 +1361,99 @@ bld.SAMBA3_BINARY('testparm',
 
 bld.SAMBA3_BINARY('smbta-util',
                  source=SMBTA_UTIL_SRC,
-                 deps='''talloc tdb_compat tevent cap param popt_samba3 smbd_shim''',
+                 deps='''
+                 talloc
+                 secrets3
+                 param''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('smbstatus',
                  source=STATUS_SRC,
-                 deps='''talloc tdb_compat tevent cap param popt_samba3 smbd_shim
-                 LOCKING PROFILE FNAME_UTIL''',
+                 deps='''
+                 talloc
+                 param
+                 popt_samba3
+                 LOCKING
+                 PROFILE''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('smbcontrol',
                  source=SMBCONTROL_SRC,
-                 deps='''talloc tdb_compat tevent cap param smbd_shim popt_samba3 PRINTBASE''',
+                 deps='''
+                 talloc
+                 param
+                 popt_samba3
+                 PRINTBASE''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('smbtree',
                  source=SMBTREE_SRC,
-                 deps='''talloc tdb_compat tevent cap wbclient param smbd_shim
-                 libsmb popt_samba3 KRBCLIENT pdb ndr-standard msrpc3 PROFILE
+                 deps='''
+                 talloc
+                 param
+                 libsmb
+                 msrpc3
+                 popt_samba3
+                 PROFILE
                  RPC_NDR_SRVSVC''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('smbpasswd',
                  source=SMBPASSWD_SRC,
-                 deps='''talloc tdb_compat tevent cap wbclient param smbd_shim
-                 libsmb popt_samba3 KRBCLIENT pdb ndr-standard msrpc3 PASSWD_UTIL
-                 LIBCLI_SAMR INIT_LSA PASSCHANGE''',
+                 deps='''
+                 talloc
+                 param
+                 pdb
+                 PASSWD_UTIL
+                 PASSCHANGE''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('pdbedit',
                  source=PDBEDIT_SRC,
-                 deps='''talloc tdb_compat tevent cap wbclient param smbd_shim
-                 LIBNTLMSSP popt_samba3 pdb
-                 PASSWD_UTIL cli-ldap-common''',
+                 deps='''
+                 talloc
+                 param
+                 popt_samba3
+                 pdb
+                 PASSWD_UTIL''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('smbget',
                  source=SMBGET_SRC,
-                 deps='''talloc tdb_compat smbclient popt_samba3''',
+                 deps='''
+                 talloc
+                 popt_samba3
+                 smbclient''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('nmblookup' + bld.env.suffix3,
                  source=NMBLOOKUP_SRC,
-                 deps='''talloc tdb_compat tevent cap param smbd_shim popt_samba3 LIBNMB''',
+                 deps='''
+                 talloc
+                 param
+                 popt_samba3
+                 LIBNMB''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('smbtorture' + bld.env.suffix3,
                  source=SMBTORTURE_SRC,
-                 deps='''talloc tdb_compat tevent cap wbclient param libsmb KRBCLIENT TLDAP
-                 smbd_shim popt_samba3 asn1util LIBTSOCKET NDR_LSA msrpc3 ndr-standard RPC_NDR_ECHO WB_REQTRANS libcli_lsa3''',
+                 deps='''
+                 talloc
+                 param
+                 libsmb
+                 msrpc3
+                 TLDAP
+                 RPC_NDR_ECHO
+                 WB_REQTRANS
+                 ''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('smbconftort',
                  source=SMBCONFTORT_SRC,
-                 deps='''talloc tdb_compat tevent cap wbclient param smbd_shim popt_samba3''',
+                 deps='''
+                 talloc
+                 param
+                 popt_samba3''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('replacetort',
@@ -1457,55 +1463,76 @@ bld.SAMBA3_BINARY('replacetort',
 
 bld.SAMBA3_BINARY('masktest' + bld.env.suffix3,
                  source=MASKTEST_SRC,
-                 deps='''talloc tdb_compat cap wbclient param smbd_shim libsmb KRBCLIENT
-                 asn1util LIBTSOCKET NDR_SAMR NDR_LSA''',
+                 deps='''
+                 talloc
+                 param
+                 libsmb''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('msgtest',
                  source=MSGTEST_SRC,
-                 deps='''talloc tdb_compat tevent cap param smbd_shim''',
+                 deps='''
+                 talloc
+                 param''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('smbcacls',
                  source=SMBCACLS_SRC,
-                 deps='''talloc tdb_compat cap wbclient param libsmb KRBCLIENT
-                 smbd_shim pdb popt_samba3 ndr-standard
-                 msrpc3 libcli_lsa3''',
+                 deps='''
+                 talloc
+                 popt_samba3
+                 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 ndr-standard msrpc3
+                 deps='''
+                 talloc
+                 popt_samba3
+                 libsmb
+                 msrpc3
                  libcli_lsa3''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('eventlogadm',
                  source=EVTLOGADM_SRC,
-                 deps='''talloc tevent cap popt_samba3 samba3core param
-                 smbd_shim pdb wbclient LIBEVENTLOG''',
+                 deps='''
+                 talloc
+                 param
+                 LIBEVENTLOG''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('sharesec',
                  source=SHARESEC_SRC,
-                 deps='''talloc tdb_compat tevent cap wbclient param smbd_shim popt_samba3''',
+                 deps='''
+                 talloc
+                 popt_samba3''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('locktest' + bld.env.suffix3,
                  source=LOCKTEST_SRC,
-                 deps='''talloc tdb_compat tevent cap wbclient param KRBCLIENT libsmb smbd_shim
-                 asn1util LIBTSOCKET NDR_SAMR NDR_LSA LOCKING FNAME_UTIL''',
+                 deps='''
+                 talloc
+                 param
+                 libsmb
+                 LOCKING''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('pdbtest',
                  source=PDBTEST_SRC,
-                 deps='''talloc tdb_compat cap wbclient param libsmb KRBCLIENT smbd_shim pdb
-                 popt_samba3 NDR_SAMR NDR_LSA''',
+                 deps='''
+                 talloc
+                 pdb
+                 popt_samba3''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('vfstest',
                  source=VFSTEST_SRC,
-                 deps='smbd_base SMBREADLINE',
+                 deps='''
+                 vfs
+                 popt_samba3
+                 SMBREADLINE''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('log2pcap',
@@ -1515,8 +1542,11 @@ bld.SAMBA3_BINARY('log2pcap',
 
 bld.SAMBA3_BINARY('locktest2',
                  source=LOCKTEST2_SRC,
-                 deps='''talloc tdb_compat tevent cap wbclient param KRBCLIENT libsmb smbd_shim
-                 asn1util LIBTSOCKET NDR_SAMR NDR_LSA LOCKING FNAME_UTIL''',
+                 deps='''
+                 talloc
+                 param
+                 libsmb
+                 LOCKING''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('debug2html',
@@ -1526,21 +1556,29 @@ bld.SAMBA3_BINARY('debug2html',
 
 bld.SAMBA3_BINARY('smbfilter',
                  source=SMBFILTER_SRC,
-                 deps='''talloc tevent cap wbclient param libsmb smbd_shim KRBCLIENT asn1util LIBTSOCKET
-                 NDR_SAMR NDR_LSA''',
+                 deps='''
+                 talloc
+                 param
+                 LIBNMB''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('versiontest',
                  source='lib/version_test.c',
-                 deps='SAMBA_VERSION samba3core param',
+                 deps='''
+                 SAMBA_VERSION
+                 param''',
                  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 winbind-client LIBINIPARSER LIBADS_SERVER
-                 NDR_SAMR NDR_LSA NDR_NETLOGON cli-ldap-common LIBNMB SLCACHE SPNEGO_PARSE KRBCLIENT libsmb''',
+                 deps='''
+                 talloc
+                 KRB5_WRAP
+                 LIBINIPARSER
+                 SLCACHE
+                 libsmb
+                 popt_samba3
+                 LIBADS_SERVER''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('timelimit',
@@ -1549,34 +1587,45 @@ bld.SAMBA3_BINARY('timelimit',
 
 bld.SAMBA3_BINARY('rpc_open_tcp',
                  source=RPC_OPEN_TCP_SRC,
-                 deps='''talloc tdb_compat tevent cap wbclient KRBCLIENT param samba3core libsmb smbd_shim
-                 asn1util LIBTSOCKET ndr-standard msrpc3''',
+                 deps='''
+                 talloc
+                 msrpc3''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('test_lp_load',
                  source=TEST_LP_LOAD_SRC,
-                 deps='''talloc tdb_compat tevent cap wbclient param  smbd_shim popt_samba3 LIBNTLMSSP''',
+                 deps='''
+                 talloc
+                 param
+                 popt_samba3''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('dbwrap_tool',
                  source=DBWRAP_TOOL_SRC,
-                 deps='''talloc tdb_compat tevent cap param smbd_shim popt_samba3''',
+                 deps='''
+                 talloc
+                 popt_samba3''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('dbwrap_torture',
                  source=DBWRAP_TORTURE_SRC,
-                 deps='''talloc tdb_compat tevent cap param  smbd_shim popt_samba3''',
+                 deps='''
+                 talloc
+                 popt_samba3''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('split_tokens',
                  source=SPLIT_TOKENS_SRC,
-                 deps='''talloc tdb_compat tevent cap wbclient param smbd_shim popt_samba3
-                 LIBNTLMSSP''',
+                 deps='''
+                 talloc
+                 popt_samba3''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('vlp',
                  source=VLP_SRC,
-                 deps='''talloc tdb_compat PARAM_UTIL UTIL_TDB samba3core param''',
+                 deps='''
+                 talloc
+                 param''',
                  vars=locals())
 
 swat_dir = os.path.join(bld.curdir, '../swat')