From d2fcc7b7be753fa104590aa8c40caf06e43185e9 Mon Sep 17 00:00:00 2001 From: Thomas Nagy Date: Wed, 18 Dec 2013 23:21:34 +0100 Subject: [PATCH] special case of files created in the source directory in combination with update_outputs --- waflib/Task.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/waflib/Task.py b/waflib/Task.py index 533ec7d2..3d7ee64b 100644 --- a/waflib/Task.py +++ b/waflib/Task.py @@ -1101,9 +1101,17 @@ def update_outputs(cls): prev_sig = bld.task_sigs[self.uid()] if prev_sig == self.signature(): for x in self.outputs: + if not x.is_child_of(bld.bldnode): + # special case of files created in the source directory + # hash them here for convenience -_- + x.sig = Utils.h_file(x.abspath()) if not x.sig or bld.task_sigs[x.abspath()] != self.uid(): return RUN_ME return SKIP_ME + except OSError: + pass + except IOError: + pass except KeyError: pass except IndexError: @@ -1115,4 +1123,3 @@ def update_outputs(cls): return cls -