Update wscript to reflect version update of ./waf
diff --git a/wscript b/wscript
index 8137f3b..e153c41 100644
--- a/wscript
+++ b/wscript
@@ -5,17 +5,21 @@
import Utils
import Options
-def set_options(opt):
- opt.tool_options('boost')
+def options(opt):
+ opt.tool_options('boost', tooldir=["waf-tools"])
def configure(conf):
- conf.check_tool('boost')
- conf.env['BOOST'] = conf.check_boost(lib = 'iostreams',
- min_version='1.40.0' )
- if not conf.env['BOOST']:
+ try:
+ conf.check_tool('boost')
+ conf.check_boost(lib = 'iostreams')
+ except WafError:
+ conf.env['LIB_BOOST'] = []
+
+ if not conf.env['LIB_BOOST']:
conf.report_optional_feature("ndn-abstract", "NDN abstraction", False,
"Required boost libraries not found")
conf.env['ENABLE_NDN_ABSTRACT']=False;
+ conf.env['MODULES_NOT_BUILT'].append('NDNabstraction')
return
conf.env['ENABLE_NDN_ABSTRACT']=True;
@@ -27,41 +31,46 @@
module.uselib = 'BOOST BOOST_IOSTREAMS'
tests = bld.create_ns3_module_test_library('NDNabstraction')
- headers = bld.new_task_gen('ns3header')
+ headers = bld.new_task_gen(features=['ns3header'])
headers.module = 'NDNabstraction'
if not bld.env['ENABLE_NDN_ABSTRACT']:
- conf.env['MODULES_NOT_BUILT'].append('NDNabstraction')
+ bld.env['MODULES_NOT_BUILT'].append('NDNabstraction')
return
- module.find_sources_in_dirs (['model', 'apps', 'helper',
- 'helper/ccnb-parser',
- 'helper/ccnb-parser/visitors',
- 'helper/ccnb-parser/syntax-tree'],[],['.cc']);
- tests.find_sources_in_dirs( ['test'], [], ['.cc'] );
- headers.find_sources_in_dirs( ['model', 'apps', 'helper',
- 'helper/ccnb-parser',
- 'helper/ccnb-parser/visitors',
- 'helper/ccnb-parser/syntax-tree'], [], ['.h'] );
+ module.source = bld.path.ant_glob(['model/*.cc', 'apps/*.cc',
+ 'helper/*.cc',
+ 'helper/ccnb-parser/*.cc',
+ 'helper/ccnb-parser/visitors/*.cc',
+ 'helper/ccnb-parser/syntax-tree/*.cc'])
- if True or bld.env['ENABLE_EXAMPLES']:
- for path in ["examples"]:
- anode = bld.path.find_dir (path)
- if not anode or not anode.is_child_of(bld.srcnode):
- raise Utils.WscriptError("Unable to use '%s' - either because \
- it's not a relative path"", or it's not child of \
- '%s'."%(name,bld.srcnode))
- bld.rescan(anode)
- for filename in bld.cache_dir_contents[anode.id]:
- if filename.startswith('.') or not filename.endswith(".cc"):
- continue
- name = filename[:-len(".cc")]
- obj = bld.create_ns3_program(name, ['NDNabstraction'])
- obj.path = obj.path.find_dir (path)
- obj.source = filename
- obj.target = name
- obj.name = obj.target
- obj.uselib = 'BOOST BOOST_IOSTREAMS'
+ headers.source = bld.path.ant_glob(['model/*.h', 'apps/*.h',
+ 'helper/*.h',
+ 'helper/ccnb-parser/*.h',
+ 'helper/ccnb-parser/visitors/*.h',
+ 'helper/ccnb-parser/syntax-tree/*.h'])
- bld.ns3_python_bindings()
-
+ headers.source = [x.path_from(bld.path) for x in headers.source]
+
+ tests.source = bld.path.ant_glob('test/*.cc');
+
+ # if True or bld.env['ENABLE_EXAMPLES']:
+ # for path in ["examples"]:
+ # anode = bld.path.find_dir (path)
+ # if not anode or not anode.is_child_of(bld.srcnode):
+ # raise Utils.WscriptError("Unable to use '%s' - either because \
+ # it's not a relative path"", or it's not child of \
+ # '%s'."%(name,bld.srcnode))
+ # bld.rescan(anode)
+ # for filename in bld.cache_dir_contents[anode.id]:
+ # if filename.startswith('.') or not filename.endswith(".cc"):
+ # continue
+ # name = filename[:-len(".cc")]
+ # obj = bld.create_ns3_program(name, ['NDNabstraction'])
+ # obj.path = obj.path.find_dir (path)
+ # obj.source = filename
+ # obj.target = name
+ # obj.name = obj.target
+ # obj.uselib = 'BOOST BOOST_IOSTREAMS'
+
+ # bld.ns3_python_bindings()