=back
+If a program's name starts with "dh_", and the program is not on the above
+list, then it is not part of the debhelper package, but it should still
+work like the other programs described on this page.
+
=head1 DEBHELPER CONFIG FILES
Many debhelper commands make use of files in F<debian/> to control what they
files are typically named debian/package.foo (where "package" of course,
is replaced with the package that is being acted on).
-For example,
-dh_installdocs uses files named debian/package.docs to list the documentation
-files it will install. See the man pages of individual commands for details
-about the names and formats of the files they use.
+For example, dh_installdocs uses files named debian/package.docs to list
+the documentation files it will install. See the man pages of individual
+commands for details about the names and formats of the files they use.
+Generally, these files will list files to act on, one file per line. Some
+programs in debhelper use pairs of files and destinations or slightly more
+complicated formats.
Note that if a package is the first (or only) binary package listed in
debian/control, debhelper will use debian/foo if no debian/package.foo
=head2 Automatic generation of debian install scripts
-Some debhelper commands will automatically generate parts of debian install
-scripts. If you want these automatically generated things included in your
-debian install scripts, then you need to add "#DEBHELPER#" to your scripts,
-in the place the code should be added. "#DEBHELPER#" will be replaced by
-any auto-generated code when you run dh_installdeb.
+Some debhelper commands will automatically generate parts of debian
+maintainer scripts. If you want these automatically generated things
+included in your existing debian maintainer scripts, then you need to add
+"#DEBHELPER#" to your scripts, in the place the code should be added.
+"#DEBHELPER#" will be replaced by any auto-generated code when you run
+dh_installdeb.
+
+If a script does not exist at all and debhelper needs to add something to
+it, then debhelper will create the complete script.
-All scripts that automatically generate code in this way let it be disabled
-by the -n parameter (see above).
+All debhelper commands that automatically generate code in this way let it
+be disabled by the -n parameter (see above).
Note that the inserted code will be shell code, so you cannot directly use
it in a perl script. If you would like to embed it into a perl script, here
=item -
-dh_installinit uses the new invoke-rc.d program in its generated maintainer
-scripts. (This may later be rolled back into V3).
-
-=item -
-
You are encouraged to put the new ${misc:Depends} into debian/control to
-suppliment the ${shlibs:Depends} field. In particular, the new
-dh_installinit feature needs a versioned dependency on sysvinit.
+suppliment the ${shlibs:Depends} field.
=item -
before trying to put files there, dh_installmenu knows you need a
debian/<package>/usr/lib/menu/ before installing the menu files, etc.
-If you are generating a debian package that has arch-indep and
-arch-dependent portions, and you are using dh_movefiles to move the
-arch-indep files out of debian/tmp, you need to make sure that dh_movefiles
-does this even if only the arch-dependent package is being built (for
-ports to other architectures). I handle this in the example rules file
-"rules.multi" by calling dh_movefiles in the install target.
-
Once your package uses debhelper to build, be sure to add
-debhelper to your Build-Depends line in debian/control.
+debhelper to your Build-Depends line in debian/control. You should
+build-depend on a verson of debhelper equal to (or greater than) the
+debhelper compatability level your package uses. So if your package used
+compatability level 4:
+
+ Build-Depends: debhelper (>= 4)
=head1 ENVIRONMENT
DH_ALWAYS_EXCLUDE=CVS in debian/rules, to make it take effect wherever
your package is built.
+Multiple things to exclude can be separated with colons, as in
+DH_ALWAYS_EXCLUDE=CVS:.svn
+
=back
=head1 SEE ALSO
A set of example debian/rules files that use debhelper.
-=item http://kitenet.net/programs/debhelper/
+=item L<http://kitenet.net/programs/debhelper/>
Debhelper web site.