Adding waf script for building
diff --git a/wscript b/wscript
new file mode 100644
index 0000000..ce05b4b
--- /dev/null
+++ b/wscript
@@ -0,0 +1,79 @@
+# -*- Mode: python; py-indent-offset: 4; indent-tabs-mode: nil; coding: utf-8; -*-
+
+VERSION='1.0.0'
+APPNAME='nlsr'
+
+from waflib import Configure, Build, Logs
+
+def options(opt):
+ opt.load('compiler_cxx boost')
+ # opt.load('ndnx', tooldir=["waf-tools"])
+
+ syncopt = opt.add_option_group ("nlsr Options")
+
+ syncopt.add_option('--debug',action='store_true',default=False,dest='debug',help='''debugging mode''')
+
+def configure(conf):
+ conf.load('compiler_cxx boost')
+
+ if conf.options.debug:
+ conf.define ('_DEBUG', 1)
+ conf.add_supported_cxxflags (cxxflags = ['-O0',
+ '-Wall',
+ '-Wno-unused-variable',
+ '-g3',
+ '-Wno-unused-private-field', # only clang supports
+ '-fcolor-diagnostics', # only clang supports
+ '-Qunused-arguments', # only clang supports
+ '-Wno-tautological-compare', # suppress warnings from CryptoPP
+ '-Wno-deprecated-declarations'
+ ])
+ else:
+ conf.add_supported_cxxflags (cxxflags = ['-O3',
+ '-g',
+ '-Wno-unused-variable',
+ '-Wno-tautological-compare',
+ '-Wno-unused-function',
+ '-Wno-deprecated-declarations'
+ ])
+
+ conf.check_cfg(package='libndn-cpp-dev', args=['--cflags', '--libs'], uselib_store='NDNCPP', mandatory=True)
+
+ conf.check_boost(lib='system iostreams thread unit_test_framework', mandatory=True)
+
+ conf.check_cfg(package='ChronoSync', args=['--cflags', '--libs'], uselib_store='ChronoSync', mandatory=True)
+
+
+
+def build (bld):
+ bld (
+ # vnum = "1.0.0",
+ features=['cxx', 'cxxprogram'],
+ target="nlsr",
+ source = bld.path.ant_glob('src/*.cpp'),
+ use = 'BOOST NDNCPP ChronoSync',
+ #cwd = bld.path.find_dir ("src"),
+ #includes = ['src'],
+ )
+
+ #bld.install_files (
+ # dest = "%s/nlsr" % bld.env['INCLUDEDIR'],
+ # files = bld.path.ant_glob(['*.hpp']),
+ # cwd = bld.path.find_dir ("src"),
+ # relative_trick = True,
+ # )
+
+@Configure.conf
+def add_supported_cxxflags(self, cxxflags):
+ """
+ Check which cxxflags are supported by compiler and add them to env.CXXFLAGS variable
+ """
+ self.start_msg('Checking allowed flags for c++ compiler')
+
+ supportedFlags = []
+ for flag in cxxflags:
+ if self.check_cxx (cxxflags=[flag], mandatory=False):
+ supportedFlags += [flag]
+
+ self.end_msg (' '.join (supportedFlags))
+ self.env.CXXFLAGS += supportedFlags