dh_components(1)
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.