aboutsummaryrefslogtreecommitdiff
path: root/bdep/init.hxx
blob: 8569f91a1bdb9b4485742bd0b6af75468e9ea127 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
// file      : bdep/init.hxx -*- C++ -*-
// copyright : Copyright (c) 2014-2019 Code Synthesis Ltd
// license   : MIT; see accompanying LICENSE file

#ifndef BDEP_INIT_HXX
#define BDEP_INIT_HXX

#include <bdep/types.hxx>
#include <bdep/utility.hxx>

#include <bdep/project.hxx>
#include <bdep/init-options.hxx>

namespace bdep
{
  // Handle --config-create/add.
  //
  shared_ptr<configuration>
  cmd_init_config (const configuration_name_options&,
                   const configuration_add_options&,
                   const dir_path& prj,
                   const package_locations&,
                   database&,
                   const dir_path& cfg,
                   const strings& cfg_args,
                   bool config_add_specified,
                   bool config_create_specified);

  // Initialize each package in each configuration skipping those that are
  // already initialized. Then synchronize each configuration.
  //
  void
  cmd_init (const common_options&,
            const dir_path& prj,
            database&,
            const configurations&,
            const package_locations&,
            const strings& pkg_args);

  int
  cmd_init (const cmd_init_options&, cli::group_scanner& args);

  default_options_files
  options_files (const char* cmd,
                 const cmd_init_options&,
                 const strings& args);

  cmd_init_options
  merge_options (const default_options<cmd_init_options>&,
                 const cmd_init_options&);
}

#endif // BDEP_INIT_HXX