mirror of
https://github.com/samba-team/samba.git
synced 2024-12-23 17:34:34 +03:00
38de110b02
ctdb, ldb, and samba are supported builds for third_party popt. Signed-off-by: Ira Cooper <ira@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
50 lines
1.6 KiB
Plaintext
50 lines
1.6 KiB
Plaintext
import os
|
|
from samba_utils import os_path_relpath
|
|
|
|
def build_test_headers(task):
|
|
'''symlink a header in the build tree'''
|
|
tgt = task.outputs[0].bldpath(task.env)
|
|
f = open(tgt, mode='w')
|
|
f.write('/* generated header test */\n')
|
|
hlist = task.env.public_headers_list[:]
|
|
hlist.sort()
|
|
# We need to include tdb.h before ntdb.h. It's the rules!
|
|
if 'tdb.h' in hlist and 'ntdb.h' in hlist:
|
|
hlist.remove('ntdb.h')
|
|
hlist.append('ntdb.h')
|
|
|
|
for h in hlist:
|
|
f.write('#include "%s"\n' % os.path.normpath(h))
|
|
f.close()
|
|
|
|
relpath1 = os_path_relpath(bld.srcnode.abspath(), bld.curdir)
|
|
public_headers = []
|
|
for h in bld.env.public_headers_list:
|
|
public_headers.append(os.path.join(relpath1, bld.env.build_public_headers, h))
|
|
|
|
bld.SAMBA_GENERATOR('test_headers.h',
|
|
group='main',
|
|
rule=build_test_headers,
|
|
source=public_headers,
|
|
target='test_headers.h')
|
|
|
|
cflags=''
|
|
for lib in ['talloc', 'tevent', 'tdb', 'ldb', 'popt' ]:
|
|
ename = 'CPPPATH_%s' % lib.upper()
|
|
for p in bld.env[ename]:
|
|
cflags += bld.env.CPPPATH_ST % p + ' '
|
|
|
|
if not bld.env.USING_SYSTEM_POPT:
|
|
cflags += bld.env.CPPPATH_ST % '../third_party/popt'
|
|
|
|
if bld.env.DEVELOPER_MODE:
|
|
bld.SAMBA_BINARY('test_headers',
|
|
source='test_headers.c',
|
|
includes="#include/public",
|
|
pyembed=True,
|
|
cflags=cflags,
|
|
local_include=True,
|
|
global_include=False,
|
|
use_global_deps=False,
|
|
install=False)
|