1bdep-projects-configs(1)    General Commands Manual   bdep-projects-configs(1)
2
3
4

NAME

6       bdep-projects-configs - specifying projects and configurations
7

SYNOPSIS

9       bdep command [pkg-spec] [cfg-spec] ...
10
11       cfg-spec = (@cfg-name | --config|-c cfg-dir)... | --all|-a
12       pkg-spec = (--directory|-d pkg-dir)... | prj-spec
13       prj-spec = --directory|-d prj-dir
14

DESCRIPTION

16       Most bdep commands operate on a project or some of its packages as well
17       as its build configurations. For example, status (bdep-status(1)) shows
18       the status of one or more project packages in one or more build config‐
19       urations. While fetch (bdep-fetch(1)) fetches the list of available  to
20       the project dependency packages, again, in one or more build configura‐
21       tions.
22
23       Without any  --directory|-d  options  specified,  the  current  working
24       directory is assumed to be either the project root directory, the pack‐
25       age root directory, or one of the package subdirectories. This  is  the
26       common  bdep  usage  mode  where  you run it from within your project's
27       source code directories, similar  to  version  control  tools  such  as
28       git(1).
29
30       Alternatively,  the  project  or  (several)  package directories can be
31       specified with the --directory|-d options. Note that bdep operates on a
32       single  project  but  potentially  multiple  packages belonging to said
33       project at a time.
34
35       Some bdep commands, such as fetch, operate on the  whole  project.   If
36       such  a  command  is  given  a package directory (either as the working
37       directory or with --directory|-d), then it automatically determines its
38       project directory and uses that.
39
40       Other  commands,  such  as  status, operate on one or more packages. If
41       such a command is given a  project  directory,  then  it  automatically
42       determines  the  list  of  packages  belonging to this project and uses
43       that. Note that what exactly belonging means is  command-specific.  For
44       most  commands  it  means all the packages initialized in a given build
45       configuration. For init (bdep-init(1)), however, it means all the pack‐
46       ages available in the project (for example, as listed in packages.mani‐
47       fest).
48
49       A project managed by bdep has one or more associated  build  configura‐
50       tions (see bdep-config(1) for details). One of these configurations can
51       be designated as the default and used if no configuration is  specified
52       explicitly.  So,  for  example, running status without any arguments in
53       the project directory will show the status of all the project  packages
54       initialized in the default configuration.
55
56       An  associated build configuration can be assigned a name in which case
57       we can specify it using the @cfg-name notation. For example:
58
59       $ bdep status @gcc @clang
60
61       A configuration without a name can be specified as  a  directory  using
62       the --config|-c option. Name and directory specifications can be mixed.
63       For example:
64
65       $ bdep status @gcc -c ../builds/clang
66
67       Finally, we can use the --all|-a option to specify all the  build  con‐
68       figurations associated with the project.
69

BUGS

71       Send bug reports to the users@build2.org mailing list.
72
74       Copyright (c) 2014-2020 the build2 authors.
75
76       Permission  is  granted to copy, distribute and/or modify this document
77       under the terms of the MIT License.
78
79
80
81bdep 0.13.0                        July 2020          bdep-projects-configs(1)
Impressum