aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bpkg/build-options.cli8
-rw-r--r--bpkg/build.cxx17
2 files changed, 18 insertions, 7 deletions
diff --git a/bpkg/build-options.cli b/bpkg/build-options.cli
index 8366d35..f2c9e23 100644
--- a/bpkg/build-options.cli
+++ b/bpkg/build-options.cli
@@ -23,6 +23,9 @@ the package can be specified as either the path to the package
source archive (<file>) or package source directory (<dir>). See
\cb{pkg-fetch} and \cb{pkg-unpack} for more information on the
semantics of specifying the package as an archive or directory.
+
+The \cb{build} command also supports several \cb{--*-only} options
+that allow you to limit the amount of work that will be done.
*/
namespace bpkg
@@ -34,6 +37,11 @@ namespace bpkg
"Assume the answer to all prompts is \cb{yes}."
};
+ bool --configure-only|-c
+ {
+ "Configuring all the packages but don't update."
+ };
+
bool --print-only|-p
{
"Print to \cb{STDOUT} what would be done without actually doing
diff --git a/bpkg/build.cxx b/bpkg/build.cxx
index eda1199..10f668b 100644
--- a/bpkg/build.cxx
+++ b/bpkg/build.cxx
@@ -1141,16 +1141,19 @@ namespace bpkg
// update
//
- for (const satisfied_package& p: reverse_iterate (pkgs))
+ if (!o.configure_only ())
{
- const shared_ptr<selected_package>& sp (p.selected);
+ for (const satisfied_package& p: reverse_iterate (pkgs))
+ {
+ const shared_ptr<selected_package>& sp (p.selected);
- // @@ TODO: update user selection only.
- //
- pkg_update (c, sp);
+ // @@ TODO: update the user selection only.
+ //
+ pkg_update (c, sp);
- if (verb)
- text << "updated " << sp->name << " " << sp->version;
+ if (verb)
+ text << "updated " << sp->name << " " << sp->version;
+ }
}
}
}