NAME
dh_components - build additional components
SYNOPSIS
dh_components [debhelper options] [--components comp[,comp,...]] [--build_stages stage[,stage,...]] [--rules_locations dir[,dir,...]]
DESCRIPTION
"dh_components" is a debhelper program that is responsible for handling additional components that come from separate upstream sources. The aim is to turn each component into a "mini Debian package". It takes the following actions:
- Run through the various build stages for each package and component.
- Optionally stitch together the Debian copyright files.
- Generate the "substvar" file from the component control files.
- Purge the components working directory (unless the --no-purge option is set).
FILES
- debian/package.components
- debian/components
-
These directories contain all the component data for a given binary package. The second form only works for the first binary in a source package and is overridden by the equivalent first form.
- debian/[package.]components/component
-
This is a directory that contains the files specific to that component. In some ways it is like a cut-down version of the debian directory.
- debian/[package.]components/component
- debian/[package.]components/
- /usr/share/pkg-components/build_stages
-
These are the default locations of the build stage scripts in the order of precedence with highest first. These can be overridden using the
"--rules_locations".
- debian/[package.]components/copyright.in
-
This file provides the DEP-5 copyright stanzas for the package but without any of the component stanzas. It forms the basis for the package.copyright file.
- debian/[package.]components/component/copyright
-
This file provides a DEP-5 fragment of the Debian copyright for this component. It will be merged into the main copyright file at package.copyright. Any duplicate
"License"clauses will be shown only once.
- debian/[package.]components/component/control
-
If present this file should look like a Debian control file for the component. The package name of the binary stanza should match the component name. The
"Depends","Recommends","Suggests","Enhances","Replaces","Pre-Depends","Conflicts","Breaks"fields are read and turned into substitution variables. So if you have a component"X"which declares a Depends on"Y", then a substvar variable"X:Depends"will be created with the value"Y". The source package stanza is ignored but can be used to document which build dependencies are due to the component.
OPTIONS
- --build_stages b1,b2,...
-
If this option is listed the sequence described will be used instead of the normal one.
- --components c1,c2,...
-
If this option is listed only those components listed will be considered.
- --rules_locations r1,r2,...
-
If this option is listed the specified locations will be used instead of the default ones. One can use
"%"to mean the component. Thus to explicitly specify the default one would set:--rules_locations debian/components/%,debian/components,/usr/share/pkg-components/build_stages
CONFIGURATION
To enable this functionality it is necessary to pass the argument "--with components" to the "dh" programa in the "debian/rules" file.
SEE ALSO
This program is used with debhelper.
AUTHOR
Nicholas Bamber <[email protected]>