bfbbafb52999c14004c4b17e761e479f2a412ffb
[sfrench/samba-autobuild/.git] / wscript_build
1 #!/usr/bin/env python
2
3 # top level waf build script for samba4
4
5 import os
6 srcdir = "."
7
8 import samba_version
9
10 # mark this as a top level build, for source3 rules
11 bld.env.toplevel_build = True
12 bld.env.use_intree_heimdal = True
13 bld.env.suffix3 = "3"
14
15 # create separate build groups for building the asn1 and et compiler, then
16 # building the C from ASN1 and IDL, and finally the main build process
17 bld.SETUP_BUILD_GROUPS()
18 bld.AUTOCLEANUP_STALE_FILES()
19
20 # enable building of public headers in the build tree
21 bld.env.build_public_headers = 'include/public'
22
23 # these are includes which appear in public headers, but with #ifdef conditional
24 # compilation, so they are safe
25 bld.env.public_headers_skip = ['param/param_proto.h', 'lib/ldb_compat.h']
26
27 samba_version.load_version(bld.env, is_install=bld.is_install)
28 bld.SAMBA_MKVERSION('version.h')
29
30 # bld.ENABLE_MAGIC_ORDERING()
31
32 bld.RECURSE('lib/replace')
33 bld.RECURSE('lib/socket')
34 bld.RECURSE('lib/talloc')
35 bld.RECURSE('lib/tevent')
36 bld.RECURSE('lib/ccan')
37 bld.RECURSE('lib/tdb_compat')
38 bld.RECURSE('lib/ldb')
39 bld.RECURSE('lib/param')
40 bld.RECURSE('dynconfig')
41 bld.RECURSE('lib/util/charset')
42 bld.RECURSE('source4/scripting/python')
43 bld.RECURSE('source4/param')
44 bld.RECURSE('source4/librpc')
45 bld.RECURSE('source4/dsdb')
46 bld.RECURSE('source4/smbd')
47 bld.RECURSE('source4/cluster')
48 bld.RECURSE('source4/smbd')
49 bld.RECURSE('source4/libnet')
50 bld.RECURSE('source4/auth')
51 bld.RECURSE('auth')
52 bld.RECURSE('auth/kerberos')
53 bld.RECURSE('lib/iniparser/src')
54 bld.RECURSE('nsswitch')
55 bld.RECURSE('nsswitch/libwbclient')
56 bld.RECURSE('source4/lib/samba3')
57 bld.RECURSE('source4/lib/socket')
58 bld.RECURSE('lib/ldb-samba')
59 bld.RECURSE('source4/lib/tls')
60 bld.RECURSE('source4/lib/registry')
61 bld.RECURSE('source4/lib/messaging')
62 bld.RECURSE('source4/lib/events')
63 bld.RECURSE('source4/lib/cmdline')
64 bld.RECURSE('lib/socket_wrapper')
65 bld.RECURSE('lib/nss_wrapper')
66 bld.RECURSE('lib/uid_wrapper')
67 bld.RECURSE('lib/popt')
68 bld.RECURSE('source4/lib/stream')
69 bld.RECURSE('lib/util')
70 bld.RECURSE('lib/tdr')
71 bld.RECURSE('lib/tsocket')
72 bld.RECURSE('lib/crypto')
73 bld.RECURSE('lib/torture')
74 bld.RECURSE('lib/zlib')
75 bld.RECURSE('source4/lib')
76 bld.RECURSE('source4/lib/com')
77 bld.RECURSE('source4/dns_server')
78 bld.RECURSE('source4/echo_server')
79 bld.RECURSE('source4/smb_server')
80 bld.RECURSE('source4/rpc_server')
81 bld.RECURSE('source4/ldap_server')
82 bld.RECURSE('source4/web_server')
83 bld.RECURSE('source4/winbind')
84 bld.RECURSE('source4/nbt_server')
85 bld.RECURSE('source4/wrepl_server')
86 bld.RECURSE('source4/cldap_server')
87 bld.RECURSE('source4/ntp_signd')
88 bld.RECURSE('source4/samba_tool')
89 bld.RECURSE('source4/utils')
90 bld.RECURSE('source4/ntvfs')
91 bld.RECURSE('source4/ntptr')
92 bld.RECURSE('source4/torture')
93 bld.RECURSE('librpc')
94 bld.RECURSE('source4/client')
95 bld.RECURSE('source4/libcli')
96 bld.RECURSE('libcli/smb')
97 bld.RECURSE('libcli/util')
98 bld.RECURSE('libcli/cldap')
99 bld.RECURSE('lib/subunit/c')
100 bld.RECURSE('source4/kdc')
101 bld.RECURSE('lib/smbconf')
102 bld.RECURSE('lib/async_req')
103 bld.RECURSE('libcli/security')
104 bld.RECURSE('libcli/ldap')
105 bld.RECURSE('libcli/nbt')
106 bld.RECURSE('libcli/netlogon')
107 bld.RECURSE('libcli/auth')
108 bld.RECURSE('libcli/drsuapi')
109 bld.RECURSE('libcli/echo')
110 bld.RECURSE('libcli/samsync')
111 bld.RECURSE('libcli/registry')
112 bld.RECURSE('source4/lib/policy')
113 bld.RECURSE('libcli/named_pipe_auth')
114 bld.RECURSE('source4/heimdal_build')
115 bld.RECURSE('libcli/smbreadline')
116 bld.RECURSE('codepages')
117 bld.RECURSE('source4/setup')
118 bld.RECURSE('source4/scripting')
119 bld.RECURSE('pidl')
120 bld.RECURSE('lib')
121 bld.RECURSE('libds/common')
122 bld.RECURSE('source3')
123
124 bld.RECURSE('testsuite/headers')
125
126 # install some extra empty directories
127 bld.INSTALL_DIRS("", "${LOCKDIR} ${STATEDIR} ${CACHEDIR} ${SWATDIR} ${SYSCONFDIR} ${PIDDIR} ${LOCALSTATEDIR}/lib ${PRIVATEDIR}/smbd.tmp/messaging ${CODEPAGEDIR} ${LOGFILEBASE} ${SETUPDIR}")
128
129 bld.SYMBOL_CHECK()