Allow ns3moduleheader taskgen with empty list of source headers (for completely optional ns-3 modules)
1.1 --- a/src/wscript Wed Sep 02 11:29:23 2009 +0100
1.2 +++ b/src/wscript Wed Sep 02 17:43:28 2009 +0100
1.3 @@ -214,19 +214,22 @@
1.4 ## get all of the ns3 headers
1.5 ns3_dir_node = self.bld.path.find_dir("ns3")
1.6 all_headers_inputs = []
1.7 + found_the_module = False
1.8 for ns3headers in self.bld.all_task_gen:
1.9 if isinstance(ns3headers, ns3header_taskgen):
1.10 if ns3headers.module != self.module:
1.11 continue
1.12 + found_the_module = True
1.13 for source in ns3headers.to_list(ns3headers.source):
1.14 source = os.path.basename(source)
1.15 node = ns3_dir_node.find_or_declare(os.path.basename(source))
1.16 if node is None:
1.17 fatal("missing header file %s" % (source,))
1.18 all_headers_inputs.append(node)
1.19 + if not found_the_module:
1.20 + raise Utils.WscriptError("error finding headers for module %s" % self.module)
1.21 if not all_headers_inputs:
1.22 - raise Utils.WscriptError("error finding headers for module %s" % self.module)
1.23 - assert all_headers_inputs
1.24 + return
1.25 module_obj = self.bld.name_to_obj("ns3-" + self.module, self.env)
1.26 assert module_obj is not None
1.27 all_headers_outputs = [ns3_dir_node.find_or_declare("%s-module.h" % self.module)]