#!/usr/bin/env python APPNAME = 'tdb' VERSION = '1.2.1' blddir = 'bin' import sys, os # find the buildtools directory srcdir = '.' while not os.path.exists(srcdir+'/buildtools') and len(srcdir.split('/')) < 5: srcdir = '../' + srcdir sys.path.insert(0, srcdir + '/buildtools/wafsamba') import wafsamba, samba_dist samba_dist.DIST_DIRS('lib/tdb:. lib/replace:lib/replace buildtools:buildtools') def set_options(opt): opt.BUILTIN_DEFAULT('replace') opt.BUNDLED_EXTENSION_DEFAULT('tdb', noextenion='tdb') opt.RECURSE('lib/replace') def configure(conf): conf.RECURSE('lib/replace') if conf.CHECK_BUNDLED_SYSTEM('tdb', minversion=VERSION, implied_deps='replace'): conf.define('USING_SYSTEM_TDB', 1) conf.SAMBA_CONFIG_H() def build(bld): bld.RECURSE('lib/replace') COMMON_SRC = bld.SUBDIR('common', '''check.c error.c tdb.c traverse.c freelistcheck.c lock.c dump.c freelist.c io.c open.c transaction.c''') if not bld.CONFIG_SET('USING_SYSTEM_TDB'): bld.SAMBA_LIBRARY('tdb', COMMON_SRC, deps='replace rt', includes='include', vnum=VERSION) bld.SAMBA_BINARY('tdbtorture', 'tools/tdbtorture.c', 'tdb') bld.SAMBA_BINARY('tdbdump', 'tools/tdbdump.c', 'tdb') bld.SAMBA_BINARY('tdbbackup', 'tools/tdbbackup.c', 'tdb') bld.SAMBA_BINARY('tdbtool', 'tools/tdbtool.c', 'tdb') s4_build = getattr(bld.env, '_SAMBA_BUILD_', 0) == 4 bld.SAMBA_PYTHON('pytdb', 'pytdb.c', deps='tdb', enabled=s4_build, realname='tdb.so') def test(ctx): '''run tdb testsuite''' import Utils cmd = os.path.join(Utils.g_module.blddir, 'tdbtorture') os.system(cmd)