diff options
Diffstat (limited to 'build2/bash/rule.cxx')
-rw-r--r-- | build2/bash/rule.cxx | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/build2/bash/rule.cxx b/build2/bash/rule.cxx index 4266c89..d12e743 100644 --- a/build2/bash/rule.cxx +++ b/build2/bash/rule.cxx @@ -422,5 +422,20 @@ namespace build2 return r; } + + const target* install_rule:: + filter (action a, const target& t, const prerequisite& p) const + { + // If this is a module prerequisite, install it as long as it is in the + // same amalgamation as we are. + // + if (p.is_a<bash> ()) + { + const target& pt (search (t, p)); + return pt.in (t.weak_scope ()) ? &pt : nullptr; + } + else + return file_rule::filter (a, t, p); + } } } |