Reference

dbuild(1)

build Debian binary packages from source packages

NAME

dbuild, run-dbuild - build Debian binary packages from source packages

SYNOPSIS

dbuild[-u username|--username username] [-v|--verbose] [-V|--verbose-logs][-r root-command|--root root-command][-m address|--mail address]-k keyring.pgp|--keyring keyring.pgp]-u umask|--umask umask] [-f|--fix-for-frozen] [--mail-maintainer] [-s|--no-signatures] [--no-signature-checks] [-p|--check-pgppass] [-c|--check-configsite] [-C|--clean-fetched] [-a|--build-all] [--build-source] [-h|--help] source-file...

run-dbuild sourcedir

DESCRIPTION

dbuild builds Debian binary packages from Debian source packages. The arguments are either Debian .dsc files, or names of directories (dbuild will search for all .dsc files in those directories), or FTP or HTTP URL-addresses to them. Note that an FTP URL referring to a directory must end in a slash (/).

The system must have all tools necessary to build the packages installed. Debian source packages do not yet support source or build dependencies.

dbuild saves the log file from failed builds to the file FAILED/foo.message (where foo is the name and version of the package). Check that file to see why the package failed to build, and either fix problems in the build environment (e.g., missing build tools), or report a bug to the Debian bug system, if it is a problem with the package.

dbuild saves the log file from successful builds to the file OK/foo.message, and also copies the .dsc, .deb, and .changes files to the OK directory. The next run of dbuild will check these files (in FAILED and OK, and also in IGNORED) and skip packages that have already been built or that are known not to build. Remove these files (or just the relevant lines of these files) to make dbuild re-try the build.

run-dbuild is a script that runs dbuild and then builds a set of web pages that let people easily browse the build logs.

OPTIONS

These options apply to dbuild, not to run-dbuild.

-v, --verbose

Tell more about each step in the building process.

-V, --verbose-logs

Make the build logs contain more information.

-u foo, --username foo

The address (`foo') used as the maintainer address for dpkg-buildpackage.

-r root-command, --root root-command

Choose the command to gain root priviledges. Certain parts of the build process needs to be run as root. However, the fakeroot command can run other commands and make them think they're running as root. This is good enough for building Debian packages, even though the command doesn't actually give any root priviledges; this is the default. If you don't have fakeroot, you can use -r to use sudo instead, for example. Straight su won't work due to differences in argument passing.

-m addresss, --mail address

Set the address where build logs should be mailed.

-k keyring.pgp, --keyring keyring.pgp

Set the PGP keyring used to check package files. Default is /usr/doc/debian/debian-keyring.pgp.

-u umask, --umask umask

Set the umask for the process. Default is inherited from the parent process.

-f, --fix-for-frozen

Modify the debian/changelog file for the package to make uploads to go the frozen part of the distribution, in addition to whatever has been specified in the changelog already.

--mail-maintainer

Mail the build log to the maintainer. You probably shouldn't use this option.

-s, --no-signatures

Do not PGP sign the packages that have been built.

--no-signature-checks

Do not check the PGP signatures on the .dsc files. Use this option with extreme care.

-p, --check-pgppass

Check the PGPPASS environment variable and refuse to continue if it is not the correct PGP passphrase. Note that using PGPPASS can be a security hazard.

-c, --check-configsite

Check that the CONFIG_SITE environment variable is set. It can be used to speed up GNU autoconf generated configure scripts.

-C, --clean-fetched

Remove all files fetched via the network. This helps keep disk usage at a minimum.

-a, --build-all

Build even packages that are architecture independent, not just packages that need to be compiled on the platform dbuild is running on.

--build-source

Re-build source packages.

CONFIGURATION

dbuild can be configured by creating the file .dbuildrc in the home directory. It should be a shell script in /bin/sh syntax and may set the following variables (corresponding option given in parentheses): keyring (-k); rootcmd (-r); username (-u); mailto (-m); mail_maintainer (--mail-maintainer; value should be `yes' or `no'); sign_changes (-s); check_pgppass (-p); check_configsite (-c); verbose (-v; value should be `yes' or `no'); verobse_logs (-V; value should be `yes' or `no'); fix_for_frozen (-f; value should be `yes' or `no'); clean_fetched (-C; value should be `yes' or `no'); build_all (-a; value should be `yes' or `no');

BUGS

HTTP URLs that refer to directories are not yet implemented.

If a build fails after dpkg-buildpackage has been called, i.e., while log files and built packages are being moved to the OK subdirectory, dbuild will do stupid things. Fixing this requires a rewrite, which will happen fairly soon, hopefully.

AUTHOR

Lars Wirzenius ([email protected])