aboutsummaryrefslogtreecommitdiff
path: root/bpkg/pkg-build.cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2023-04-12 07:34:39 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2023-04-12 07:34:39 +0200
commitb611f9d3aa65e93d8f1860867e75e00acfbfd78c (patch)
treeaefabd6b993104b6ef82f8ba5061718134d2a857 /bpkg/pkg-build.cxx
parent614893088f691c74b562272edec90ef9bd54e230 (diff)
Sketch
Diffstat (limited to 'bpkg/pkg-build.cxx')
-rw-r--r--bpkg/pkg-build.cxx8
1 files changed, 8 insertions, 0 deletions
diff --git a/bpkg/pkg-build.cxx b/bpkg/pkg-build.cxx
index 2484880..61b5916 100644
--- a/bpkg/pkg-build.cxx
+++ b/bpkg/pkg-build.cxx
@@ -5569,6 +5569,12 @@ namespace bpkg
prog_percent = 100;
}
+ // Reuse the build state to avoid reloading the dependencies over and over
+ // again. This is a valid optimization since we are configuring in the
+ // dependency-dependent order.
+ //
+ unique_ptr<build2::context> configure_ctx;
+
for (configure_package& cp: configure_packages)
{
build_package& p (cp.pkg);
@@ -5643,6 +5649,8 @@ namespace bpkg
}
}
+ configure_ctx.reset (); // Free.
+
// Clear the progress if shown.
//
if (progress)