blob: 068c3e414d32c73dede0e3514e2169dad5f46287 [file] [log] [blame]
shockjiange9c1ab92014-07-21 12:02:52 -07001# -*- Mode: python; py-indent-offset: 4; indent-tabs-mode: nil; coding: utf-8; -*-
2VERSION='0.1'
Alexander Afanasyev6e3d1ac2014-07-21 12:47:49 -07003APPNAME="ndns"
shockjiange9c1ab92014-07-21 12:02:52 -07004
5def options(opt):
Alexander Afanasyev6e3d1ac2014-07-21 12:47:49 -07006 opt.load(['compiler_cxx', 'gnu_dirs'])
7 opt.load(['boost', 'default-compiler-flags', 'doxygen', 'sphinx_build',
8 'sqlite3', 'pch', 'coverage'], tooldir=['.waf-tools'])
9
10 ropt = opt.add_option_group('NDNS Options')
11
12 ropt.add_option('--with-tests', action='store_true', default=False, dest='with_tests',
13 help='''build unit tests''')
shockjiange9c1ab92014-07-21 12:02:52 -070014
15def configure(conf):
Alexander Afanasyev6e3d1ac2014-07-21 12:47:49 -070016 conf.load(['compiler_cxx', 'gnu_dirs',
17 'boost', 'default-compiler-flags', 'doxygen',
18 'sqlite3', 'pch', 'coverage'])
19
shockjiange9c1ab92014-07-21 12:02:52 -070020 conf.check_cfg(package='libndn-cxx', args=['--cflags', '--libs'],
21 uselib_store='NDN_CXX', mandatory=True)
22
Alexander Afanasyev6e3d1ac2014-07-21 12:47:49 -070023 conf.check_sqlite3(mandatory=True)
24
25 if conf.options.with_tests:
26 conf.env['WITH_TESTS'] = True
27
28 USED_BOOST_LIBS = ['system']
29 if conf.env['WITH_TESTS']:
30 USED_BOOST_LIBS += ['unit_test_framework']
31 conf.check_boost(lib=USED_BOOST_LIBS, mandatory=True)
32
33 # conf.define('DEFAULT_CONFIG_FILE', '%s/ndn/ndns.conf' % conf.env['SYSCONFDIR'])
34
35 if not conf.options.with_sqlite_locking:
36 conf.define('DISABLE_SQLITE3_FS_LOCKING', 1)
37
38 conf.write_config_header('src/config.hpp')
39
shockjiange9c1ab92014-07-21 12:02:52 -070040def build (bld):
Alexander Afanasyev6e3d1ac2014-07-21 12:47:49 -070041 bld(
42 features='cxx',
43 name='ndns-objects',
44 source=bld.path.ant_glob(['src/**/*.cpp'],
45 excl=['src/main.cpp']),
46 use='NDN_CXX BOOST',
47 includes='src',
48 export_includes='src',
49 )
shockjiange9c1ab92014-07-21 12:02:52 -070050
Alexander Afanasyev6e3d1ac2014-07-21 12:47:49 -070051 # bld(
52 # features='cxx cxxprogram',
53 # target='ndns',
54 # source='src/main.cpp',
55 # use='ndns-objects',
56 # )
shockjiange9c1ab92014-07-21 12:02:52 -070057
Alexander Afanasyev6e3d1ac2014-07-21 12:47:49 -070058 bld.recurse('tests')
59
60 # bld.install_files('${SYSCONFDIR}/ndn', 'ndns.conf.sample')