lib: make asn1_util a private library
[samba.git] / source3 / wscript_build
old mode 100644 (file)
new mode 100755 (executable)
index 71670e9..8685268
@@ -3,6 +3,16 @@
 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.c lib/dbwrap_tdb.c
           lib/dbwrap_ctdb.c
@@ -59,14 +69,15 @@ LIB_SRC = '''
           lib/util_transfer_file.c
           lib/addrchange.c
           ${TDB_LIB_SRC}
-          ../lib/util/debug_s3.c lib/fault.c
+          ../lib/util/debug_s3.c
+          lib/dumpcore.c
           lib/interface.c lib/pidfile.c
           lib/system.c lib/sendfile.c lib/recvfile.c lib/time.c
           lib/username.c
           lib/access.c lib/smbrun.c
           lib/bitmap.c lib/dprintf.c
           lib/wins_srv.c
-          lib/clobber.c lib/util_sid.c
+          lib/util_sid.c
           lib/util_file.c
           lib/util.c lib/util_names.c
           lib/util_sock.c lib/sock_exec.c lib/util_sec.c
@@ -216,11 +227,12 @@ PRIVILEGES_SRC = '''lib/privileges.c'''
 PASSDB_GET_SET_SRC = '''passdb/pdb_get_set.c'''
 
 PASSDB_SRC = '''${PASSDB_GET_SET_SRC} passdb/passdb.c
-                passdb/util_wellknown.c passdb/util_builtin.c passdb/pdb_compat.c
-                passdb/util_unixsids.c passdb/lookup_sid.c
+                lib/util_wellknown.c lib/util_builtin.c passdb/pdb_compat.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 ${SERVER_MUTEX_SRC}
+                passdb/pdb_util.c'''
 #FIXME: lib/winbind_util.c probably is not part of PASSDB_SRC
 
 GROUPDB_SRC = '''groupdb/mapping.c groupdb/mapping_tdb.c'''
@@ -233,7 +245,7 @@ OPLOCK_SRC = '''smbd/oplock.c smbd/oplock_irix.c smbd/oplock_linux.c
 
 NOTIFY_SRC = '''smbd/notify.c smbd/notify_inotify.c smbd/notify_internal.c'''
 
-FNAME_UTIL_SRC = '''smbd/filename_util.c'''
+FNAME_UTIL_SRC = '''lib/filename_util.c'''
 
 
 PLAINTEXT_AUTH_SRC = '''auth/pampass.c auth/pass_check.c'''
@@ -346,7 +358,7 @@ SMBD_SRC_SRV = '''smbd/server_reload.c smbd/files.c smbd/connection.c
                smbd/vfs.c smbd/perfcount.c smbd/statcache.c smbd/seal.c
                smbd/posix_acls.c lib/sysacls.c
                smbd/process.c smbd/service.c smbd/error.c
-               printing/printspoolss.c
+               printing/printspoolss.c printing/spoolssd.c
                lib/sysquotas.c lib/sysquotas_linux.c
                lib/sysquotas_xfs.c lib/sysquotas_4A.c
                lib/sysquotas_nfs.c
@@ -518,7 +530,8 @@ LIBNET_SAMSYNC_SRC = '''libnet/libnet_samsync.c
 NET_SRC1 = '''utils/net.c utils/net_ads.c utils/net_help.c
               utils/net_rap.c utils/net_rpc.c utils/net_rpc_samsync.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_cache.c utils/net_groupmap.c
+              utils/net_idmap.c utils/net_idmap_check.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
@@ -550,6 +563,7 @@ SMBTORTURE_SRC1 = '''torture/torture.c torture/nbio.c torture/scanner.c torture/
                 torture/test_async_echo.c
                 torture/test_addrchange.c
                 torture/test_posix_append.c
+               torture/test_case_insensitive.c
                 torture/test_smbsock_any_connect.c'''
 
 SMBTORTURE_SRC = '''${SMBTORTURE_SRC1}
@@ -624,6 +638,12 @@ t = bld.SAMBA_GENERATOR('build_env.h',
 t.env.SRCDIR = bld.path.abspath()
 t.env.BUILDDIR = bld.path.abspath()
 
+if not bld.env.toplevel_build:
+    bld.SAMBA_GENERATOR('smbtorture4',
+                       source='',
+                       target='',
+                       rule='cd ../; make -f Makefile-smbtorture4 bin/smbtorture4',
+                       always=True)
 
 bld.SETUP_BUILD_GROUPS()
 
@@ -700,7 +720,7 @@ bld.SAMBA3_SUBSYSTEM('GROUPDB',
 
 bld.SAMBA3_SUBSYSTEM('TLDAP',
                     source=TLDAP_SRC,
-                    deps='ASN1_UTIL LIBTSOCKET')
+                    deps='asn1util LIBTSOCKET')
 
 bld.SAMBA3_LIBRARY('passdb',
                    source=PASSDB_SRC,
@@ -756,7 +776,7 @@ bld.SAMBA3_SUBSYSTEM('KRBCLIENT',
 
 bld.SAMBA3_LIBRARY('samba3core',
                    source=LIB_SRC,
-                   deps='LIBCRYPTO ndr ndr-util security NDR_SECURITY charset NDR_MESSAGING LIBASYNC_REQ tdb-wrap3 samba-util3 CHARSET3 UTIL_TDB SAMBA_VERSION krb5 flag_mapping util_reg',
+                   deps='LIBCRYPTO ndr ndr-util security NDR_SECURITY charset NDR_MESSAGING LIBASYNC_REQ tdb-wrap3 CHARSET3 UTIL_TDB UTIL_PW SAMBA_VERSION krb5 flag_mapping util_reg',
                    private_library=True,
                    vars=locals())
 
@@ -803,9 +823,10 @@ bld.SAMBA3_SUBSYSTEM('SMBLDAP',
 
 bld.SAMBA3_LIBRARY('ads',
                    source=LIBADS_SRC,
-                   deps='LIBCLI_LDAP_NDR krb5',
+                   deps='LIBCLI_LDAP_NDR krb5 gssapi gssapi_krb5 ldap lber',
                    private_library=True,
-                   vars=locals())
+                   vars=locals(),
+                   enabled=bld.env.HAVE_ADS)
 
 bld.SAMBA3_SUBSYSTEM('LIBADS_SERVER',
                     source=LIBADS_SERVER_SRC,
@@ -865,6 +886,7 @@ bld.SAMBA3_SUBSYSTEM('PRINTBACKEND',
 
 bld.SAMBA3_SUBSYSTEM('PRINTING',
                     source=PRINTING_SRC,
+                    deps='NDR_PRINTCAP',
                     vars=locals())
 
 bld.SAMBA3_SUBSYSTEM('PASSWD_UTIL',
@@ -940,14 +962,10 @@ bld.SAMBA3_SUBSYSTEM('tdb-wrap3',
                     vars=locals())
 
 bld.SAMBA3_SUBSYSTEM('CHARSET3',
-                    source='''lib/util_str.c lib/util_unistr.c lib/charcnv.c''',
+                    source='''lib/util_str.c lib/util_unistr.c lib/charcnv.c lib/fstring.c''',
                     public_deps='ICONV_WRAPPER CODEPOINTS',
                     deps='DYNCONFIG')
 
-bld.SAMBA3_SUBSYSTEM('samba-util3',
-                    source='',
-                    deps='talloc CHARSET3 samba-util-common')
-
 bld.SAMBA3_SUBSYSTEM('ldb3',
                     source='lib/ldb_compat.c')
 
@@ -991,7 +1009,7 @@ bld.SAMBA3_SUBSYSTEM('INIT_SAMR',
 
 bld.SAMBA3_BINARY('smbd/smbd',
                  source='${SMBD_SRC_MAIN}',
-                 deps='smbd_base',
+                 deps='smbd_base EPMD',
                  install_path='${SBINDIR}',
                  vars=locals())
 
@@ -1072,13 +1090,13 @@ bld.SAMBA3_BINARY('profiles',
 bld.SAMBA3_BINARY('smbspool',
                  source=CUPS_SRC,
                  deps='''talloc tdb tevent resolv cap wbclient POPT_SAMBA3 param LIBSMB LIB_NONSMBD samba3core
-                 KRBCLIENT ASN1_UTIL LIBTSOCKET NDR_SAMR NDR_LSA''',
+                 KRBCLIENT asn1util LIBTSOCKET NDR_SAMR NDR_LSA''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('testparm',
                  source=TESTPARM_SRC,
                  deps='''talloc tevent ldap cap 
-                 wbclient ASN1_UTIL LIBTSOCKET passdb param LIB_NONSMBD
+                 wbclient asn1util LIBTSOCKET passdb param LIB_NONSMBD
                  LIBSMB_ERR POPT_SAMBA3''',
                  vars=locals())
 
@@ -1133,7 +1151,7 @@ bld.SAMBA3_BINARY('nmblookup' + bld.env.suffix3,
 bld.SAMBA3_BINARY('smbtorture' + bld.env.suffix3,
                  source=SMBTORTURE_SRC,
                  deps='''talloc tdb tevent cap resolv wbclient param LIBSMB KRBCLIENT TLDAP
-                 LIB_NONSMBD POPT_SAMBA3 ASN1_UTIL LIBTSOCKET NDR_LSA msrpc3 LIBMSRPC_GEN RPC_NDR_ECHO WB_REQTRANS''',
+                 LIB_NONSMBD POPT_SAMBA3 asn1util LIBTSOCKET NDR_LSA msrpc3 LIBMSRPC_GEN RPC_NDR_ECHO WB_REQTRANS''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('smbconftort',
@@ -1149,7 +1167,7 @@ bld.SAMBA3_BINARY('replacetort',
 bld.SAMBA3_BINARY('masktest' + bld.env.suffix3,
                  source=MASKTEST_SRC,
                  deps='''talloc tdb cap resolv wbclient param LIB_NONSMBD LIBSMB KRBCLIENT
-                 ASN1_UTIL LIBTSOCKET NDR_SAMR NDR_LSA''',
+                 asn1util LIBTSOCKET NDR_SAMR NDR_LSA''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('msgtest',
@@ -1185,7 +1203,7 @@ bld.SAMBA3_BINARY('sharesec',
 bld.SAMBA3_BINARY('locktest' + bld.env.suffix3,
                  source=LOCKTEST_SRC,
                  deps='''talloc tdb tevent cap resolv wbclient param KRBCLIENT LIBSMB LIB_NONSMBD
-                 ASN1_UTIL LIBTSOCKET NDR_SAMR NDR_LSA LOCKING FNAME_UTIL''',
+                 asn1util LIBTSOCKET NDR_SAMR NDR_LSA LOCKING FNAME_UTIL''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('pdbtest',
@@ -1212,7 +1230,7 @@ bld.SAMBA3_BINARY('log2pcap',
 bld.SAMBA3_BINARY('locktest2',
                  source=LOCKTEST2_SRC,
                  deps='''talloc tdb tevent cap resolv wbclient param KRBCLIENT LIBSMB LIB_NONSMBD
-                 ASN1_UTIL LIBTSOCKET NDR_SAMR NDR_LSA LOCKING FNAME_UTIL''',
+                 asn1util LIBTSOCKET NDR_SAMR NDR_LSA LOCKING FNAME_UTIL''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('debug2html',
@@ -1222,7 +1240,7 @@ bld.SAMBA3_BINARY('debug2html',
 
 bld.SAMBA3_BINARY('smbfilter',
                  source=SMBFILTER_SRC,
-                 deps='''talloc tevent cap resolv wbclient param LIBSMB LIB_NONSMBD KRBCLIENT ASN1_UTIL LIBTSOCKET
+                 deps='''talloc tevent cap resolv wbclient param LIBSMB LIB_NONSMBD KRBCLIENT asn1util LIBTSOCKET
                  NDR_SAMR NDR_LSA''',
                  vars=locals())
 
@@ -1234,14 +1252,14 @@ bld.SAMBA3_BINARY('versiontest',
 bld.SAMBA3_BINARY('wbinfo' + bld.env.suffix3,
                  source=WBINFO_SRC,
                  deps='''talloc wbclient tevent cap
-                 ASN1_UTIL LIBTSOCKET passdb ldap param LIB_NONSMBD
+                 asn1util LIBTSOCKET passdb ldap param LIB_NONSMBD
                  LIBNTLMSSP POPT_SAMBA3 LIBAFS_SETTOKEN''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('ntlm_auth' + bld.env.suffix3,
                  source=NTLM_AUTH_SRC,
                  deps='''tdb talloc cap resolv krb5 k5crypto com_err wbclient param LIB_NONSMBD
-                 samba3core LIBNTLMSSP POPT_SAMBA3 ASN1_UTIL LIBTSOCKET
+                 samba3core LIBNTLMSSP POPT_SAMBA3 asn1util LIBTSOCKET
                  passdb SMBLDAP winbind-client LIBINIPARSER LIBADS_SERVER
                  NDR_SAMR NDR_LSA NDR_NETLOGON LIBCLI_LDAP_NDR LIBNMB SLCACHE SPNEGO_PARSE KRBCLIENT''',
                  vars=locals())
@@ -1253,7 +1271,7 @@ bld.SAMBA3_BINARY('timelimit',
 bld.SAMBA3_BINARY('rpc_open_tcp',
                  source=RPC_OPEN_TCP_SRC,
                  deps='''talloc tdb tevent resolv cap wbclient KRBCLIENT param samba3core LIBSMB LIB_NONSMBD
-                 LIBSMB_ERR ASN1_UTIL LIBTSOCKET LIBMSRPC_GEN msrpc3''',
+                 LIBSMB_ERR asn1util LIBTSOCKET LIBMSRPC_GEN msrpc3''',
                  vars=locals())
 
 bld.SAMBA3_BINARY('test_lp_load',
@@ -1295,7 +1313,7 @@ if not bld.env.toplevel_build:
     bld.SAMBA3_SUBSYSTEM('POPT_SAMBA', source='', deps='POPT_SAMBA3')
     bld.SAMBA3_SUBSYSTEM('tdb-wrap', source='', deps='tdb-wrap3')
     bld.SAMBA3_SUBSYSTEM('errors', source='', deps='errors3')
-    bld.SAMBA3_SUBSYSTEM('samba-util', source='', deps='samba-util3')
+    bld.SAMBA3_SUBSYSTEM('samba-util', source='')
     bld.SAMBA3_SUBSYSTEM('CHARSET', source='', deps='CHARSET3')
     bld.SAMBA3_SUBSYSTEM('ldb', source='', deps='ldb3')
     bld.SAMBA3_SUBSYSTEM('dcerpc', '', deps='UTIL_TEVENT')