]> git.donarmstrong.com Git - debhelper.git/blob - debhelper.1
r275: No idea.
[debhelper.git] / debhelper.1
1 .TH DEBHELPER 1 "" "Debhelper Commands" "Debhelper Commands"
2 .SH NAME
3 debhelper \- overview of the debhelper commands
4 .SH SYNOPSIS
5 .B dh_*
6 .I "[-v] [-a] [-i] [-s] [--no-act] [-ppackage] [-Npackage] [-Ptmpdir]"
7 .SH "DESCRIPTION"
8 Debhelper is a collection of programs that can be used in debian/rules files
9 to automate common tasks related to building debian binary packages. All the
10 debhelper commands accept a set of options, and this man page is here to
11 document those options and to document debhelper as a whole. For additional 
12 options, and documentation for each individual command, see the commands' own
13 man pages.
14 .SH "SHARED DEBHLPER OPTIONS"
15 The following command line options are supported by all debhelper programs.
16 .TP
17 .B \-v, \--verbose
18 Verbose mode: show all commands that modify the package build directory.
19 .TP
20 .B \--no-act
21 Do not really do anything. If used with -v, the result is that the command
22 will output a list of what it would have done.
23 .TP
24 .B \-a, \--arch
25 Act on all architecture dependent packages.
26 .TP
27 .B \-i, \--indep
28 Act on all architecture independent packages.
29 .TP
30 .B \-ppackage, \--package=package
31 Act on the package named "package".
32 .TP
33 .B \-s, \--same-arch
34 This is a smarter version of the -a flag, that is used in some rare
35 circumstances. It understands that if the control file lists "Architecture: i386"
36 for the package, the package should not be acted on on other architectures. So
37 this flag makes the command act on all "Architecture: any" packages, as well
38 as on any packages that have the current architecture explicitly specified.
39 Constrast to the -a flag, which makes the command work on all packages that
40 are not architecture independant.
41 .TP
42 .B \-Npackage, \--no-package=package
43 Do not act on the specified package even if an -a, -i, or -p option lists
44 the package as one that should be acted on.
45 .TP
46 .B \-Ptmpdir, \--tmpdir=tmpdir
47 Use "tmpdir" for package build directory. 
48 .SH "COMMON DEBHELPER OPTIONS"
49 The following command line options are supported by some debhelper programs.
50 See the man page of each program for a complete explination of what the
51 option does.
52 .TP
53 .B \-n
54 Do not modify postinst/postrm/etc scripts.
55 .TP
56 .B \-Xitem, \--exclude=item
57 Exclude an item from processing.
58 .TP
59 .B \-A, \-all
60 Makes files or other items that are specified on the command line take effect
61 in ALL packages acted on, not just the first.
62 .SH NOTES
63 .TP
64 .B Multiple binary package support
65 .RS
66 If your source package generates more than one binary package, debhelper
67 programs will default to acting on all binary packages when run. If your
68 source package happens to generate one architecture dependent package, and
69 another architecture independent package, this is not the correct behavior,
70 because you need to generate the architecture dependent packages in the
71 binary-arch debian/rules target, and the architecture independent packages
72 in the binary-indep debian/rules target.
73
74 To facilitate this, as well as give you more control over which packages
75 are acted on by debhelper programs, all debhelper programs accept the 
76 .B -a
77 ,
78 .B -i
79 ,
80 .B -p
81 , and
82 .B -s
83 parameters. These parameters are cumulative. If none are given,
84 debhelper programs default to acting on all packages listed in the control
85 file.
86 .P
87 See
88 .BR /usr/share/doc/debhelper/examples/rules.multi
89 for an example of how to use this.
90 .RE
91 .TP
92 .B Package build directories
93 .RS
94 By default, all debhelper programs assume that the temporary directory used
95 for assembling the tree of files in a package is debian/tmp for the first
96 package listed in debian/control, and debian/<packagename> for each
97 additional package. If DH_COMPAT=2, debian/<packagename> is always used,
98 even for the first package.
99 .P
100 Sometimes, you might want to use some other temporary directory. This is
101 supported by the
102 .B -P
103 flag. For example, "dh_installdocs -Pdebian/tmp", will use debian/tmp as the
104 temporary directory. Note that if you use -P, the debhelper programs can only
105 be acting on a single package at a time. So if you have a package that builds
106 many binary packages, you will need to use the -p flag to specify which
107 binary package the debhelper program will act on.
108 .RE
109 .TP
110 .B Other notes
111 In general, if any debhelper program needs a directory to exist under
112 debian/, it will create it. I haven't bothered to document this in all the
113 man pages, but for example, dh_installdeb knows to make debian/<foo>/DEBIAN/
114 before trying to put files there, dh_installmenu knows you need a
115 debian/<foo>/usr/lib/menu/ before installing the menu files, etc.
116 .SH "DEBHELPER COMMANDS"
117 Here is the complete list of available debhelper commands.
118 #LIST#
119 .SH ENVIRONMENT
120 .TP
121 .I DH_VERBOSE
122 Enables verbose mode.
123 .TP
124 .I DH_COMPAT
125 Specifies what compatability level debhelper should run at. The default is 1,
126 which makes debhelper behave in a manner compatable with the 1.x series of
127 debhelper. If set to 2, debhelper's behavior will change to use the new
128 features of the 2.x series. Use this with caution, as the 2.x series makes
129 major changes that will break most packages. For documentation on these
130 changes, read /usr/share/doc/debhelper/v2
131 .TP
132 .I DH_NO_ACT
133 Enables no-act mode.
134 .TP
135 .I DH_OPTIONS
136 Anything in this variable will be prepended to the command line
137 arguments of all debhelper commands. This in useful in some situations,
138 for example, if you need to pass -p to all debhelper commands that will be
139 run. If you use DH_OPTIONS, be sure to use "dh_testversion 1.1.17" - older
140 debhelpers will ignore it and do things you don't want them to. One very
141 good way to set DH_OPTIONS is by using "Target-specific Variable Values" in
142 your debian/rules file. See the make documentation for details on doing this.
143 .SH "SEE ALSO"
144 .TP
145 .BR /usr/share/doc/debhelper/README
146 An introduction to debhelper.
147 .TP
148 .BR /usr/share/doc/debhelper/examples/
149 A set of example debian/rules files that use debhelper.
150 .TP
151 .BR http://kitenet.net/programs/debhelper/
152 Debhelper web site.
153 .SH AUTHOR
154 Joey Hess <joeyh@master.debian.org>