diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2023-07-20 07:44:36 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2023-07-20 07:44:36 +0200 |
commit | b61e0de250d522ec9a8e16146ef979a65c181db1 (patch) | |
tree | 93cf8e451a5c605f9d0159c6474e77d47b6f2de4 /libbuild2/version/rule.cxx | |
parent | 7aabdc2ccfea23c93e3b94290df59708aa179104 (diff) |
Change inner rule/prerequisites match order in install::file_rule
The old order messed up the for-install signaling logic. See the long comment
in install::file_rule::apply_impl() for background and details.
Diffstat (limited to 'libbuild2/version/rule.cxx')
-rw-r--r-- | libbuild2/version/rule.cxx | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/libbuild2/version/rule.cxx b/libbuild2/version/rule.cxx index 98dc2da..65c1117 100644 --- a/libbuild2/version/rule.cxx +++ b/libbuild2/version/rule.cxx @@ -93,6 +93,12 @@ namespace build2 if (!fi) l5 ([&]{trace << "no in file prerequisite for target " << t;}); + // If we match, derive the file name early as recommended by the in + // rule. + // + if (fm && fi) + t.derive_path (); + return fm && fi; } |