aboutsummaryrefslogtreecommitdiff
path: root/bpkg/pkg-build-options.cli
blob: 39b96f15902cb15da08265d31efadfb0051f3acb (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
// file      : bpkg/pkg-build-options.cli
// copyright : Copyright (c) 2014-2016 Code Synthesis Ltd
// license   : MIT; see accompanying LICENSE file

include <bpkg/configuration-options.cli>;

"\section=1"
"\name=bpkg-pkg-build"
"\summary=build one or more packages"

namespace bpkg
{
  {
    "<options> <pkg> <ver> <file> <dir>",

    "\h|SYNOPSIS|

     \c{\b{bpkg pkg-build} [<options>] (<pkg>[/<ver>] | <file> | <dir>)...}

     \h|DESCRIPTION|

     The \cb{pkg-build} command builds one or more packages including all their
     prerequisites. Each package can be specified as just the name (<pkg>) with
     optional package version (<ver>) in which case the package will be
     automatically fetched from one of the configuration's source repositories
     (see the \cb{cfg-add} and \cb{cfg-fetch} commands). Alternatively, the
     package can be specified as either the path to the package source archive
     (<file>) or package source directory (<dir>). See the \cb{pkg-fetch} and
     \cb{pkg-unpack} commands for more information on the semantics of
     specifying the package as an archive or directory.

     Packages that are specified explicitly on the command line will be
     \i{held}, that is, they will not be considered for automatic removal if
     they no longer have any dependents. Packages that are specified with the
     explicit package version (<ver>) or as an archive or directory, will, in
     addition, have their versions held, that is, they will not be
     automatically upgraded.

     The \cb{pkg-build} command also supports several \cb{--*-only} options
     that allow you to limit the amount of work that will be done."
  }

  class pkg_build_options: configuration_options
  {
    "\h|PKG-BUILD OPTIONS|"

    bool --yes|-y
    {
      "Assume the answer to all prompts is \cb{yes}."
    }

    bool --configure-only|-c
    {
      "Configure all the packages but don't update."
    }

    bool --print-only|-p
    {
      "Print to \cb{STDOUT} what would be done without actually doing
       anything."
    }
  };
}