aboutsummaryrefslogtreecommitdiff
path: root/build2/test
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2017-03-03 14:57:29 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2017-03-03 15:25:39 +0200
commitdc74915e47968c40c497fb6d53144bb815ca5cfb (patch)
tree8b7616a62e6e1b5de81fe043043f726e38e24a75 /build2/test
parent183329b89ddf810e2df5c250ae5b97d8ebcbba74 (diff)
Fix test and dist for generated input/output
Diffstat (limited to 'build2/test')
-rw-r--r--build2/test/rule.cxx9
1 files changed, 6 insertions, 3 deletions
diff --git a/build2/test/rule.cxx b/build2/test/rule.cxx
index 06ffc9f..02026e8 100644
--- a/build2/test/rule.cxx
+++ b/build2/test/rule.cxx
@@ -140,11 +140,14 @@ namespace build2
// for (update, test), and not simply "guide" (update, 0) as to which
// targets need updating. For how exactly we are going to do it, see
// apply() below.
- //
+
// Change the recipe action to (update, 0) (i.e., "unconditional
- // update") to make sure we won't match any prerequisites.
+ // update") for "leaf" tests to make sure we won't match any
+ // prerequisites. Note that this doesn't cover the case where an alias
+ // is both a test and a pass for a test prerequisite with generated
+ // input/output.
//
- if (a.operation () == update_id && (md.pass || md.test))
+ if (a.operation () == update_id && md.test)
mr.recipe_action = action (a.meta_operation (), update_id);
// Note that we match even if this target is not testable so that we can