aboutsummaryrefslogtreecommitdiff
path: root/libbuild2/context.hxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2022-11-29 08:02:51 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2022-11-29 08:02:51 +0200
commit05afdd8ca16c7066d12510a27e2fc08743bb2e95 (patch)
tree90c7a43a08c47786df3869d68d7b625bf93174d3 /libbuild2/context.hxx
parent472d6d0e49c0114f46ff31267d09acdbf9fba421 (diff)
Fix backlink logic for target groups
We used to backlink ad hoc group members both via the group and as individual members. And for explicit groups it was done only via individual members, which means it only works correctly if every member is individually updated. Now both types of groups are backlinked from the group target.
Diffstat (limited to 'libbuild2/context.hxx')
-rw-r--r--libbuild2/context.hxx17
1 files changed, 14 insertions, 3 deletions
diff --git a/libbuild2/context.hxx b/libbuild2/context.hxx
index c16181f..b71a068 100644
--- a/libbuild2/context.hxx
+++ b/libbuild2/context.hxx
@@ -505,7 +505,12 @@ namespace build2
//
const variable* var_clean;
- // Forwarded configuration backlink mode. Valid values are:
+ // Forwarded configuration backlink mode. The value has two components
+ // in the form:
+ //
+ // <mode> [<print>]
+ //
+ // Valid <mode> values are:
//
// false - no link.
// true - make a link using appropriate mechanism.
@@ -513,8 +518,14 @@ namespace build2
// hard - make a hard link.
// copy - make a copy.
// overwrite - copy over but don't remove on clean.
+ // group - inherit the group mode (only valid for group members).
//
- // Note that it can be set by a matching rule as a rule-specific variable.
+ // While the <print> component should be either true or false and can be
+ // used to suppress printing of specific ad hoc group members at verbosity
+ // level 1. Note that it cannot be false for the primary member.
+ //
+ // Note that this value can be set by a matching rule as a rule-specific
+ // variable.
//
// Note also that the overwrite mode was originally meant for handling
// pregenerated source code. But in the end this did not pan out for
@@ -538,7 +549,7 @@ namespace build2
// just expose a mechanism to delegate to a different rule, which we
// already have).
//
- // [string] target visibility
+ // [names] target visibility
//
const variable* var_backlink;