diff options
author | Karen Arutyunov <karen@codesynthesis.com> | 2023-08-08 15:28:25 +0300 |
---|---|---|
committer | Karen Arutyunov <karen@codesynthesis.com> | 2023-09-25 11:35:25 +0300 |
commit | bbf4d75525f54a41ebf38608c193f5787128c590 (patch) | |
tree | f66707abaaf18d15b339615fcfd24a56278b079a /bpkg/pkg-configure.hxx | |
parent | 6f40a051db7ef6c42c4856f0608ce1dad4fcf609 (diff) |
Fix configuration negotiation in pkg-build to re-evaluate being reconfigured existing dependents
Diffstat (limited to 'bpkg/pkg-configure.hxx')
-rw-r--r-- | bpkg/pkg-configure.hxx | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/bpkg/pkg-configure.hxx b/bpkg/pkg-configure.hxx index 876d11a..cd74786 100644 --- a/bpkg/pkg-configure.hxx +++ b/bpkg/pkg-configure.hxx @@ -43,12 +43,13 @@ namespace bpkg bool buildtime); // Given dependencies of a package, return its prerequisite packages, - // configuration variables that resulted from selection of these - // prerequisites (import, reflection, etc), and sources of the configuration - // variables resulted from evaluating the reflect clauses. Fail if for some - // of the dependency alternative lists there is no satisfactory alternative - // (all its dependencies are configured, satisfy the respective constraints, - // etc). + // 1-based indexes of the selected dependency alternatives (0 for toolchain + // build-time dependencies, etc), configuration variables that resulted from + // selection of these prerequisites (import, reflection, etc), and sources + // of the configuration variables resulted from evaluating the reflect + // clauses. Fail if for some of the dependency alternative lists there is no + // satisfactory alternative (all its dependencies are configured, satisfy + // the respective constraints, etc). // // The package dependency constraints are expected to be complete. // @@ -101,8 +102,9 @@ namespace bpkg // struct configure_prerequisites_result { - package_prerequisites prerequisites; - strings config_variables; // Note: name and value. + package_prerequisites prerequisites; + vector<size_t> dependency_alternatives; + strings config_variables; // Note: name and value. // Only contains sources of configuration variables collected using the // package skeleton, excluding those user-specified variables which are |