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')
20 bld
.TARGET_ALIAS('RPC_NDR_SRVSVC', 'NDR_SRVSVC')
21 bld
.TARGET_ALIAS('RPC_NDR_MGMT', 'dcerpc_mgmt')
23 # missing subsystems - need looking at
24 bld
.SAMBA_SUBSYSTEM('NETAPI', '') # for external libnet
25 bld
.SAMBA_SUBSYSTEM('OPENPTY', '') # external openpty library
26 bld
.SAMBA_SUBSYSTEM('SMBCLIENT', '') # for external libsmbclient
27 bld
.SAMBA_SUBSYSTEM('BLKID', '') # blkid library from e2fsprogs
28 bld
.SAMBA_SUBSYSTEM('SETPROCTITLE', '') # external setproctitle library
30 # subsystems that are confirmed to be missing. These should
31 # be removed from the build completely when we only have
33 bld
.SAMBA_SUBSYSTEM('DCOM_PROXY_DCOM', '')
34 bld
.SAMBA_SUBSYSTEM('smbcalls', '')
35 bld
.SAMBA_SUBSYSTEM('HDB_LDB', '')
36 bld
.SAMBA_SUBSYSTEM('NDR_MISC', '')
37 bld
.SAMBA_SUBSYSTEM('NDR_SAMR', '')
38 bld
.SAMBA_SUBSYSTEM('SCHANNELDB', '')
39 bld
.SAMBA_SUBSYSTEM('pyldb_util', '')
40 bld
.SAMBA_SUBSYSTEM('TORTURE_LDB_MODULE', '')
43 bld
.RECURSE('../lib/replace')
44 bld
.RECURSE('../lib/talloc')
45 bld
.RECURSE('../lib/tdb')
46 bld
.RECURSE('../lib/tevent')
47 bld
.RECURSE('lib/ldb')
48 bld
.RECURSE('dynconfig')
49 bld
.RECURSE('../lib/util/charset')
50 bld
.RECURSE('scripting/python')
55 bld
.RECURSE('cluster')
59 bld
.RECURSE('../nsswitch')
60 bld
.RECURSE('../nsswitch/libwbclient')
61 bld
.RECURSE('lib/samba3')
62 bld
.RECURSE('lib/socket')
63 bld
.RECURSE('lib/ldb-samba')
64 bld
.RECURSE('lib/tls')
65 bld
.RECURSE('lib/registry')
66 bld
.RECURSE('lib/messaging')
67 bld
.RECURSE('lib/events')
68 bld
.RECURSE('lib/cmdline')
69 bld
.RECURSE('../lib/socket_wrapper')
70 bld
.RECURSE('../lib/nss_wrapper')
71 bld
.RECURSE('../lib/uid_wrapper')
72 bld
.RECURSE('../lib/popt')
73 bld
.RECURSE('lib/stream')
74 bld
.RECURSE('../lib/util')
75 bld
.RECURSE('../lib/tdr')
76 bld
.RECURSE('../lib/tsocket')
77 bld
.RECURSE('../lib/crypto')
78 bld
.RECURSE('../lib/torture')
79 bld
.RECURSE('../lib/zlib')
81 bld
.RECURSE('lib/com')
82 bld
.RECURSE('smb_server')
83 bld
.RECURSE('rpc_server')
84 bld
.RECURSE('ldap_server')
85 bld
.RECURSE('web_server')
86 bld
.RECURSE('winbind')
87 bld
.RECURSE('nbt_server')
88 bld
.RECURSE('wrepl_server')
89 bld
.RECURSE('cldap_server')
90 bld
.RECURSE('ntp_signd')
91 bld
.RECURSE('utils/net')
95 bld
.RECURSE('torture')
96 bld
.RECURSE('../librpc')
99 bld
.RECURSE('../libcli/smb')
100 bld
.RECURSE('../libcli/cldap')
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('../libgpo')
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")