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

include <bpkg/configuration.cli>;

"\section=1"
"\name=bpkg-pkg-unpack"
"\summary=unpack package archive"

/*
"\h{SYNOPSIS}

bpkg pkg-unpack [<options>] <pkg>|(-e <dir>)"

"\h{DESCRIPTION}

The \cb{pkg-unpack} command unpacks the archive for the previously
fetched (\cb{pkg-fetch}) package. If the \cb{-e|--existing} option
is used, then instead of the package name, \cb{pkg-unpack} expects
a local path to the existing package source directory. In this case,
\cb{bpkg} will use the directory in place, without copying it to the
configuration or package cache directories. Also, unless the
\cb{-p|--purge} option is specified, \cb{bpkg} will not attempt to
remove this directory when the package is purged with the \cb{pkg-purge}
command.

If \cb{-e|--existing} is specified together with the \cb{-r|--replace}
option, then \cb{pkg-unpack} will replace the archive and/or source
directory of a package that is already in the \cb{unpacked} or
\cb{fetched} state."
*/

namespace bpkg
{
  class pkg_unpack_options: configuration_options
  {
    bool --existing|-e
    {
      "Treat the argument as an existing package directory path rather than
       package name to unpack."
    }

    bool --purge|-p
    {
      "Remove the existing package directory when the package is purged."
    }

    bool --replace|-r
    {
      "Replace the source directory if the package is already unpacked or
       fetched. Can only be specified together with \cb{-e|--existing}."
    }
  };
}