lib: import ccan modules for tdb2
[samba.git] / wscript_build
index dea49b32c928ab55bb73ce777228afcaa1beb2fd..d42978ff668dd79fcee73a68c0c291d2cbb0c258 100644 (file)
@@ -7,20 +7,37 @@ srcdir = "."
 
 import samba_version
 
+# mark this as a top level build, for source3 rules
+bld.env.toplevel_build = True
+bld.env.use_intree_heimdal = True
+bld.env.suffix3 = "3"
+
 # create separate build groups for building the asn1 and et compiler, then
 # building the C from ASN1 and IDL, and finally the main build process
 bld.SETUP_BUILD_GROUPS()
 bld.AUTOCLEANUP_STALE_FILES()
 
-samba_version.load_version(bld.env)
+# 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 = ['param/param_proto.h', 'lib/ldb_compat.h']
+
+# force headers to use SAMBA4 rules
+bld.env.public_headers_replace = { '#if _SAMBA_BUILD_ == 4' : '#if 1 /* _SAMBA_BUILD_ == 4 */' }
+
+samba_version.load_version(bld.env, is_install=bld.is_install)
 bld.SAMBA_MKVERSION('version.h')
 
 # bld.ENABLE_MAGIC_ORDERING()
 
 bld.RECURSE('lib/replace')
+bld.RECURSE('lib/socket')
 bld.RECURSE('lib/talloc')
 bld.RECURSE('lib/tdb')
 bld.RECURSE('lib/tevent')
+bld.RECURSE('lib/ccan')
 bld.RECURSE('source4/lib/ldb')
 bld.RECURSE('source4/dynconfig')
 bld.RECURSE('lib/util/charset')
@@ -34,6 +51,7 @@ bld.RECURSE('source4/smbd')
 bld.RECURSE('source4/libnet')
 bld.RECURSE('source4/auth')
 bld.RECURSE('auth')
+bld.RECURSE('auth/kerberos')
 bld.RECURSE('lib/iniparser/src')
 bld.RECURSE('nsswitch')
 bld.RECURSE('nsswitch/libwbclient')
@@ -78,6 +96,7 @@ bld.RECURSE('librpc')
 bld.RECURSE('source4/client')
 bld.RECURSE('source4/libcli')
 bld.RECURSE('libcli/smb')
+bld.RECURSE('libcli/util')
 bld.RECURSE('libcli/cldap')
 bld.RECURSE('lib/subunit/c')
 bld.RECURSE('source4/kdc')
@@ -91,6 +110,7 @@ bld.RECURSE('libcli/auth')
 bld.RECURSE('libcli/drsuapi')
 bld.RECURSE('libcli/echo')
 bld.RECURSE('libcli/samsync')
+bld.RECURSE('libcli/registry')
 bld.RECURSE('source4/lib/policy')
 bld.RECURSE('libcli/named_pipe_auth')
 bld.RECURSE('source4/heimdal_build')
@@ -100,8 +120,12 @@ bld.RECURSE('source4/setup')
 bld.RECURSE('source4/scripting')
 bld.RECURSE('pidl')
 bld.RECURSE('lib')
+bld.RECURSE('libds/common')
+bld.RECURSE('source3')
+
+bld.RECURSE('testsuite/headers')
 
 # install some extra empty directories
-bld.INSTALL_DIRS("", "${LOCKDIR} ${SYSCONFDIR} ${LOCKDIR} ${PIDDIR} ${LOCALSTATEDIR}/lib ${PRIVATEDIR}/smbd.tmp/messaging")
+bld.INSTALL_DIRS("", "${LOCKDIR} ${STATEDIR} ${CACHEDIR} ${SWATDIR} ${SYSCONFDIR} ${PIDDIR} ${LOCALSTATEDIR}/lib ${PRIVATEDIR}/smbd.tmp/messaging ${CODEPAGEDIR} ${LOGFILEBASE} ${SETUPDIR}")
 
 bld.SYMBOL_CHECK()