aboutsummaryrefslogtreecommitdiff
path: root/bpkg/buildfile
blob: b47417adf0122dfcfe8d65a29a1169d3ff3fab36 (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
# file      : bpkg/buildfile
# copyright : Copyright (c) 2014-2015 Code Synthesis Ltd
# license   : MIT; see accompanying LICENSE file

using cli

import libs  = libbpkg%lib{bpkg}
import libs += libbutl%lib{butl}
import libs += libodb%lib{odb}
import libs += libodb-sqlite%lib{odb-sqlite}

exe{bpkg}: cxx{package package-odb database diagnostics utility} \
                  cli.cxx{common-options} cxx{types-parsers}     \
  cxx{bpkg}       cli.cxx{bpkg-options}                          \
  cxx{help}       cli.cxx{help-options}                          \
  cxx{pkg-verify} cli.cxx{pkg-verify-options}                    \
  cxx{pkg-fetch}  cli.cxx{pkg-fetch-options}                     \
  cxx{pkg-unpack} cli.cxx{pkg-unpack-options}                    \
  cxx{cfg-create} cli.cxx{cfg-create-options}                    \
  cxx{rep-create} cli.cxx{rep-create-options}                    \
  $libs

cli.options += -I $src_root --include-with-brackets --include-prefix bpkg \
--guard-prefix BPKG --cxx-prologue "#include <bpkg/types-parsers>"        \
--cli-namespace bpkg::cli --generate-file-scanner --generate-specifier    \
--generate-parse --long-usage --exclude-base

# Option length must be the same to get commands/topics/options lists
# aligned in the general help.
#
cli.cxx{common-options}: cli{common-options}
cli.cxx{common-options}: cli.options += --option-length 22 --short-usage

cli.cxx{bpkg-options}: cli{bpkg-options}
cli.cxx{bpkg-options}: cli.options += --option-length 22 --short-usage

cli.cxx{help-options}: cli{help-options}

cli.cxx{pkg-verify-options}: cli{pkg-verify-options}
cli.cxx{pkg-fetch-options}:  cli{pkg-fetch-options}
cli.cxx{pkg-unpack-options}: cli{pkg-unpack-options}
cli.cxx{cfg-create-options}: cli{cfg-create-options}
cli.cxx{rep-create-options}: cli{rep-create-options}