&dhemail;
&dhfirstname;
&dhsurname;
gbp-buildpackage
&dhsection;
git-buildpackagegbp-buildpackageBuild Debian packages from a Git repository
&gbp-buildpackage;
[auto|on|off]=COLOR_SCHEME[auto|on|off]TREEISHBRANCH_NAMEBUILD_CMDCLEAN_CMDDISTARCHGPG-KEYIDCOMMANDCOMMANDCOMMANDCOMMANDtag-formattag-formattag-msg-format[TAG|BRANCH|TREEISH]DIRECTORYTYPELEVELDIRECTORYTREEISHDESCRIPTION
&gbp-buildpackage; is used to build Debian source and .deb packages from
a &git; repository.
&gbp-buildpackage; will, in order:
Verify that it is being executed from the proper location.
Verify that the repository doesn't contain any uncommitted source
changes.
Verify that it is being executed from the correct branch.
(Optionally) export the source tree to a separate build area
Build an orig tarball if it doesn't exist.
Call debuild(1) (or the application
specified via ) with arguments
instructing it to ignore &git; meta-data in the diff.gz, passing along
all arguments given to &gbp-buildpackage; that don't start with --git-.
(Optionally) tag the tree after a successful build
(Optionally) call a post build hook - e.g. to run &lintian;
(Optionally) call a post tag hook - e.g. to push the results to a
remote repository after creating the tag
OPTIONS
Don't abort if there are uncommitted changes in the source tree or
the current branch doesn't match the
DEBIAN-BRANCH.
Add a git tag after a successful build.
Use BUILD_CMD instead of
debuild -i -I
Use CLEAN_CMD instead of
debuild clean
Build package using git-pbuilder. Note that this
overwrites any and
options.
Build package using git-pbuilder with
qemubuilder. Note that this overwrites any
and
options.
Build for distribution DIST when using
--git-pbuilder. If unset build for the unstable
distribution.
Build for architecture ARCH when using
--git-pbuilder. If unset no architecture is passed
to git-pbuilder.
Whether to try to autoconfigure git-pbuilder or to
rely on the settings in .pbuilderrc. See the
git-pbuilder manpage for details.
Options to pass to pbuilder
verbose execution
[auto|on|off]
Whether to use colored output.
[auto|on|off]
Whether to send a desktop notification after the build.
=COLOR_SCHEME
Colors to use in output (when color is enabled). The format for
COLOR_SCHEME is
'<debug>:<info>:<warning>:<error>'.
Numerical values and color names are accepted, empty fields imply
the default color. For example --git-color-scheme='cyan:34::' would
show debug messages in cyan, info messages in blue and other messages
in default (i.e. warning and error messages in red).
=BRANCH_NAME
Branch to build the orig tarball from if
is set to
BRANCH. Default is
upstream.
=BRANCH_NAME
If you're not on this branch when invoking &gbp-buildpackage; it will
fail. Default is master. This is done to
make sure you don't accidentally release from a topic branch. Not
being on this branch will be ignored when using
.
Don't check if the current branch matches
DEBIAN-BRANCH.
GPG sign all created tags
Include git submodules in the orig tarball.
GPG-KEYID
use this keyid for gpg signing tags
COMMAND
excecute COMMAND after tagging a new
version.
Exported environment variables are: GBP_TAG (the name
of the generated tag), GBP_BRANCH (the branch the
package was build from) and GBP_SHA1 (the sha1 of the
commit the tag was created at).
COMMAND
execute COMMAND after successful
build.
Exported environment variables are: GBP_CHANGES_FILE
(the name of the generated changes file),
GBP_BUILD_DIR (the build dir).
COMMAND
execute COMMAND after exporting the source
tree - valid only if --git-export-dir has been specified.
Exported environment variables are: GBP_GIT_DIR (the
repository the package is being built from),
GBP_TMP_DIR (the temporary directory where the sources
have been initially exported).
COMMAND
execute COMMAND from the build directory
before calling debuild or the application
specified via .
Exported environment variables are: GBP_GIT_DIR (the
repository the package is being built from),
GBP_BUILD_DIR (the build dir).
Enable running all (cleaner, postexport, prebuild, postbuild, and
posttag) hooks. Note: the command is
not affected by this option.
TAG-FORMAT
use this tag format when tagging Debian versions, default is
debian/%(version)sTAG-FORMAT
use this tag format when looking for tags of upstream versions,
default is upstream/%(version)s.
tag-msg-formatuse this tag message format when signing Debian versions,
default is %(pkg)s Debian release %(version)s
Force creation of an orig tarball (overwriting a pre-existing one if
present)
Don't try to create any orig tarball
Extract orig tarball when using export-dir option (analog to
mergeWithUpstream in svn-bp)
DIRECTORY
Export the current branch head (or the treeish object given via
to DIRECTORY
before building.
TREEISH
Instead of exporting the current branch head, export the treeish
object TREEISH. The special name
INDEX exports the current index whereas
the special name WC exports the current
working copy as is.
[TAG|BRANCH|TREEISH]
How to find the upstream sources used to generate the tarball.
TAG looks at a tag corresponding to the
version in the changelog. BRANCH looks at
the upstream branch given via the
option. Other values are
interpreted as treeishs.
This doesn't have any effect if
is being used.
DIRECTORY
Search for original tarballs in DIRECTORY
instead of generating them
TYPE
Specifies the upstream tarball compression type. This will be used to
locate and build the upstream tarball if necessary. The default is
auto which derives the compression type
from the pristine-tar branch if available and falls back to gzip
otherwise. Other options are gzip,
bzip2, lzma and
xz.
LEVEL
Specifies the upstream tarball compression level if an upstream
tarball needs to be built.
Purge (remove) temporary build directory after build
Deprecated, use --git-no-purge instead.
don't build, only tag and run post-tag hooks
don't fail tag operations if a tag with the same version already
exists
Use pristine-tar when generating the upstream tarball if it doesn't
exist.
Commit the pristine-tar delta to the pristine-tar branch if a new
tarball was generated and the pristine-tar data isn't already there.
EXAMPLES
Build a Debian package using &git-pbuilder; which in turn invokes
&cowbuildercmd;. Instruct cowbuilder to build within a Wheezy chroot for
i386.
&gbp-buildpackage; --git-pbuilder --git-arch=i386 --git-dist=wheezy
Note that the above needs a &cowbuildercmd; chroot already. This can be
created using:
DIST=wheezy ARCH=i386 &git-pbuilder; create
&man.gbp.config-files;
All options in the config files are specified without the 'git-' prefix.
SEE ALSO,
,
,
,
git-pbuilder1,
cowbuilder8,
,
&man.seealso.common;
AUTHOR
&dhusername; &dhemail;