From 26a2f3a6c485d7fdb6f11f106978eb6ca84af5f9 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Sat, 3 Mar 2018 11:20:07 +0200 Subject: Document new pkg-build functionality --- bpkg/pkg-build.cli | 52 +++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 39 insertions(+), 13 deletions(-) (limited to 'bpkg/pkg-build.cli') diff --git a/bpkg/pkg-build.cli b/bpkg/pkg-build.cli index 042ece6..133e0a9 100644 --- a/bpkg/pkg-build.cli +++ b/bpkg/pkg-build.cli @@ -11,12 +11,14 @@ include ; namespace bpkg { { - " ", + " ", "\h|SYNOPSIS| - \c{\b{bpkg pkg-build}|\b{build} [] ([:][/] | - | /)...} + \c{\b{bpkg pkg-build}|\b{build} [] ( | [\b{@}] | | /)...} + + \c{ = [\b{:}][\b{/}][\b{,}...\b{@}]}\n + \c{ = [\b{?}]\b{sys}} \h|DESCRIPTION| @@ -26,11 +28,35 @@ namespace bpkg Each package can be specified as just the name () with optional package version () in which case the source code for the package - will be automatically fetched from one of the repositories. See the - \l{bpkg-rep-add(1)} and \l{bpkg-rep-fetch(1)} commands for more - information on package repositories. If is not specified, then the - latest available version will be fetched. To downgrade, the desired - version must be specified explicitly. + will be automatically fetched from one of the configured + repositories. See the \l{bpkg-rep-add(1)} and \l{bpkg-rep-fetch(1)} + commands for more information on package repositories. If is not + specified, then the latest available version will be built. To downgrade, + the desired version must be specified explicitly. For example: + + \ + bpkg build foo libfoo/1.2.3 + \ + + Alternatively, the package repository () can be specified as + part of the build command. In this case, if is not specified, then + the latest available from this repository version will be built. For + example: + + \ + bpkg build foo,libfoo/1.2.3@https://git.example.org/foo.git#master + \ + + If only the location is specified, then the latest versions of all the + packages available directly from this repository will be built (note that + this does not include packages available from complement repositories). + The \cb{@} delimiter can be omitted if the location is a URL. For + example: + + \ + bpkg build https://git.example.org/foo.git#master + bpkg build @/path/to/repository/ + \ A package name () can also be prefixed with a package scheme (:). Currently the only recognized scheme is \cb{sys:} which @@ -43,11 +69,11 @@ namespace bpkg is required by other packages being built. In this case you can use the \cb{?sys:} system scheme variant. - Alternatively, a package can be specified as either the path to the - package archive () or to the package directory (/; note that - it must end with a directory separator). See the \l{bpkg-pkg-fetch(1)} - and \l{bpkg-pkg-unpack(1)} commands for more information on the semantics - of specifying the package as an archive or a directory. + Finally, a package can be specified as either the path to the package + archive () or to the package directory (\cb{/}; note that it + must end with a directory separator). See the \l{bpkg-pkg-fetch(1)} and + \l{bpkg-pkg-unpack(1)} commands for more information on the semantics of + specifying the package as an archive or a 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 -- cgit v1.1