summaryrefslogtreecommitdiffstats
path: root/bdep/status.cli
blob: 2e37065fa33ef4aa94250815d7527938d22faf68 (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
78
79
80
81
82
// file      : bdep/status.cli
// copyright : Copyright (c) 2014-2018 Code Synthesis Ltd
// license   : MIT; see accompanying LICENSE file

include <bdep/project.cli>;

"\section=1"
"\name=bdep-status"
"\summary=print status of project and/or its dependencies"

namespace bdep
{
  {
    "<options>
     <prj-spec> <prj-dir>
     <pkg-spec> <pkg-dir>
     <cfg-spec> <cfg-name> <cfg-dir>
     <dep-spec> <pkg> <ver>",

    "\h|SYNOPSIS|

     \c{\b{bdep status} [<options>] [<pkg-spec>] [<cfg-spec>] [<dep-spec>...]}

     \c{<dep-spec> = <pkg>[\b{/}<ver>]\n
        <cfg-spec> = (\b{@}<cfg-name> | \b{--config}|\b{-c} <cfg-dir>)... | \b{--all}|\b{-a}\n
        <pkg-spec> = (\b{--directory}|\b{-d} <pkg-dir>)... | <prj-spec>\n
        <prj-spec> = \b{--directory}|\b{-d} <prj-dir>}

     \h|DESCRIPTION|

     The \cb{status} command prints the status of project packages and/or
     their dependencies in one or more build configurations.

     If no project or package directory is specified, then the current working
     directory is assumed. If no configuration is specified, then the default
     configuration is assumed. See \l{bdep-projects-configs(1)} for details on
     specifying projects and configurations.

     If no <dep-spec> arguments are specified, then \cb{status} prints the
     status of the project's packages. Otherwise, the status of the specified
     dependency packages is printed. Additionally, the status of immediate or
     all dependencies of the above packages can be printed by specifying the
     \c{\b{--immediate}|\b{-i}} or \c{\b{--recursive}|\b{-r}} options,
     respectively.

     The status of each package is printed on a separate line. Note that the
     status is written to \cb{STDOUT}, not \cb{STDERR}. The semantics of
     <dep-spec> and the format of the status line are described in
     \l{bpkg-pkg-status(1)}.
     "
  }

  class cmd_status_options: project_options
  {
    "\h|STATUS OPTIONS|"

    bool --immediate|-i
    {
      "Also print the status of immediate dependencies."
    }

    bool --recursive|-r
    {
      "Also print the status of all dependencies, recursively."
    }

    bool --old-available|-o
    {
      "Print old available versions."
    }

    bool --fetch|-f
    {
      "Perform the \cb{fetch} command prior to printing the status."
    }

    bool --fetch-full|-F
    {
      "Perform the \cb{fetch --full} command prior to printing the status."
    }
  };
}