3 # top level waf build script for samba4
8 # create separate build groups for building the asn1 and et compiler, then
9 # building the C from ASN1 and IDL, and finally the main build process
10 bld
.SETUP_BUILD_GROUPS()
12 bld
.SAMBA_MKVERSION('version.h')
14 # bld.ENABLE_MAGIC_ORDERING()
16 # we don't always use consistent names for our subsystems.
17 # this sets up some aliases
18 bld
.TARGET_ALIAS('attr', 'XATTR')
19 bld
.TARGET_ALIAS('sasl2', 'SASL')
21 # missing subsystems - need looking at
22 bld
.SAMBA_SUBSYSTEM('NETAPI', '') # for external libnet
23 bld
.SAMBA_SUBSYSTEM('OPENPTY', '') # external openpty library
24 bld
.SAMBA_SUBSYSTEM('SMBCLIENT', '') # for external libsmbclient
25 bld
.SAMBA_SUBSYSTEM('BLKID', '') # blkid library from e2fsprogs
26 bld
.SAMBA_SUBSYSTEM('SETPROCTITLE', '') # external setproctitle library
28 # subsystems that are confirmed to be missing. These should
29 # be removed from the build completely when we only have
31 bld
.SAMBA_SUBSYSTEM('DCOM_PROXY_DCOM', '')
32 bld
.SAMBA_SUBSYSTEM('smbcalls', '')
33 bld
.SAMBA_SUBSYSTEM('HDB_LDB', '')
34 bld
.SAMBA_SUBSYSTEM('NDR_MISC', '')
35 bld
.SAMBA_SUBSYSTEM('NDR_SAMR', '')
36 bld
.SAMBA_SUBSYSTEM('SCHANNELDB', '')
37 bld
.SAMBA_SUBSYSTEM('pyldb_util', '')
38 bld
.SAMBA_SUBSYSTEM('TORTURE_LDB_MODULE', '')
41 bld
.RECURSE('../lib/replace')
42 bld
.RECURSE('../lib/talloc')
43 bld
.RECURSE('../lib/tdb')
44 bld
.RECURSE('../lib/tevent')
45 bld
.RECURSE('lib/ldb')
46 bld
.RECURSE('dynconfig')
47 bld
.RECURSE('../lib/util/charset')
48 bld
.RECURSE('scripting/python')
53 bld
.RECURSE('cluster')
57 bld
.RECURSE('../lib/iniparser/src')
58 bld
.RECURSE('../nsswitch')
59 bld
.RECURSE('../nsswitch/libwbclient')
60 bld
.RECURSE('lib/samba3')
61 bld
.RECURSE('lib/socket')
62 bld
.RECURSE('lib/ldb-samba')
63 bld
.RECURSE('lib/tls')
64 bld
.RECURSE('lib/registry')
65 bld
.RECURSE('lib/messaging')
66 bld
.RECURSE('lib/events')
67 bld
.RECURSE('lib/cmdline')
68 bld
.RECURSE('../lib/socket_wrapper')
69 bld
.RECURSE('../lib/nss_wrapper')
70 bld
.RECURSE('../lib/uid_wrapper')
71 bld
.RECURSE('../lib/popt')
72 bld
.RECURSE('lib/stream')
73 bld
.RECURSE('../lib/util')
74 bld
.RECURSE('../lib/tdr')
75 bld
.RECURSE('../lib/tsocket')
76 bld
.RECURSE('../lib/crypto')
77 bld
.RECURSE('../lib/torture')
78 bld
.RECURSE('../lib/zlib')
80 bld
.RECURSE('lib/com')
81 bld
.RECURSE('smb_server')
82 bld
.RECURSE('rpc_server')
83 bld
.RECURSE('ldap_server')
84 bld
.RECURSE('web_server')
85 bld
.RECURSE('winbind')
86 bld
.RECURSE('nbt_server')
87 bld
.RECURSE('wrepl_server')
88 bld
.RECURSE('cldap_server')
89 bld
.RECURSE('ntp_signd')
90 bld
.RECURSE('utils/net')
94 bld
.RECURSE('torture')
95 bld
.RECURSE('../librpc')
98 bld
.RECURSE('../libcli/smb')
99 bld
.RECURSE('../libcli/cldap')
100 bld
.RECURSE('../lib/subunit/c')
102 bld
.RECURSE('../lib/smbconf')
103 bld
.RECURSE('../lib/async_req')
104 bld
.RECURSE('../libcli/security')
105 bld
.RECURSE('../libcli/ldap')
106 bld
.RECURSE('../libcli/nbt')
107 bld
.RECURSE('../libcli/auth')
108 bld
.RECURSE('../libcli/drsuapi')
109 bld
.RECURSE('../libcli/samsync')
110 bld
.RECURSE('lib/policy')
111 bld
.RECURSE('../libcli/named_pipe_auth')
112 bld
.RECURSE('heimdal_build')
113 bld
.RECURSE('lib/smbreadline')
114 bld
.RECURSE('../codepages')
116 bld
.RECURSE('scripting')
117 bld
.RECURSE('../pidl')
118 bld
.RECURSE('../lib')
120 # install some extra empty directories
121 bld
.INSTALL_DIRS("", "${LOCKDIR} ${SYSCONFDIR} ${LOCKDIR} ${PIDDIR} ${LOCALSTATEDIR}/lib ${PRIVATEDIR}/smbd.tmp/messaging")