aboutsummaryrefslogtreecommitdiff
path: root/bpkg/pkg-configure.cxx
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2022-01-31 12:24:28 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2022-02-03 16:15:30 +0300
commitfafc5727732c7df2c98b123292f483411e0050e3 (patch)
tree2d67d33a557e82a694ba9d48a90cad99fd33e49f /bpkg/pkg-configure.cxx
parent85b7dc75597386777ebe1f7158e798eff968a4bf (diff)
Add support for bootstrap-build and root-build values in package manifest
Diffstat (limited to 'bpkg/pkg-configure.cxx')
-rw-r--r--bpkg/pkg-configure.cxx19
1 files changed, 17 insertions, 2 deletions
diff --git a/bpkg/pkg-configure.cxx b/bpkg/pkg-configure.cxx
index 8e53d62..05073a7 100644
--- a/bpkg/pkg-configure.cxx
+++ b/bpkg/pkg-configure.cxx
@@ -33,6 +33,8 @@ namespace bpkg
database& db,
transaction&,
const dependencies& deps,
+ const string& bootstrap_build,
+ const optional<string>& root_build,
const package_name& package,
bool simulate,
const function<find_database_function>& fdb)
@@ -52,7 +54,7 @@ namespace bpkg
bool enabled (false); // True if there is an enabled alternative.
for (const dependency_alternative& da: das)
{
- if (!evaluate_enabled (da, package))
+ if (!evaluate_enabled (da, bootstrap_build, root_build, package))
continue;
enabled = true;
@@ -199,6 +201,8 @@ namespace bpkg
transaction& t,
const shared_ptr<selected_package>& p,
const dependencies& deps,
+ const string& bootstrap_build,
+ const optional<string>& root_build,
const strings& vars,
bool simulate,
const function<find_database_function>& fdb)
@@ -229,7 +233,15 @@ namespace bpkg
assert (p->prerequisites.empty ());
pair<package_prerequisites, small_vector<string, 1>> cpr (
- pkg_configure_prerequisites (o, db, t, deps, p->name, simulate, fdb));
+ pkg_configure_prerequisites (o,
+ db,
+ t,
+ deps,
+ bootstrap_build,
+ root_build,
+ p->name,
+ simulate,
+ fdb));
p->prerequisites = move (cpr.first);
@@ -414,6 +426,7 @@ namespace bpkg
package_manifest m (pkg_verify (o,
p->effective_src_root (c),
true /* ignore_unknown */,
+ true /* load_buildfiles */,
[&p] (version& v) {v = p->version;}));
pkg_configure (o,
@@ -421,6 +434,8 @@ namespace bpkg
t,
p,
convert (move (m.dependencies)),
+ *m.bootstrap_build,
+ m.root_build,
vars,
false /* simulate */);
}