X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=debhelper.pod;h=480db344fd4104748258127a9c2e0b30421faeff;hb=30db799db6c5d66e635f03e74edc4b78215e9edd;hp=76ee5eb6b8dcc5759a217dcf76b3496fd8effeb9;hpb=1153ddb381f7e854b125791a5ff9be6b81d87cc3;p=debhelper.git diff --git a/debhelper.pod b/debhelper.pod index 76ee5eb..480db34 100644 --- a/debhelper.pod +++ b/debhelper.pod @@ -17,9 +17,8 @@ policy changes, and packages that use them will require only a rebuild to comply with the new policy. A typical debian/rules file that uses debhelper will call several debhelper -commands in sequence. Debhelper commands are all named with a "dh_" prefix. -Examples of rules files that use debhelper are in -F +commands in sequence, or use L to automate this process. Examples of +rules files that use debhelper are in F To create a new debian package using debhelper, you can just copy one of the sample rules files and edit it by hand. Or you can try the dh-make @@ -64,7 +63,8 @@ file can be found. In some rare cases, you may want to have different versions of these files for different architectures. If files named debian/package.foo.arch -exist, where "arch" is the same as the output of "dpkg --print-architecture", +exist, where "arch" is the same as the output of +"dpkg-architecture -qDEB_HOST_ARCH", then they will be used in preference to other, more general files. In many cases, these config files are used to specify various types of @@ -118,6 +118,16 @@ are not architecture independent. Do not act on the specified package even if an -a, -i, or -p option lists the package as one that should be acted on. +=item B<--ignore=>I + +Ignore the specified file. This can be used if debian/ contains a debhelper +config file that a debhelper command should not act on. Note that +debian/compat, debian/control, and debian/changelog can't be ignored, but +then, there should never be a reason to ignore those files. + +For example, if upstream ships a debian/init that you don't want +dh_installinit to install, use --ignore=debian/init + =item B<-P>I, B<--tmpdir=>I Use "tmpdir" for package build directory. The default is debian/ @@ -173,9 +183,6 @@ B<-a>, B<-i>, B<-p>, and B<-s> parameters. These parameters are cumulative. If none are given, debhelper programs default to acting on all packages listed in the control file. -See F for an example of how to -use this in a package that generates multiple binary packages. - =head2 Automatic generation of debian install scripts Some debhelper commands will automatically generate parts of debian @@ -245,9 +252,16 @@ introduced. You tell debhelper which compatibility level it should use, and it modifies its behavior in various ways. Tell debhelper what compatibility level to use by writing a number to -debian/compat. For example, to turn on V4 mode: +debian/compat. For example, to turn on V7 mode: + + % echo 7 > debian/compat - % echo 4 > debian/compat +Unless otherwise indicated, all debhelper documentation assumes that you +are using the most recent compatibility level, and in most cases does not +indicate if the behavior is different in an earlier compatibility level, so +if you are not using the most recent compatibility level, you're advised to +read below for notes about what is different in earlier compatibility +levels. These are the available compatibility levels: @@ -290,10 +304,11 @@ Every file in etc/ is automatically flagged as a conffile by dh_installdeb. =back +This mode is deprecated. + =item V4 -This is the recommended mode of operation. It does everything V3 does, -plus: +Changes from V3 are: =over 8 @@ -320,7 +335,7 @@ dh_link will correct existing links to conform with policy. =item V5 -This mode is still under development. Its changes from V4 are: +Changes from V4 are: =over 8 @@ -337,6 +352,61 @@ symbols in, not the packages to take the symbols from. dh_installdocs skips installing empty files. +=item - + +dh_install errors out if wildcards expand to nothing. + +=back + +=item V6 + +Changes from V5 are: + +=over 8 + +=item - + +Commands that generate maintainer script fragements will order the +fragements in reverse order for the prerm and postrm scripts. + +=item - + +dh_installwm will install a slave manpage link for x-window-manager.1.gz, +if it sees the man page in usr/share/man/man1 in the package build +directory. + +=item - + +dh_builddeb did not previously delete everything matching +DH_ALWAYS_EXCLUDE, if it was set to a list of things to exclude, such as +"CVS:.svn:.git". Now it does. + +=item - + +dh_installman allows overwriting existing man pages in the package build +directory. In previous compatability levels it silently refuses to do this. + +=back + +=item V7 + +This is the recommended mode of operation. + +Changes from V6 are: + +=over 8 + +=item - + +dh_install, if --sourcedir is not specified, will first look for files in +debian/tmp, and then will look in the current directory. This allows +dh_install to interoperate with dh_auto_install without needing any special +parameters. + +=item - + +dh_clean will read debian/clean and delete files listed there. + =back =back @@ -373,9 +443,9 @@ Once your package uses debhelper to build, be sure to add debhelper to your Build-Depends line in debian/control. You should build-depend on a version of debhelper equal to (or greater than) the debhelper compatibility level your package uses. So if your package used -compatibility level 4: +compatibility level 7: - Build-Depends: debhelper (>= 4) + Build-Depends: debhelper (>= 7) =head1 ENVIRONMENT @@ -429,7 +499,7 @@ DH_ALWAYS_EXCLUDE=CVS:.svn A set of example debian/rules files that use debhelper. -=item L +=item L Debhelper web site.