7 sys.path.insert(0, srcdir+"/buildtools/wafsamba")
10 LIBTDB_DIR= srcdir + '/lib/tdb'
11 LIBTEVENT_DIR= srcdir + '/lib/tevent'
14 opt.recurse(LIBTDB_DIR)
15 opt.recurse(LIBTEVENT_DIR)
18 conf.sub_config(LIBTDB_DIR)
19 conf.sub_config(LIBTEVENT_DIR)
20 # where does the default LIBDIR end up? in conf.env somewhere?
22 conf.CONFIG_PATH('LDB_MODULESDIR', conf.SUBST_ENV_VAR('LIBDIR') + '/ldb')
26 bld.BUILD_SUBDIR(LIBTDB_DIR)
27 bld.BUILD_SUBDIR(LIBTEVENT_DIR)
29 # in Samba4 we build some extra modules, and add extra
30 # capabilities to the ldb cmdline tools
31 s4_build = getattr(bld.env, '_SAMBA_BUILD_', 0) == 4
33 LDB_MAP_SRC = bld.SUBDIR('ldb_map',
34 'ldb_map.c ldb_map_inbound.c ldb_map_outbound.c')
36 COMMON_SRC = bld.SUBDIR('common',
37 '''ldb.c ldb_ldif.c ldb_parse.c ldb_msg.c ldb_utf8.c
38 ldb_debug.c ldb_dn.c ldb_match.c
39 ldb_attributes.c attrib_handlers.c ldb_controls.c qsort.c''')
41 bld.SAMBA_SUBSYSTEM('LIBLDB',
44 source='common/ldb_modules.c')
46 bld.SAMBA_MODULE('ldb_asq',
48 init_function='LDB_MODULE(asq)',
51 bld.SAMBA_MODULE('ldb_server_sort',
53 init_function='LDB_MODULE(server_sort)',
56 bld.SAMBA_MODULE('ldb_paged_results',
57 'modules/paged_results.c',
58 init_function='LDB_MODULE(paged_results)',
61 bld.SAMBA_MODULE('ldb_paged_searches',
62 'modules/paged_searches.c',
63 init_function='LDB_MODULE(paged_searches)',
67 bld.SAMBA_MODULE('ldb_rdn_name',
69 init_function='LDB_MODULE(rdn_name)',
72 bld.SAMBA_MODULE('ldb_sqlite3',
73 'sqlite3/ldb_sqlite3.c',
74 init_function='LDB_BACKEND(sqlite3)',
78 bld.SAMBA_MODULE('ldb_tdb',
80 '''ldb_tdb.c ldb_pack.c ldb_search.c ldb_index.c
81 ldb_cache.c ldb_tdb_wrap.c'''),
82 init_function='LDB_BACKEND(tdb)',
86 bld.SAMBA_MODULE('ldb_ildap', 'ldb_ildap/ldb_ildap.c',
87 init_function='LDB_BACKEND(ldapi),LDB_BACKEND(ldaps),LDB_BACKEND(ldap)',
88 deps='talloc LIBCLI_LDAP CREDENTIALS',
92 ldb_deps = 'tevent LIBLDB'
94 ldb_deps += ' LDBSAMBA POPT_CREDENTIALS POPT_SAMBA LIBCMDLINE_CREDENTIALS gensec'
96 bld.SAMBA_LIBRARY('ldb',
97 COMMON_SRC + ' ' + LDB_MAP_SRC,
102 bld.SAMBA_SUBSYSTEM('LIBLDB_CMDLINE',
103 'tools/ldbutil.c tools/cmdline.c',
106 LDB_TOOLS='ldbadd ldbsearch ldbdel ldbmodify ldbedit ldbrename ldbtest'
107 for t in LDB_TOOLS.split():
108 bld.SAMBA_BINARY(t, 'tools/%s.c' % t, deps='LIBLDB_CMDLINE')
111 bld.SAMBA_PYTHON('pyldb', 'pyldb.c',