From 3be904d33a9b63418d45afb35f6f321eb44fed2e Mon Sep 17 00:00:00 2001 From: Andrey Mazo Date: Tue, 6 Apr 2010 11:34:06 +0400 Subject: [PATCH] Bug 860: waf dies while executing ns3header task in case of parallel jobs. --- src/wscript | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/wscript b/src/wscript index 82beef993..af29dc1c1 100644 --- a/src/wscript +++ b/src/wscript @@ -11,6 +11,11 @@ import Options import Build import Utils +try: + set +except NameError: + from sets import Set as set # Python 2.3 fallback + all_modules = ( 'core', 'common', @@ -140,7 +145,7 @@ class ns3header_taskgen(TaskGen.task_gen): ns3_dir_node = self.bld.path.find_dir("ns3") if self.sub_dir is not None: ns3_dir_node = ns3_dir_node.find_dir(self.sub_dir) - for filename in self.to_list(self.source): + for filename in set(self.to_list(self.source)): src_node = self.path.find_resource(filename) if src_node is None: raise Utils.WafError("source ns3 header file %s not found" % (filename,)) @@ -238,7 +243,7 @@ class ns3moduleheader_taskgen(TaskGen.task_gen): if ns3headers.module != self.module: continue found_the_module = True - for source in ns3headers.to_list(ns3headers.source): + for source in set(ns3headers.to_list(ns3headers.source)): source = os.path.basename(source) node = ns3_dir_node.find_or_declare(os.path.basename(source)) if node is None: