aboutsummaryrefslogtreecommitdiff
path: root/bdep/project.cli
blob: 137c77d8cbce06b74022b00e8f2263338af5451e (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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
// file      : bdep/project.cli
// copyright : Copyright (c) 2014-2017 Code Synthesis Ltd
// license   : MIT; see accompanying LICENSE file

include <bdep/common.cli>;

"\name=project" // Not a man page.

namespace bdep
{
  // Common options for commands that add/create configurations.
  //
  class configuration_add_options
  {
    bool --default
    {
      "Make the added or created configuration the default."
    }

    bool --no-default
    {
      "Don't make the first added or created configuration then default."
    }

    bool --forward
    {
      "Make the added or created configuration forwarded."
    }

    bool --no-forward
    {
      "Don't make the added or created configuration forwarded."
    }
  };

  // Common options for commands that accept --config-id and @<cfg-name>.
  //
  class configuration_name_options: common_options
  {
    vector<uint64_t> --config-id
    {
      "<num>",
      "Specify the build configuration as an id."
    };

    // Storage for configuration names specified as @<cfg-name>.
    //
    // Note that we leave it undocumented so that it's not mentioned in
    // documentation.
    //
    strings --config-name;
  };

  // Common options for commands that operate on project/packages (prj-spec
  // and pkg-spec) and configurations (cfg-spec).
  //
  class project_options: configuration_name_options
  {
    bool --all|-a
    {
      "Use all build configurations."
    }

    dir_paths --config|-c
    {
      "<dir>",
      "Specify the build configuration as a directory."
    }

    dir_paths --directory|-d
    {
      "<dir>",
      "Assume project/package is in the specified directory rather than in the
       current working directory."
    }
  };
}