Package: devscripts
Version: 2.10.13
Source: devscripts

Synopsis:
It presently is not possible to use ccache, distcc, or other compiler
bootstrappers with debuild in an elegant way.

Rationale:
I have been using debuild for quite a while now, mainly because I know
that one of its goals is to sanitize the build environment. In any
case, I have interest in having it support a ccache or distcc
environment as elegantly as possible. What I have done here is provide
an additional CLI option that allows the user to prepend another
search location to the sanitized ${PATH}. Why I have chosen this route
is that it allows the packager to bypass a standard suite of compilers
in ${PATH} in favor of aliases, bootstrappers, job distributers, or
whatever else anyone can imagine. It's pretty implementation-agnostic.

I see this approach to being somewhat cleaner than providing explicit
support for ccache or distcc in debuild, as not doing this would
require debuild henceforth to follow ccache or distcc's environment
variable configuration rules. I'm sure none of you want to track the
specifics of their implementation. Plus, this is better than
explicitly overriding the ${PATH}, as one can do now to achieve this,
because this does not require the end-user to constantly track
debuild's implementation nor ${PATH} rules as the Linux FHS changes
over time.

An example of this use case would be:

/opt/build_tools_replacements contains replacement utilities that
override or replace make, cc, gcc, g++, ld, etc.

These tools are not to be used all the time by all persons for all
reasons; hence, they're not being in ${PATH}.

debuild --prepend-path /opt/build_tools_replacements

This makes it easy to augment debuild's standardized ${PATH} without
having to track debuild's internal override of ${PATH} in whatever
starts the build.

What are your thoughts?

I've attached a patch that I made from a SVN checkout of devscripts,
and---yes---the patch includes
modifications to the manual pages. ;-)

Cheers,

Matt
Index: debian/changelog
===================================================================
--- debian/changelog	(revision 902)
+++ debian/changelog	(working copy)
@@ -1,3 +1,10 @@
+devscripts (2.10.13ubuntu1) hardy; urgency=low
+
+  * Allow a user to prepend a location to PATH in debuild for reasons
+    of elegantly supporting ccache and distcc.
+
+ -- Matt T. Proud <[EMAIL PROTECTED]>  Sun, 13 Jan 2008 20:35:05 -0800
+
 devscripts (2.10.13) unstable; urgency=low
 
   * The 'we sponsor Adam for DM' upload
Index: scripts/debuild.pl
===================================================================
--- scripts/debuild.pl	(revision 902)
+++ scripts/debuild.pl	(working copy)
@@ -88,6 +88,9 @@
         --set-envvar=<envvar>=<value>, -e<envvar>=<value>
                                  Set environment variable <envvar> to <value>
 
+        --prepend-path=<value>
+                                 Prepend normalized PATH with <value>
+
         -d                       Skip checking of build dependencies
         -D                       Force checking of build dependencies (default)
 
@@ -170,6 +173,7 @@
 # Set default values before we start
 my $preserve_env=0;
 my %save_vars;
+my $prepend_path='';
 my $root_command='';
 my $run_lintian=1;
 my $run_linda=0;
@@ -529,6 +533,17 @@
 	    $check_dirname_regex = $1;
 	    next;
 	}
+	if ($arg eq '--prepend-path') {
+	    unless (defined ($opt = shift)) {
+		fatal "--prepend-path requires an argument,\nrun $progname --help for usage information";
+	    }
+	    $prepend_path = $opt;
+	    next
+	}
+	if ($arg =~ /^--prepend-path=(.*)$/) {
+	    $prepend_path = $1;
+	    next;
+	}
 	if ($arg =~ /^--no-?conf$/) {
 	    fatal "$arg is only acceptable as the first command-line option!";
 	}
@@ -576,6 +591,9 @@
 } else {
     $ENV{'PATH'} = "/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11"
 }
+if ($prepend_path ne '') {
+    $ENV{'PATH'} = join(':', $prepend_path, $ENV{'PATH'});
+}
 $save_vars{'PATH'}=1;
 $ENV{'TERM'}='dumb' unless exists $ENV{'TERM'};
 
Index: scripts/debuild.1
===================================================================
--- scripts/debuild.1	(revision 902)
+++ scripts/debuild.1	(working copy)
@@ -1,51 +1,51 @@
-.TH DEBUILD 1 "Debian Utilities" "DEBIAN" \" -*- nroff -*-
-.SH NAME
+.TH "DEBUILD" "1" "Debian Utilities" "DEBIAN" "\""
+.SH "NAME"
 debuild \- build a Debian package
-.SH SYNOPSIS
-\fBdebuild\fR [\fIdebuild options\fR] [\fIdpkg-buildpackage options\fR]
-[\fB\-\-lintian-opts\fR \fIlintian options\fR]
-[\fB\-\-linda-opts\fR \fIlinda options\fR]
-.br
+.SH "SYNOPSIS"
+\fBdebuild\fR [\fIdebuild options\fR] [\fIdpkg\-buildpackage options\fR]
+[\fB\-\-lintian\-opts\fR \fIlintian options\fR]
+[\fB\-\-linda\-opts\fR \fIlinda options\fR]
+.br 
 \fBdebuild\fR [\fIdebuild options\fR]
-\fBbinary\fR|\fBbinary-arch\fR|\fBbinary-indep\fR|\fBclean\fR ...
-.SH DESCRIPTION
+\fBbinary\fR|\fBbinary\-arch\fR|\fBbinary\-indep\fR|\fBclean\fR ...
+.SH "DESCRIPTION"
 \fBdebuild\fR creates all the files necessary for uploading a Debian
-package.  It first runs \fBdpkg-buildpackage\fR, then runs
+package.  It first runs \fBdpkg\-buildpackage\fR, then runs
 \fBlintian\fR and/or \fBlinda\fR on the \fI.changes\fR file created
 (assuming that \fBlintian\fR and/or \fBlinda\fR is installed), and
 finally signs the \fI.changes\fR and/or \fI.dsc\fR files as
 appropriate (using \fBdebsign\fR(1) to do this instead of
-\fBdpkg-buildpackage\fR(1) itself; all relevant key-signing options
-are passed on).  Parameters can be passed to \fBdpkg-buildpackage\fR,
+\fBdpkg\-buildpackage\fR(1) itself; all relevant key\-signing options
+are passed on).  Parameters can be passed to \fBdpkg\-buildpackage\fR,
 \fBlintian\fR and \fBlinda\fR, where the parameters to the latter are
-indicated with the \fB\-\-lintian-opts\fR and \fB\-\-linda-opts\fR
+indicated with the \fB\-\-lintian\-opts\fR and \fB\-\-linda\-opts\fR
 options respectively.  The allowable options in this case are
-\fB\-\-lintian\fR and \fB\-\-no-lintian\fR to force or skip the
+\fB\-\-lintian\fR and \fB\-\-no\-lintian\fR to force or skip the
 \fBlintian\fR step, respectively, and similarly \fB\-\-linda\fR and
-\fB\-\-no-linda\fR for \fBlinda\fR.  The default is to run
+\fB\-\-no\-linda\fR for \fBlinda\fR.  The default is to run
 \fBlintian\fR but not \fBlinda\fR.  There are also various options
 available for setting and preserving environment variables, as
 described below in the Environment Variables section.  In this method
 of running \fBdebuild\fR, we also save a build log to the
 file \fI../<package>_<version>_<arch>.build\fR.
-.PP
+.PP 
 An alternative way of using \fBdebuild\fR is to use one or more of the
-parameters \fBbinary\fR, \fBbinary-arch\fR, \fBbinary-indep\fR and
+parameters \fBbinary\fR, \fBbinary\-arch\fR, \fBbinary\-indep\fR and
 \fBclean\fR, in which case \fBdebuild\fR will attempt to gain root
 privileges and then run \fIdebian/rules\fR with the given parameters.
-A \fB\-\-rootcmd=\fIgain-root-command\fR or
-\fB\-r\fIgain-root-command\fR option may be used to specify a method
-of gaining root privileges.  The \fIgain-root-command\fR is likely to
+A \fB\-\-rootcmd=\fIgain\-root\-command\fR or
+\fB\-r\fIgain\-root\-command\fR option may be used to specify a method
+of gaining root privileges.  The \fIgain\-root\-command\fR is likely to
 be one of \fIfakeroot\fR, \fIsudo\fR or \fIsuper\fR.  See below for
 further discussion of this point.  Again, the environment preservation
 options may be used.  In this case, \fBdebuild\fR will also attempt to
-run \fBdpkg-checkbuilddeps\fR first; this can be explicitly requested
+run \fBdpkg\-checkbuilddeps\fR first; this can be explicitly requested
 or switched off using the options \fB\-D\fR and \fB\-d\fR
 respectively.  Note also that if either of these or a \fB\-r\fR option
 is specified in the configuration file option
 DEBUILD_DPKG_BUILDPACKAGE_OPTS, then it will be recognised even in
 this method of invocation of \fBdebuild\fR.
-.PP
+.PP 
 \fBdebuild\fR also reads the \fBdevscripts\fR configuration files as
 described below.  This allows default options to be given.
 .SH "Directory name checking"
@@ -58,73 +58,78 @@
 corresponds to the package name.  Precisely how it does this is
 controlled by two configuration file variables
 DEVSCRIPTS_CHECK_DIRNAME_LEVEL and DEVSCRIPTS_CHECK_DIRNAME_REGEX, and
-their corresponding command-line options \fB\-\-check-dirname-level\fR
-and \fB\-\-check-dirname-regex\fR.
-.PP
+their corresponding command\-line options \fB\-\-check\-dirname\-level\fR
+and \fB\-\-check\-dirname\-regex\fR.
+.PP 
 DEVSCRIPTS_CHECK_DIRNAME_LEVEL can take the following values:
-.TP
+.TP 
 .B 0
 Never check the directory name.
-.TP
+.TP 
 .B 1
 Only check the directory name if we have had to change directory in
 our search for \fIdebian/changelog\fR.  This is the default behaviour.
-.TP
+.TP 
 .B 2
 Always check the directory name.
-.PP
+.PP 
 The directory name is checked by testing whether the current directory
 name (as determined by \fBpwd\fR(1)) matches the regex given by the
 configuration file option DEVSCRIPTS_CHECK_DIRNAME_REGEX or by the
-command line option \fB\-\-check-dirname-regex\fR \fIregex\fR.  Here
+command line option \fB\-\-check\-dirname\-regex\fR \fIregex\fR.  Here
 \fIregex\fR is a Perl regex (see \fBperlre\fR(3perl)), which will be
 anchored at the beginning and the end.  If \fIregex\fR contains a '/',
 then it must match the full directory path.  If not, then it must
 match the full directory name.  If \fIregex\fR contains the string
 \'PACKAGE', this will be replaced by the source package name, as
 determined from the changelog.  The default value for the regex is:
-\'PACKAGE(-.*)?', thus matching directory names such as PACKAGE and
-PACKAGE-version.
-.SH ENVIRONMENT VARIABLES
+\'PACKAGE(\-.*)?', thus matching directory names such as PACKAGE and
+PACKAGE\-version.
+.SH "ENVIRONMENT VARIABLES"
 As environment variables can affect the building of a package, often
 unintentionally, \fBdebuild\fR sanitises the environment by removing
 all environment variables except for TERM, HOME, LOGNAME, GNUPGHOME,
 PGPPATH, GPG_AGENT_INFO, FAKEROOTKEY, DEB_* and the locale variables
 LANG and LC_*.  TERM is set to `dumb' if it is unset, and PATH is set
 to "/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11".
-.PP
+.PP 
 If a particular environment variable is required to be passed through
 untouched to the build process, this may be specified by using a
-\fB\-\-preserve-envvar\fR \fIenvvar\fR (which can also be written as
+\fB\-\-preserve\-envvar\fR \fIenvvar\fR (which can also be written as
 \fB\-e\fR \fIenvvar\fR option).  The environment may be left untouched
-by using the \fB\-\-preserve-env\fR option.  However, even in this
+by using the \fB\-\-preserve\-env\fR option.  However, even in this
 case, the PATH will be set to the sane value described above.  The
 \fBonly\fR way to prevent PATH from being reset is to specify a
-\fB\-\-preserve-envvar PATH\fR option.  But you are warned that using
-programs from non-standard locations can easily result in the package
+\fB\-\-preserve\-envvar PATH\fR option.  But you are warned that using
+programs from non\-standard locations can easily result in the package
 being broken, as it will not be able to be built on standard systems.
-.PP
+.PP 
+If you need to tactically inject an item into PATH, you may use 
+\fB\-\-prepend\-path\fR \fIpath\fR, as this will prepend a supplemental
+location to an otherwise\-pristine path. This is useful in cases where one
+wants to use ccache or distcc in conjunction with package building.
+.PP 
 It is also possible to avoid having to type something like
-\fIFOO\fB=\fIbar \fBdebuild -e \fIFOO\fR by writing \fBdebuild -e
-\fIFOO\fB=\fIbar\fR or the long form \fBdebuild --set-envvar
+\fIFOO\fB=\fIbar \fBdebuild \-e \fIFOO\fR by writing \fBdebuild \-e
+\fIFOO\fB=\fIbar\fR or the long form \fBdebuild \-\-set\-envvar
 \fIFOO\fB=\fIbar\fR.
 .SH "SUPERUSER REQUIREMENTS"
 \fBdebuild\fR needs to be run as superuser to function properly.
 There are three fundamentally different ways to do this.  The first,
-and preferable, method is to use some root-gaining command.  The best
+and preferable, method is to use some root\-gaining command.  The best
 one to use is probably \fBfakeroot\fR(1), since it does not involve
 granting any genuine privileges.  \fBsuper\fR(1) and \fBsudo\fR(1) are
 also possibilities.  If no \fB\-r\fR (or \fB\-\-rootcmd\fR) option is
-given (and recall that \fBdpkg-buildpackage\fR also accepts a \fB\-r\fR
+given (and recall that \fBdpkg\-buildpackage\fR also accepts a \fB\-r\fR
 option) and neither of the following methods is used, then
 \fB\-rfakeroot\fR will silently be assumed.
-.PP
+.PP 
 The second method is to use some command such as \fBsu\fR(1) to become
 root, and then to do everything as root.  Note, though, that
 \fBlintian\fR will abort if it is run as root or setuid root; this can
-be overcome using the \fB\-\-allow-root\fR option of \fBlintian\fR if
+be overcome using the \fB\-\-allow\-root\fR option of \fBlintian\fR if
 you know what you are doing.
-.PP
+.PP 
 The third possible method is to have \fBdebuild\fR installed as setuid
 root.  This is not the default method, and will have to be installed
 as such by the system administrator.  It must also be realised that
@@ -137,142 +142,145 @@
 option involving multiple copies of \fBdebuild\fR, or the use of
 programs such as \fBsudo\fR or \fBsuper\fR to grant root privileges to
 users selectively.  If the sysadmin wishes to do this, she should use
-the \fBdpkg-statoverride\fR program to change the permissions of
+the \fBdpkg\-statoverride\fR program to change the permissions of
 \fI/usr/bin/debuild\fR.  This will ensure that these permissions are
 preserved across upgrades.
-.SH HOOKS
+.SH "HOOKS"
 \fBdebuild\fR supports a number of hooks when running
 \fBdpkg\-buildpackage\fR.  The available hooks are as follows:
-.TP
-dpkg-buildpackage-hook
-Run before dpkg-buildpackage begins by calling dpkg-checkbuilddeps.
-.TP
-clean-hook
-Run before dpkg-buildpackage runs debian/rules clean to clean the
-source tree.  (Run even if the tree is not being cleaned because -nc
+.TP 
+dpkg\-buildpackage\-hook
+Run before dpkg\-buildpackage begins by calling dpkg\-checkbuilddeps.
+.TP 
+clean\-hook
+Run before dpkg\-buildpackage runs debian/rules clean to clean the
+source tree.  (Run even if the tree is not being cleaned because \-nc
 is used.)
-.TP
-dpkg-source-hook
-Run after cleaning the tree and before running dpkg-source.  (Run even
-if dpkg-source is not being called because -b or -B is used.)
-.TP
-dpkg-build-hook
-Run after dpkg-source and before calling debian/rules build.  (Run
-even if this is a source-only build, so debian/rules build is not
+.TP 
+dpkg\-source\-hook
+Run after cleaning the tree and before running dpkg\-source.  (Run even
+if dpkg\-source is not being called because \-b or \-B is used.)
+.TP 
+dpkg\-build\-hook
+Run after dpkg\-source and before calling debian/rules build.  (Run
+even if this is a source\-only build, so debian/rules build is not
 being called.)
-.TP
-dpkg-binary-hook
-Run between debian/rules build and debian/rules binary(-arch).  Run
+.TP 
+dpkg\-binary\-hook
+Run between debian/rules build and debian/rules binary(\-arch).  Run
 ONLY if a binary package is being built.
-.TP
-dpkg-genchanges-hook
+.TP 
+dpkg\-genchanges\-hook
 Run after the binary package is built and before calling
-dpkg-genchanges.
-.TP
-final-clean-hook
-Run after dpkg-genchanges and before the final debian/rules clean.
-(Run even if we are not cleaning the tree post-build, which is the
+dpkg\-genchanges.
+.TP 
+final\-clean\-hook
+Run after dpkg\-genchanges and before the final debian/rules clean.
+(Run even if we are not cleaning the tree post\-build, which is the
 default.)
-.TP
-lintian-hook
+.TP 
+lintian\-hook
 Run (once) before calling lintian and/or linda.  (Run even if we are
 not calling either.)
-.TP
-signing-hook
+.TP 
+signing\-hook
 Run after calling lintian and/or linda before any signing takes place.
 (Run even if we are not signing anything.)
-.TP
-post-dpkg-buildpackage-hook
+.TP 
+post\-dpkg\-buildpackage\-hook
 Run after everything has finished.
-.PP
+.PP 
 A hook command can be specified either in the configuration file as,
 for example, DEBUILD_SIGNING_HOOK='foo' (note the hyphens change into
-underscores!) or as a command line option \fB\-\-signing\-hook-foo\fR.
+underscores!) or as a command line option \fB\-\-signing\-hook\-foo\fR.
 The command will have certain percent substitutions made on it: %%
 will be replaced by a single % sign, %p will be replaced by the
 package name, %v by the package version number, %a will be 1 if the
 immediately following action is to be performed and 0 if not (for
-example, in the dpkg-source hook, %a will become 1 if dpkg-source is
+example, in the dpkg\-source hook, %a will become 1 if dpkg\-source is
 to be run and 0 if not).  Then it will be handed to the shell to deal
 with, so it can include redirections and stuff.  For example, to only
-run the dpkg-source hook if dpkg-source is to be run, the hook could
-be something like: "if [ %a -eq 1 ]; then ...; fi".
-.PP
+run the dpkg\-source hook if dpkg\-source is to be run, the hook could
+be something like: "if [ %a \-eq 1 ]; then ...; fi".
+.PP 
 \fBPlease take care with hooks\fR, as misuse of them can lead to
 packages which FTBFS (fail to build from source).  They can be useful
 for taking snapshots of things or the like.
-.PP
-Finally, only dpkg-buildpackage-hook and the hooks from lintian-hook
-onwards can be used if \fBdpkg-cross\fR is installed.  (This is
+.PP 
+Finally, only dpkg\-buildpackage\-hook and the hooks from lintian\-hook
+onwards can be used if \fBdpkg\-cross\fR is installed.  (This is
 because internally, \fBdebuild\fR reimplements
 \fBdpkg\-buildpackage\fR, but it does not attempt to reimplement the
 \fBdpkg\-cross\fR replacement of this script.)
 .SH "OPTIONS"
 For details, see above.
-.TP
-.B \-\-no-conf, \-\-noconf
+.TP 
+.B \-\-no\-conf, \-\-noconf
 Do not read any configuration files.  This can only be used as the
-first option given on the command-line.
-.TP
-.BI \-\-rootcmd= "gain-root-command, " \-r gain-root-command
+first option given on the command\-line.
+.TP 
+.BI \-\-rootcmd= "gain\-root\-command, " \-r gain\-root\-command
 Command to gain root (or fake root) privileges.
-.TP
+.TP 
 .B \-\-preserve\-env
 Do not clean the environment, except for PATH.
-.TP
+.TP 
 .BI \-\-preserve\-envvar= "var, " \-e var
 Do not clean the \fIvar\fR variable from the environment.
-.TP
+.TP 
 .BI \-\-set\-envvar= var = "value, " \-e var = value
 Set the environment variable \fIvar\fR to \fIvalue\fR and do not
 remove it from the environment.
-.TP
+.TP 
+.BI \-\-prepend\-path= path
+Prepend \fIpath\fR to PATH.
+.TP 
 .B \-\-lintian
-Run \fBlintian\fR after \fBdpkg-buildpackage\fR.  This is the default
+Run \fBlintian\fR after \fBdpkg\-buildpackage\fR.  This is the default
 behaviour, and it overrides any configuration file directive to the
 contrary.
-.TP
+.TP 
 .B \-\-no\-lintian
-Do not run \fBlintian\fR after \fBdpkg-buildpackage\fR.
-.TP
+Do not run \fBlintian\fR after \fBdpkg\-buildpackage\fR.
+.TP 
 .B \-\-linda
-Run \fBlinda\fR after \fBdpkg-buildpackage\fR.
-.TP
+Run \fBlinda\fR after \fBdpkg\-buildpackage\fR.
+.TP 
 .B \-\-no\-linda
-Do not run \fBlinda\fR after \fBdpkg-buildpackage\fR.  This is the
+Do not run \fBlinda\fR after \fBdpkg\-buildpackage\fR.  This is the
 default behaviour.
-.TP
+.TP 
 .B \-\-no\-tgz\-check
-Even if we're running \fBdpkg-buildpackage\fR and the version number
-has a Debian revision, do not check that the .orig.tar.gz file or .orig
+Even if we're running \fBdpkg\-buildpackage\fR and the version number
+has a Debian revision, do not check that the .orig.ta r.gz file or .orig
 directory exists before starting the build.
-.TP
+.TP 
 .B \-\-tgz\-check
-If we're running \fBdpkg-buildpackage\fR and the version number has a
-Debian revision, check that the .orig.tar.gz file or .orig directory
+If we're running \fBdpkg\-buildpackage\fR and the version number has a
+Debian revision, check that the .orig.ta r.gz file or .orig directory
 exists before starting the build.  This is the default behaviour.
-.TP
+.TP 
 \fB\-\-\fIfoo\fB\-hook\fR=\fIhook\fR
 Set a hook as described above.  If \fIhook\fR is blank, this unsets
 the hook.
-.TP
+.TP 
 \fB\-\-clear\-hooks\fR
 Clears all hooks.  They may be reinstated by later command line
 options.
-.TP
-\fB\-\-check-dirname-level\fR \fIN\fR
+.TP 
+\fB\-\-check\-dirname\-level\fR \fIN\fR
 See the above section "Directory name checking" for an explanation of
 this option.
-.TP
-\fB\-\-check-dirname-regex\fR \fIregex\fR
+.TP 
+\fB\-\-check\-dirname\-regex\fR \fIregex\fR
 See the above section "Directory name checking" for an explanation of
 this option.
-.TP
+.TP 
 \fB\-d\fR
-Do not run \fBdpkg-checkbuilddeps\fR to check build dependencies.
-.TP
+Do not run \fBdpkg\-checkbuilddeps\fR to check build dependencies.
+.TP 
 \fB\-D\fR
-Run \fBdpkg-checkbuilddeps\fR to check build dependencies.
+Run \fBdpkg\-checkbuilddeps\fR to check build dependencies.
 .SH "CONFIGURATION VARIABLES"
 The two configuration files \fI/etc/devscripts.conf\fR and
 \fI~/.devscripts\fR are sourced by a shell in that order to set
@@ -281,136 +289,136 @@
 \fB\-\-no\-conf\fR option can be used to prevent reading these files.
 Environment variable settings are ignored when these configuration
 files are read.  The currently recognised variables are:
-.TP
+.TP 
 .B DEBUILD_PRESERVE_ENV
 If this is set to \fIyes\fR, then it is the same as the
 \fB\-\-preserve\-env\fR command line parameter being used.
-.TP
+.TP 
 .B DEBUILD_PRESERVE_ENVVARS
 Which environment variables to preserve.  This should be a
-comma-separated list of variables.  This corresponds to using possibly
+comma\-separated list of variables.  This corresponds to using possibly
 multiple \fB\-\-preserve\-envvar\fR or \fB\-e\fR options.
-.TP
+.TP 
 .BI DEBUILD_SET_ENVVAR_ var = value
 This corresponds to \fB\-\-set\-envvar=\fIvar\fB=\fIvalue\fR.
-.TP
+.TP 
 .B DEBUILD_ROOTCMD
 Setting this variable to \fIprog\fR is the equivalent of
 \fB\-r\fIprog\fR.
-.TP
+.TP 
 .B DEBUILD_TGZ_CHECK
 Setting this variable to \fIno\fR is the same as the
 \fB\-\-no\-tgz\-check\fR command line option.
-.TP
+.TP 
 .B DEBUILD_DPKG_BUILDPACKAGE_OPTS
 These are options which should be passed to the invocation of
-\fBdpkg-buildpackage\fR.  They are given before any command-line
+\fBdpkg\-buildpackage\fR.  They are given before any command\-line
 options.  Due to issues of shell quoting, if a word containing spaces
 is required as a single option, extra quotes will be required.  For
 example, to ensure that your own GPG key is always used, even for
 sponsored uploads, the config file might contain the line:
-.IP
-.nf
-DEBUILD_DPKG_BUILDPACKAGE_OPTS="-k'Julian Gilbey <[EMAIL PROTECTED]>' -sa"
-.fi
-.IP
+.IP 
+.nf 
+DEBUILD_DPKG_BUILDPACKAGE_OPTS="\-k'Julian Gilbey <[EMAIL PROTECTED]>' \-sa"
+.fi 
+.IP 
 which gives precisely two options.  Without the extra single quotes,
-\fBdpkg-buildpackage\fR would reasonably complain that \fIGilbey\fR is
+\fBdpkg\-buildpackage\fR would reasonably complain that \fIGilbey\fR is
 an unrecognised option (it doesn't start with a `\-' sign).
-.IP
+.IP 
 Also, if this option contains any \fB\-r\fR, \fB\-d\fR or \fB\-D\fR
 options, these will always be taken account of by \fBdebuild\fR.  Note
 that a \fB\-r\fR option in this variable will override the setting in
 DEBUILD_ROOTCMD.
-.TP
+.TP 
 \fBDEBUILD_\fIFOO\fB_HOOK
 The hook variable for the \fIfoo\fR hook.  See the section on hooks
 above for more details.  By default, this is empty.
-.TP
+.TP 
 .B DEBUILD_LINTIAN
 Should we run \fBlintian\fR?  If this is set to \fIno\fR, then
 \fBlintian\fR will not be run.
-.TP
+.TP 
 .B DEBUILD_LINTIAN_OPTS
 These are options which should be passed to the invocation of
-\fBlintian\fR.  They are given before any command-line options, and
+\fBlintian\fR.  They are given before any command\-line options, and
 the usage of this variable is as described for the
 \fBDEBUILD_DPKG_BUILDPACKAGE_OPTS\fR variable.
-.TP
+.TP 
 .B DEBUILD_LINDA
 Should we run \fBlinda\fR?  If this is set to \fIyes\fR, then
 \fBlinda\fR will be run.
-.TP
+.TP 
 .B DEBUILD_LINDA_OPTS
 These are options which should be passed to the invocation of
-\fBlinda\fR.  They are given before any command-line options, and
+\fBlinda\fR.  They are given before any command\-line options, and
 the usage of this variable is as described for the
 \fBDEBUILD_DPKG_BUILDPACKAGE_OPTS\fR variable.
-.TP
+.TP 
 .BR DEVSCRIPTS_CHECK_DIRNAME_LEVEL ", " DEVSCRIPTS_CHECK_DIRNAME_REGEX
 See the above section "Directory name checking" for an explanation of
-these variables.  Note that these are package-wide configuration
+these variables.  Note that these are package\-wide configuration
 variables, and will therefore affect all \fBdevscripts\fR scripts
 which check their value, as described in their respective manpages and
 in \fBdevscripts.conf\fR(5).
-.SH EXAMPLES
+.SH "EXAMPLES"
 To build your own package, simply run \fBdebuild\fR from inside the
-source tree.  \fBdpkg-buildpackage\fR(1) options may be given on the
+source tree.  \fBdpkg\-buildpackage\fR(1) options may be given on the
 command line.
-.PP
+.PP 
 The typical command line options to build only the binary package(s)
-without signing the .changes file (or the non-existent .dsc file):
-.IP
-.nf
-debuild -i -us -uc -b
-.fi
-.PP
-Change the "-b" to "-S" to build only a source package.
-.PP
+without signing the .changes file (or the non\-existent .dsc file):
+.IP 
+.nf 
+debuild \-i \-us \-uc \-b
+.fi 
+.PP 
+Change the "\-b" to "\-S" to build only a source package.
+.PP 
 An example using both \fBlintian\fR and \fBlinda\fR to check the
 resulting packages, and also passing options to them both:
-.IP
-.nf
-debuild --linda -i -tc --lintian-opts -i --linda-opts -i
-.fi
-.PP
+.IP 
+.nf 
+debuild \-\-linda \-i \-tc \-\-lintian\-opts \-i \-\-linda\-opts \-i
+.fi 
+.PP 
 Note the order of options here: the \fBdebuild\fR options come first,
-then the \fBdpkg-buildpackage\fR ones, then finally the checker
+then the \fBdpkg\-buildpackage\fR ones, then finally the checker
 options.  (And \fBlintian\fR is called by default.)  If you find
-yourself using the same \fBdpkg-buildpackage\fR options repeatedly,
+yourself using the same \fBdpkg\-buildpackage\fR options repeatedly,
 consider using the DEBUILD_DPKG_BUILDPACKAGE_OPTS configuration file
 option as described above.
-.PP
+.PP 
 To build a package for a sponsored upload, given
-\fIfoobar_1.0-1.dsc\fR and the respective source files, run something
+\fIfoobar_1.0\-1.dsc\fR and the respective source files, run something
 like the following commands:
-.IP
-.nf
-dpkg-source -x foobar_1.0-1.dsc
-cd foobar-1.0
-debuild -k0x12345678
-.fi
-.PP
+.IP 
+.nf 
+dpkg\-source \-x foobar_1.0\-1.dsc
+cd foobar\-1.0
+debuild \-k0x12345678
+.fi 
+.PP 
 where 0x12345678 is replaced by your GPG key ID or other key
 identifier such as your email address.  Again, you could also use the
 DEBUILD_DPKG_BUILDPACKAGE_OPTS configuration file option as described
 above to avoid having to type the \fB\-k\fR option each time you do a
 sponsored upload.
 .SH "SEE ALSO"
-.BR dpkg-buildpackage (1),
-.BR dpkg-checkbuilddeps (1),
+.BR dpkg\-buildpackage (1),
+.BR dpkg\-checkbuilddeps (1),
 .BR debsign (1),
 .BR fakeroot (1),
 .BR lintian (1),
 .BR linda (1),
 .BR chmod (1),
-.BR dpkg-statoverride (8),
+.BR dpkg\-statoverride (8),
 .BR su (1),
 .BR sudo (1),
 .BR super (1)
 and
 .BR devscripts.conf (5).
-.SH AUTHOR
+.SH "AUTHOR"
 The original \fBdebuild\fR program was written by Christoph Lameter
 <[EMAIL PROTECTED]>.  The current version has been written by Julian
 Gilbey <[EMAIL PROTECTED]>.

Reply via email to