aboutsummaryrefslogtreecommitdiff
path: root/bpkg/package-skeleton.hxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2022-06-14 06:19:25 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2022-06-14 14:46:53 +0200
commitb1b6d9f2b18928237a47c14436eee3b985223ed0 (patch)
tree0284667d7607b1aaee6f0aeccee30e30c3256a7c /bpkg/package-skeleton.hxx
parent2b558101a4b6c9eab2bdebc011f3dc02f0010cc0 (diff)
Make all dependency values accessible in reflect clause for same position
Diffstat (limited to 'bpkg/package-skeleton.hxx')
-rw-r--r--bpkg/package-skeleton.hxx10
1 files changed, 10 insertions, 0 deletions
diff --git a/bpkg/package-skeleton.hxx b/bpkg/package-skeleton.hxx
index a0ac38a..aa9b2a9 100644
--- a/bpkg/package-skeleton.hxx
+++ b/bpkg/package-skeleton.hxx
@@ -298,6 +298,16 @@ namespace bpkg
reflect_variable_values dependency_reflect_;
size_t dependency_reflect_index_ = 0;
size_t dependency_reflect_pending_ = 0;
+
+ // Position of the last successfully evaluated prefer/accept clauses.
+ //
+ // This information is used to make all (as opposed to only those set by
+ // the prefer clause) dependency configuration variables available to the
+ // reflect clause but only at the same position. This allows for some more
+ // advanced configuration techniques, such as, using a feature if enabled
+ // by someone else but not having any preferences ourselves.
+ //
+ optional<pair<size_t, size_t>> prefer_accept_;
};
}