[988] | 1 | #!/usr/bin/env python
|
---|
| 2 |
|
---|
| 3 | # top level waf build script for samba4
|
---|
| 4 |
|
---|
| 5 | import Options
|
---|
| 6 | import os
|
---|
| 7 | srcdir = "."
|
---|
| 8 |
|
---|
| 9 | import samba_version
|
---|
| 10 |
|
---|
| 11 | bld.env.suffix3 = "3"
|
---|
| 12 | bld.env.suffix4 = "4"
|
---|
| 13 |
|
---|
| 14 | # create separate build groups for building the asn1 and et compiler, then
|
---|
| 15 | # building the C from ASN1 and IDL, and finally the main build process
|
---|
| 16 | bld.SETUP_BUILD_GROUPS()
|
---|
| 17 | bld.AUTOCLEANUP_STALE_FILES()
|
---|
| 18 |
|
---|
| 19 | # enable building of public headers in the build tree
|
---|
| 20 | bld.env.build_public_headers = 'include/public'
|
---|
| 21 |
|
---|
| 22 | # these are includes which appear in public headers, but with #ifdef conditional
|
---|
| 23 | # compilation, so they are safe
|
---|
| 24 | bld.env.public_headers_skip = ['lib/param/param_proto.h', 'lib/param/param_functions.h']
|
---|
| 25 |
|
---|
| 26 | samba_version.load_version(bld.env, is_install=bld.is_install)
|
---|
| 27 | bld.SAMBA_MKVERSION('version.h')
|
---|
| 28 |
|
---|
| 29 | # bld.ENABLE_MAGIC_ORDERING()
|
---|
| 30 |
|
---|
| 31 | bld.env.ABS_TOP_SRCDIR = bld.srcnode.abspath() + '/docs-xml'
|
---|
| 32 | bld.env.ABS_TOP_BUILDDIR = bld.srcnode.abspath() + '/bin/default/docs-xml'
|
---|
| 33 | bld.CONFIGURE_FILE('docs-xml/build/catalog.xml',
|
---|
| 34 | ABS_TOP_BUILDDIR = bld.env.ABS_TOP_BUILDDIR,
|
---|
| 35 | ABS_TOP_SRCDIR=bld.env.ABS_TOP_SRCDIR)
|
---|
| 36 | bld.RECURSE('docs-xml')
|
---|
| 37 |
|
---|
| 38 | bld.RECURSE('lib/replace')
|
---|
| 39 | bld.RECURSE('lib/socket')
|
---|
| 40 | bld.RECURSE('lib/talloc')
|
---|
| 41 | bld.RECURSE('lib/tevent')
|
---|
| 42 | bld.RECURSE('lib/texpect')
|
---|
| 43 | bld.RECURSE('lib/addns')
|
---|
| 44 | bld.RECURSE('lib/ldb')
|
---|
| 45 | bld.RECURSE('lib/param')
|
---|
| 46 | bld.RECURSE('dynconfig')
|
---|
| 47 | bld.RECURSE('lib/util/charset')
|
---|
| 48 | bld.RECURSE('python')
|
---|
| 49 | bld.RECURSE('source4/param')
|
---|
| 50 | bld.RECURSE('source4/librpc')
|
---|
| 51 | bld.RECURSE('source4/dsdb')
|
---|
| 52 | bld.RECURSE('source4/smbd')
|
---|
| 53 | bld.RECURSE('source4/cluster')
|
---|
| 54 | bld.RECURSE('source4/smbd')
|
---|
| 55 | bld.RECURSE('source4/libnet')
|
---|
| 56 | bld.RECURSE('source4/auth')
|
---|
| 57 | bld.RECURSE('auth')
|
---|
| 58 | bld.RECURSE('auth/kerberos')
|
---|
| 59 | bld.RECURSE('nsswitch')
|
---|
| 60 | bld.RECURSE('nsswitch/libwbclient')
|
---|
| 61 | bld.RECURSE('source4/lib/samba3')
|
---|
| 62 | bld.RECURSE('source4/lib/socket')
|
---|
| 63 | bld.RECURSE('lib/ldb-samba')
|
---|
| 64 | bld.RECURSE('source4/lib/tls')
|
---|
| 65 | bld.RECURSE('source4/lib/registry')
|
---|
| 66 | bld.RECURSE('source4/lib/messaging')
|
---|
| 67 | bld.RECURSE('source4/lib/events')
|
---|
| 68 | bld.RECURSE('source4/lib/cmdline')
|
---|
| 69 | bld.RECURSE('source4/lib/http')
|
---|
| 70 | if bld.CONFIG_GET('NSS_WRAPPER'):
|
---|
| 71 | bld.RECURSE('lib/nss_wrapper')
|
---|
| 72 | if bld.CONFIG_GET('SOCKET_WRAPPER'):
|
---|
| 73 | bld.RECURSE('lib/socket_wrapper')
|
---|
| 74 | if bld.CONFIG_GET('RESOLV_WRAPPER'):
|
---|
| 75 | bld.RECURSE('lib/resolv_wrapper')
|
---|
| 76 | if bld.CONFIG_GET('UID_WRAPPER'):
|
---|
| 77 | bld.RECURSE('lib/uid_wrapper')
|
---|
| 78 | if bld.CHECK_FOR_THIRD_PARTY():
|
---|
| 79 | bld.RECURSE('third_party')
|
---|
| 80 | bld.RECURSE('source4/lib/stream')
|
---|
| 81 | bld.RECURSE('lib/afs')
|
---|
| 82 | bld.RECURSE('lib/util')
|
---|
| 83 | bld.RECURSE('lib/tdb_wrap')
|
---|
| 84 | bld.RECURSE('lib/tdr')
|
---|
| 85 | bld.RECURSE('lib/tsocket')
|
---|
| 86 | bld.RECURSE('lib/crypto')
|
---|
| 87 | bld.RECURSE('lib/torture')
|
---|
| 88 | bld.RECURSE('source4/lib/com')
|
---|
| 89 | bld.RECURSE('source4/dns_server')
|
---|
| 90 | bld.RECURSE('source4/echo_server')
|
---|
| 91 | bld.RECURSE('source4/smb_server')
|
---|
| 92 | bld.RECURSE('source4/rpc_server')
|
---|
| 93 | bld.RECURSE('source4/ldap_server')
|
---|
| 94 | bld.RECURSE('source4/web_server')
|
---|
| 95 | bld.RECURSE('source4/winbind')
|
---|
| 96 | bld.RECURSE('source4/nbt_server')
|
---|
| 97 | bld.RECURSE('source4/wrepl_server')
|
---|
| 98 | bld.RECURSE('source4/cldap_server')
|
---|
| 99 | bld.RECURSE('source4/ntp_signd')
|
---|
| 100 | bld.RECURSE('source4/utils')
|
---|
| 101 | bld.RECURSE('source4/ntvfs')
|
---|
| 102 | bld.RECURSE('source4/ntptr')
|
---|
| 103 | bld.RECURSE('source4/torture')
|
---|
| 104 | bld.RECURSE('librpc')
|
---|
| 105 | bld.RECURSE('source4')
|
---|
| 106 | bld.RECURSE('source4/libcli')
|
---|
| 107 | bld.RECURSE('libcli/smb')
|
---|
| 108 | bld.RECURSE('libcli/util')
|
---|
| 109 | bld.RECURSE('libcli/cldap')
|
---|
| 110 | bld.RECURSE('lib/smbconf')
|
---|
| 111 | bld.RECURSE('lib/async_req')
|
---|
| 112 | bld.RECURSE('lib/dbwrap')
|
---|
| 113 | bld.RECURSE('libcli/security')
|
---|
| 114 | bld.RECURSE('libcli/ldap')
|
---|
| 115 | bld.RECURSE('libcli/nbt')
|
---|
| 116 | bld.RECURSE('libcli/netlogon')
|
---|
| 117 | bld.RECURSE('libcli/auth')
|
---|
| 118 | bld.RECURSE('libcli/lsarpc')
|
---|
| 119 | bld.RECURSE('libcli/drsuapi')
|
---|
| 120 | bld.RECURSE('libcli/echo')
|
---|
| 121 | bld.RECURSE('libcli/dns')
|
---|
| 122 | bld.RECURSE('libcli/samsync')
|
---|
| 123 | bld.RECURSE('libcli/registry')
|
---|
| 124 | bld.RECURSE('source4/lib/policy')
|
---|
| 125 | bld.RECURSE('libcli/named_pipe_auth')
|
---|
| 126 |
|
---|
| 127 | if bld.CONFIG_GET('KRB5_VENDOR') in (None, 'heimdal'):
|
---|
| 128 | if bld.CONFIG_GET("HEIMDAL_KRB5_CONFIG") and bld.CONFIG_GET("USING_SYSTEM_KRB5"):
|
---|
| 129 | # When both HEIMDAL_KRB5_CONFIG and KRB5_CONFIG are set and not equal,
|
---|
| 130 | # it means one is Heimdal-specific (krb5-config.heimdal, for example)
|
---|
| 131 | # and there is system heimdal
|
---|
| 132 | bld.PROCESS_SEPARATE_RULE('system_heimdal')
|
---|
| 133 | else:
|
---|
| 134 | bld.PROCESS_SEPARATE_RULE('embedded_heimdal')
|
---|
| 135 | else:
|
---|
| 136 | bld.PROCESS_SEPARATE_RULE('system_mitkrb5')
|
---|
| 137 |
|
---|
| 138 | bld.RECURSE('libcli/smbreadline')
|
---|
| 139 | if bld.AD_DC_BUILD_IS_ENABLED():
|
---|
| 140 | bld.RECURSE('source4/setup')
|
---|
| 141 | if bld.env.with_ctdb:
|
---|
| 142 | bld.RECURSE('ctdb')
|
---|
| 143 | bld.RECURSE('source4/scripting')
|
---|
| 144 | bld.RECURSE('pidl')
|
---|
| 145 | bld.RECURSE('lib')
|
---|
| 146 | bld.RECURSE('libds/common')
|
---|
| 147 | bld.RECURSE('source3')
|
---|
| 148 | bld.RECURSE('dfs_server')
|
---|
| 149 | bld.RECURSE('file_server')
|
---|
| 150 | bld.RECURSE('lib/krb5_wrap')
|
---|
| 151 |
|
---|
| 152 | bld.RECURSE('testsuite/headers')
|
---|
| 153 |
|
---|
| 154 | bld.SYMBOL_CHECK()
|
---|
| 155 | bld.DUP_SYMBOL_CHECK()
|
---|
| 156 |
|
---|