aboutsummaryrefslogtreecommitdiff
path: root/bdep/config.hxx
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2021-07-21 21:31:18 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2021-08-05 12:36:07 +0300
commit9664d2849ee30d63cd10ce5b258f1433a650b488 (patch)
tree89fa1d8de3ee56be6e76f49803ee2888516d902b /bdep/config.hxx
parenteb02d377f4f10e23cc6673e9e8f048b4ecbc8492 (diff)
Add support for automatic creation of configurations for build-time dependencies
Diffstat (limited to 'bdep/config.hxx')
-rw-r--r--bdep/config.hxx49
1 files changed, 49 insertions, 0 deletions
diff --git a/bdep/config.hxx b/bdep/config.hxx
index 111ce15..b8ad1cc 100644
--- a/bdep/config.hxx
+++ b/bdep/config.hxx
@@ -26,6 +26,26 @@ namespace bdep
optional<uint64_t> id = nullopt,
const char* what = "added");
+ // Configuration directory should exist and its path should be absolute and
+ // normalized.
+ //
+ shared_ptr<configuration>
+ cmd_config_add (const dir_path& prj,
+ transaction&,
+ const dir_path& path,
+ const optional<string>& name,
+ string type,
+ bool default_ = true,
+ bool forward = true,
+ bool auto_sync = true,
+ optional<uint64_t> id = nullopt);
+
+ void
+ cmd_config_add_print (diag_record&,
+ const dir_path& prj,
+ const dir_path&,
+ const optional<string>& name);
+
shared_ptr<configuration>
cmd_config_create (const common_options&,
const configuration_add_options&,
@@ -38,6 +58,35 @@ namespace bdep
string type,
optional<uint64_t> id = nullopt);
+ // Configuration directory path should be absolute and normalized.
+ //
+ shared_ptr<configuration>
+ cmd_config_create (const common_options&,
+ const dir_path& prj,
+ transaction&,
+ const dir_path& path,
+ const optional<string>& name,
+ string type,
+ bool default_ = true,
+ bool forward = true,
+ bool auto_sync = true,
+ bool existing = false,
+ bool wipe = false,
+ const strings& args = {},
+ optional<uint64_t> id = nullopt);
+
+ void
+ cmd_config_create_print (diag_record&,
+ const dir_path& prj,
+ const dir_path&,
+ const optional<string>& name,
+ const string& type);
+
+ void
+ cmd_config_link (const common_options&,
+ const shared_ptr<configuration>&,
+ const shared_ptr<configuration>&);
+
int
cmd_config (cmd_config_options&&, cli::scanner& args);