Debhelper is a collection of programs that can be used in debian/rules files
to automate common tasks related to building debian binary packages. For 
further documentation, see the man pages for dh_* commands. For an overview 
of debhelper, see the debhelper man page.

To help you get started, I've included examples of debian/rules files
that use debhelper commands extensively. See /usr/doc/debhelper/examples/ . 
These files are also useful as they give one good order you can run the 
various debhelper scripts in (though other variations are possible).

Starting a new package:
----------------------

You can just use the example rules files and do the rest of the new package
set up by hand, or you could try the new dh-make package, which contains a
"dh_make" command that is similar to debmake, and tries to automate the
process.

Converting from debstd to debhelper:
-----------------------------------

See the file "from-debstd" for documentation on how to do this.

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.

All scripts that automatically generate code in this way let it be disabled
by the -n parameter.

Note that it 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 is one way to
do that (note the tricky use of backquotes):

print << `EOF`
#DEBHELPER#
EOF

Other notes:
-----------

Note that if you are generating a debian package that has arch-indep and
arch-dependant 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-dependant package is being built (for ports
to other architectures). I handle this in debian/rules.multi by calling
dh_movefiles in the install target.

Debhelper's home page is at http://kitenet.net/programs/debhelper/

-- Joey Hess <joeyh@master.debian.org>
