#!/usr/bin/env python APPNAME = 'tevent' VERSION = '0.9.9' 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/tevent:. lib/replace:lib/replace lib/talloc:lib/talloc buildtools:buildtools') def set_options(opt): opt.BUILTIN_DEFAULT('replace') opt.BUNDLED_EXTENSION_DEFAULT('tevent', noextenion='tevent') opt.RECURSE('lib/replace') opt.RECURSE('lib/talloc') def configure(conf): conf.RECURSE('lib/replace') conf.RECURSE('lib/talloc') conf.env.standalone_tevent = conf.IN_LAUNCH_DIR() if not conf.env.standalone_tevent: if conf.CHECK_BUNDLED_SYSTEM('tevent', minversion=VERSION, onlyif='talloc', implied_deps='replace talloc'): conf.define('USING_SYSTEM_TEVENT', 1) if conf.CHECK_FUNCS('epoll_create', headers='sys/epoll.h'): conf.DEFINE('HAVE_EPOLL', 1) conf.SAMBA_CONFIG_H() def build(bld): bld.RECURSE('lib/replace') bld.RECURSE('lib/talloc') SRC = '''tevent.c tevent_debug.c tevent_fd.c tevent_immediate.c tevent_queue.c tevent_req.c tevent_select.c tevent_signal.c tevent_standard.c tevent_timed.c tevent_util.c tevent_wakeup.c''' if bld.CONFIG_SET('HAVE_EPOLL'): SRC += ' tevent_epoll.c' if not bld.CONFIG_SET('USING_SYSTEM_TEVENT'): bld.SAMBA_LIBRARY('tevent', SRC, deps='replace talloc', enabled= not bld.CONFIG_SET('USING_SYSTEM_TEVENT'), abi_file='ABI/tevent-%s.sigs' % VERSION, abi_match='tevent_* _tevent_*', vnum=VERSION, is_bundled=not bld.env.standalone_tevent) if bld.env.standalone_tevent: bld.env.PKGCONFIGDIR = '${LIBDIR}/pkgconfig' bld.PKG_CONFIG_FILES('tevent.pc', vnum=VERSION) bld.INSTALL_FILES('${INCLUDEDIR}', 'tevent.h') def test(ctx): '''test tevent''' print("The tevent testsuite is part of smbtorture in samba4") def dist(): '''makes a tarball for distribution''' samba_dist.dist()