diff options
author | Karen Arutyunov <karen@codesynthesis.com> | 2020-10-05 22:28:22 +0300 |
---|---|---|
committer | Karen Arutyunov <karen@codesynthesis.com> | 2020-10-06 10:34:52 +0300 |
commit | 0301f00e27b673febf06ce6f3f27c6b708bb912a (patch) | |
tree | 8cc388d94d5fc60659afe3686b1aaef6af11ffa8 /bpkg | |
parent | 189744781d1c22082f2fbcef7ad41b0155f02f48 (diff) |
Separate configure step from fetch/unpack|checkout in pkg-build
Diffstat (limited to 'bpkg')
-rw-r--r-- | bpkg/pkg-build.cxx | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/bpkg/pkg-build.cxx b/bpkg/pkg-build.cxx index 0b763a9..f8bd221 100644 --- a/bpkg/pkg-build.cxx +++ b/bpkg/pkg-build.cxx @@ -4453,12 +4453,7 @@ namespace bpkg // // We are also going to combine purge and fetch/unpack|checkout into a // single step and use the replace mode so it will become just - // fetch/unpack|checkout. Configure is also combined with the above - // operations, since previously we had to guarantee that prerequisite - // packages are configured by the time its dependents need to be checked - // out. Now, when we start using the bootstrap dist for pkg-checkout - // that's not a requirement anymore. We, however, still keep it this way - // since there is no reason why not to. + // fetch/unpack|checkout. // // We also have the dependent packages that we reconfigure because their // prerequsites got upgraded/downgraded and that the user may want to in @@ -4607,7 +4602,7 @@ namespace bpkg } } - // purge, fetch/unpack|checkout, configure + // purge, fetch/unpack|checkout // for (build_package& p: reverse_iterate (build_pkgs)) { @@ -4859,10 +4854,18 @@ namespace bpkg break; // Get out from the breakout loop. } + } - // We are done for the dropped package. - // - if (*p.action == build_package::drop) + // configure + // + for (build_package& p: reverse_iterate (build_pkgs)) + { + assert (p.action); + + shared_ptr<selected_package>& sp (p.selected); + const shared_ptr<available_package>& ap (p.available); + + if (*p.action == build_package::drop) // Skip package drops. continue; // Configure the package. |