aboutsummaryrefslogtreecommitdiff
path: root/bpkg/pkg-update.cli
blob: 9eb98b83c538a1b817963d1bfd01a623180e6072 (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
// file      : bpkg/pkg-update.cli
// copyright : Copyright (c) 2014-2019 Code Synthesis Ltd
// license   : MIT; see accompanying LICENSE file

include <bpkg/configuration.cli>;

"\section=1"
"\name=bpkg-pkg-update"
"\summary=update package"

namespace bpkg
{
  {
    "<options> <vars> <pkg>",

    "\h|SYNOPSIS|

     \c{\b{bpkg pkg-update}|\b{update} [<options>] [<vars>] <pkg>...\n
        \b{bpkg pkg-update}|\b{update} [<options>] [<vars>] \b{--all}|\b{-a}}

     \h|DESCRIPTION|

     The \cb{pkg-update} command updates the specified packages (the first
     form) or all the held packages (the second form, see
     \l{bpkg-pkg-status(1)}). Underneath, this command doesn't do much more
     than run \cb{b update} (or one of its \c{update-for-*} variants; see
     \cb{--for|-f}). In the first form the specified packages must have been
     previously configured with \l{bpkg-pkg-build(1)} or
     \l{bpkg-pkg-configure(1)}.

     Additional command line variables (<vars>, normally \cb{config.*}) can be
     passed to the build system. Such variables apply to all the specified
     packages but can also be specified to only apply to specific packages
     using the argument grouping mechanism (see \l{bpkg-argument-grouping(1)}
     for details)."
  }

  class pkg_update_options: configuration_options
  {
    "\h|PKG-UPDATE OPTIONS|"

    bool --all|-a
    {
      "Update all held packages."
    }

    string --for|-f
    {
      "<operation>",
      "Instead of the default \cb{update} build system operation, perform the
       \cb{update-for-}<operation> variant where <operation> is normally
       \cb{install} or \cb{test}."
    }
  };
}