1 # dpkg manual page - dpkg-buildpackage(1)
3 # Copyright © 1995-1996 Ian Jackson
4 # Copyright © 2000 Wichert Akkerman <wakkerma@debian.org>
5 # Copyright © 2007-2008 Frank Lichtenheld <djpig@debian.org>
6 # Copyright © 2008-2015 Guillem Jover <guillem@debian.org>
7 # Copyright © 2008-2012 Raphaël Hertzog <hertzog@debian.org>
9 # This is free software; you can redistribute it and/or modify
10 # it under the terms of the GNU General Public License as published by
11 # the Free Software Foundation; either version 2 of the License, or
12 # (at your option) any later version.
14 # This is distributed in the hope that it will be useful,
15 # but WITHOUT ANY WARRANTY; without even the implied warranty of
16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 # GNU General Public License for more details.
19 # You should have received a copy of the GNU General Public License
20 # along with this program. If not, see <https://www.gnu.org/licenses/>.
26 dpkg-buildpackage - build binary or source packages from sources
36 is a program that automates the process of building a Debian package. It
37 consists of the following steps:
43 It runs the B<preinit> hook before reading any source file.
44 It prepares the build environment by setting various environment
45 variables (see B<ENVIRONMENT>), runs the B<init> hook, and calls
46 B<dpkg-source --before-build> (unless B<-T> or B<--target>
51 It checks that the build-dependencies and build-conflicts
52 are satisfied (unless B<-d> or B<--no-check-builddeps> is specified).
56 If one or more specific targets have been selected with the B<-T> or
57 B<--target> option, it calls those targets and stops here. Otherwise it
58 runs the B<preclean> hook and calls B<fakeroot debian/rules clean> to
59 clean the build-tree (unless B<-nc> or B<--no-pre-clean>
64 It runs the B<source> hook and calls B<dpkg-source -b> to generate
65 the source package (if a B<source> build has been requested with
66 B<--build> or equivalent options).
70 It runs the B<build> hook and calls B<debian/rules> I<build-target>,
71 then runs the B<binary> hook followed by B<fakeroot debian/rules>
72 I<binary-target> (unless a source-only build has been requested with
73 B<--build=source> or equivalent options).
74 Note that I<build-target> and I<binary-target> are either B<build>
75 and B<binary> (default case, or if an B<any> and B<all> build
76 has been requested with B<--build> or equivalent options), or
77 B<build-arch> and B<binary-arch> (if an B<any> and not B<all>
78 build has been requested with B<--build> or equivalent options), or
79 B<build-indep> and B<binary-indep> (if an B<all> and not B<any>
80 build has been requested with B<--build> or equivalent options).
84 It runs the B<buildinfo>
85 hook and calls B<dpkg-genbuildinfo> to generate a B<.buildinfo> file.
86 Several B<dpkg-buildpackage> options are forwarded to
91 It runs the B<changes> hook and calls B<dpkg-genchanges> to
92 generate a B<.changes> file.
93 The name of the B<.changes> file will depend on the type of build and
94 will be as specific as necessary but not more; the name will be:
98 =item I<source-name>B<_>I<binary-version>B<_>I<arch>B<.changes>
100 for a build that includes B<any>
102 =item I<source-name>B<_>I<binary-version>B<_>B<all.changes>
104 otherwise for a build that includes B<all>
106 =item I<source-name>B<_>I<source-version>B<_>B<source.changes>.
108 otherwise for a build that includes B<source>
112 Many B<dpkg-buildpackage> options are forwarded to
117 It runs the B<postclean> hook and if B<-tc> or B<--post-clean>
118 is specified, it will call B<fakeroot debian/rules clean> again.
122 It calls B<dpkg-source --after-build>.
126 It runs the B<check> hook and calls a package checker for the
127 B<.changes> file (if a command is specified in B<DEB_CHECK_COMMAND> or
128 with B<--check-command>).
132 It runs the B<sign> hook and signs using the OpenPGP backend (as long as it
133 is not an UNRELEASED build, or B<--no-sign> is specified) to sign the
134 B<.dsc> file (if any, unless
135 B<-us> or B<--unsigned-source> is specified), the B<.buildinfo>
136 file (unless B<-ui>, B<--unsigned-buildinfo>,
137 B<-uc> or B<--unsigned-changes> is specified) and
138 the B<.changes> file (unless B<-uc> or B<--unsigned-changes>
143 It runs the B<done> hook.
149 All long options can be specified both on the command line and in the
150 B<dpkg-buildpackage> system and user configuration files.
151 Each line in the configuration file is either an option (exactly the same
152 as the command line option but without leading hyphens) or a comment (if
153 it starts with a ‘B<#>’).
157 =item B<--build=>I<type>
159 Specifies the build I<type> from a comma-separated list of components
161 All the specified components get combined to select the single build type
162 to use, which implies a single build run with a single F<.changes> file
164 Passed to B<dpkg-genchanges>.
166 The allowed values are:
172 Builds the source package.
174 B<Note>: When using this value standalone and if what you want is simply to
175 (re-)build the source package from a clean source tree, using
176 B<dpkg-source> directly is always a better option as it does not
177 require any build dependencies to be installed which are otherwise
178 needed to be able to call the B<clean> target.
182 Builds the architecture specific binary packages.
186 Builds the architecture independent binary packages.
190 Builds the architecture specific and independent binary packages.
191 This is an alias for B<any,all>.
196 This is an alias for B<source,any,all>, and the same as the default
197 case when no build option is specified.
203 Equivalent to B<--build=source,all> (since dpkg 1.17.11).
207 Equivalent to B<--build=source,any> (since dpkg 1.17.11).
211 Equivalent to B<--build=binary> or B<--build=any,all>.
215 Equivalent to B<--build=any>.
219 Equivalent to B<--build=all>.
223 Equivalent to B<--build=source>.
227 Equivalent to B<--build=full>, B<--build=source,binary> or
228 B<--build=source,any,all> (since dpkg 1.15.8).
230 =item B<--target=>I<target>[,...]
232 =item B<--target> I<target>[,...]
234 =item B<-T>, B<--rules-target=>I<target>[,...]
236 Calls B<debian/rules> I<target> once per target specified, after
237 having setup the build environment (except for calling
238 B<dpkg-source --before-build>), and stops the package build process
239 here (since dpkg 1.15.0, long option since dpkg 1.18.8, multi-target
240 support since dpkg 1.18.16).
241 If B<--as-root> is also given, then the command is executed
242 as root (see B<--root-command>).
243 Note that known targets that are required to
244 be run as root do not need this option (i.e. the B<clean>, B<binary>,
245 B<binary-arch> and B<binary-indep> targets).
249 Only meaningful together with B<--target> (since dpkg 1.15.0).
250 Requires that the target be run with root rights.
258 =item B<-v>I<version>
260 =item B<-C>I<changes-description>
262 =item B<-m>I<maintainer-address>
264 =item B<-e>I<maintainer-address>
266 Passed unchanged to B<dpkg-genchanges>. See its manual page.
268 =item B<--build-by=>I<maintainer-address>
270 =item B<--source-by=>I<maintainer-address> (since dpkg 1.21.10)
272 Pass as B<-m> to B<dpkg-genchanges>. See its manual page.
274 =item B<--release-by=>I<maintainer-address>
276 =item B<--changed-by=>I<maintainer-address> (since dpkg 1.21.10)
278 Pass as B<-e> to B<dpkg-genchanges>. See its manual page.
280 =item B<-a>, B<--host-arch> I<architecture>
282 Specify the Debian architecture we build for (long option since dpkg 1.17.17).
283 The architecture of the
284 machine we build on is determined automatically, and is also the default
285 for the host machine.
287 =item B<-t>, B<--host-type> I<gnu-system-type>
289 Specify the GNU system type we build for (long option since dpkg 1.17.17).
290 It can be used in place
291 of B<--host-arch> or as a complement to override the default GNU system type
292 of the host Debian architecture.
294 =item B<--target-arch> I<architecture>
296 Specify the Debian architecture the binaries built will build for
297 (since dpkg 1.17.17).
298 The default value is the host machine.
300 =item B<--target-type> I<gnu-system-type>
302 Specify the GNU system type the binaries built will build for
303 (since dpkg 1.17.17).
305 used in place of B<--target-arch> or as a complement to override the
306 default GNU system type of the target Debian architecture.
308 =item B<-P>, B<--build-profiles=>I<profile>[B<,>...]
310 Specify the profile(s) we build, as a comma-separated list (since dpkg 1.17.2,
311 long option since dpkg 1.18.8).
313 behavior is to build for no specific profile. Also sets them (as a space
314 separated list) as the B<DEB_BUILD_PROFILES> environment variable which
315 allows, for example, B<debian/rules> files to use this information for
318 =item B<-j>, B<--jobs>[=I<jobs>|B<auto>]
320 Specifies the number of jobs allowed to be run simultaneously
321 (since dpkg 1.14.7, long option since dpkg 1.18.8).
322 The number of jobs matching the number of online processors if B<auto> is
323 specified (since dpkg 1.17.10), or unlimited number if I<jobs> is not
325 The default behavior is B<auto> (since dpkg 1.18.11) in non-forced mode
326 (since dpkg 1.21.10), and as such it is always safer to use with any
327 package including those that are not parallel-build safe.
328 Setting the number of jobs to B<1> will restore serial execution.
330 Will add B<parallel=>I<jobs> or B<parallel> to the B<DEB_BUILD_OPTIONS>
331 environment variable which allows debian/rules files to opt-in to use this
332 information for their own purposes.
333 The I<jobs> value will override the B<parallel=>I<jobs> or
334 B<parallel> option in the B<DEB_BUILD_OPTIONS> environment variable.
335 Note that the B<auto> value will get replaced by the actual number of
336 currently active processors, and as such will not get propagated to any
337 child process. If the number of online processors cannot be inferred then
338 the code will fallback to using serial execution (since dpkg 1.18.15),
339 although this should only happen on exotic and unsupported systems.
341 =item B<-J>, B<--jobs-try>[=I<jobs>|B<auto>]
343 This option (since dpkg 1.18.2, long option since dpkg 1.18.8) is equivalent
346 Since the behavior for B<-j> changed in dpkg 1.21.10 to the opt-in mode,
347 you can use this option instead if you need to guarantee semantics across
350 =item B<--jobs-force>[=I<jobs>|B<auto>]
352 This option (since dpkg 1.21.10) is equivalent to the B<--jobs> option
353 except that it will enable forced parallel mode, by adding the B<make> B<-j>
354 option with the computed number of parallel jobs to the B<MAKEFLAGS>
355 environment variable.
357 This should cause all subsequent make invocations to inherit the option,
358 thus forcing the parallel setting on the packaging (and possibly the
359 upstream build system if that uses L<make(1)>) regardless of their support
360 for parallel builds, which might cause build failures.
362 B<Note>: Any Makefile that is not parallel-safe should be considered to be buggy.
363 These should either be made parallel-safe, or marked as not being safe with
364 the L<make(1)> B<.NOTPARALLEL> target.
366 =item B<-D>, B<--check-builddeps>
368 Check build dependencies and conflicts; abort if unsatisfied (long option
370 This is the default behavior.
372 =item B<-d>, B<--no-check-builddeps>
374 Do not check build dependencies and conflicts (long option since dpkg 1.18.8).
376 =item B<--ignore-builtin-builddeps>
378 Do not check built-in build dependencies and conflicts (since dpkg 1.18.2).
379 These are the distribution specific implicit build dependencies usually
380 required in a build environment, the so called Build-Essential package set.
382 =item B<--rules-requires-root>
384 Do not honor the B<Rules-Requires-Root> field, falling back to its
385 legacy default value (since dpkg 1.19.1).
387 =item B<-nc>, B<--no-pre-clean>
389 Do not clean the source tree before building (long option since dpkg 1.18.8).
390 Implies B<-b> if nothing else has been selected among B<-F>,
391 B<-g>, B<-G>, B<-B>, B<-A> or B<-S>.
392 Implies B<-d> with B<-S> (since dpkg 1.18.0).
396 Clean the source tree before building (since dpkg 1.18.8).
397 This is the default behavior.
399 =item B<-tc>, B<--post-clean>
401 Clean the source tree (using
403 B<debian/rules clean>)
404 after the package has been built (long option since dpkg 1.18.8).
406 =item B<--no-post-clean>
408 Do not clean the source tree after the package has been built
410 This is the default behavior.
412 =item B<--sanitize-env>
414 Sanitize the build environment (since dpkg 1.20.0).
415 This will reset or remove environment variables, umask, and any other process
416 attributes that might otherwise adversely affect the build of packages.
417 Because the official entry point to build packages is B<debian/rules>,
418 packages cannot rely on these settings being in place, and thus should work
419 even when they are not.
420 What to sanitize is vendor specific.
422 =item B<-r>, B<--root-command=>I<gain-root-command>
426 needs to execute part of the build process as root, it prefixes the
427 command it executes with
429 if one has been specified (long option since dpkg 1.18.8).
430 Otherwise, if none has been specified,
431 B<fakeroot> will be used by default, if the command is present.
433 should start with the name of a program on the
435 and will get as arguments the name of the real command to run and the
436 arguments it should take.
438 can include parameters (they must be space-separated) but no shell
442 B<fakeroot>, B<sudo>, B<super> or B<really>.
444 is not suitable, since it can only invoke the user's shell with
446 instead of passing arguments individually to the command to be run.
448 =item B<-R>, B<--rules-file=>I<rules-file>
450 Building a Debian package usually involves invoking
452 as a command with several standard parameters (since dpkg 1.14.17,
453 long option since dpkg 1.18.8).
454 With this option it's
455 possible to use another program invocation to build the package (it can
456 include space separated parameters).
457 Alternatively it can be used to execute the standard rules file with
458 another make program (for example by using
459 B</usr/local/bin/make -f debian/rules>
462 =item B<--check-command=>I<check-command>
464 Command used to check the B<.changes> file itself and any artifact built
465 referenced in the file (since dpkg 1.17.6).
466 The command should take the B<.changes> pathname
467 as an argument. This command will usually be B<lintian>.
469 =item B<--check-option=>I<opt>
471 Pass option I<opt> to the I<check-command> specified with
472 B<DEB_CHECK_COMMAND> or B<--check-command> (since dpkg 1.17.6).
473 Can be used multiple times.
475 =item B<--hook->I<hook-name>B<=>I<hook-command>
477 Set the specified shell code I<hook-command> as the hook I<hook-name>,
478 which will run at the times specified in the run steps (since dpkg 1.17.6).
480 always be executed even if the following action is not performed (except
481 for the B<binary> hook).
482 All the hooks will run in the unpacked source directory.
484 Some hooks can receive addition information through environment variables
486 All hooks get the hook name in the B<DPKG_BUILDPACKAGE_HOOK_NAME> environment
487 variable (since dpkg 1.22.0).
489 B<Note>: Hooks can affect the build process, and cause build failures if
490 their commands fail, so watch out for unintended consequences.
492 The current I<hook-name> supported are:
504 Gets B<DPKG_BUILDPACKAGE_HOOK_SOURCE_OPTIONS> with the space-separated lists
505 of options that will passed to the B<dpkg-source> call.
509 Gets B<DPKG_BUILDPACKAGE_HOOK_BUILD_TARGET> with the name of the
510 B<debian/rules> build target called, but only if called.
514 Gets B<DPKG_BUILDPACKAGE_HOOK_BINARY_TARGET> with the name of the
515 B<debian/rules> binary target called, but only if called.
519 Gets B<DPKG_BUILDPACKAGE_HOOK_BUILDINFO_OPTIONS> with the space-separated lists
520 of options that will passed to the B<dpkg-genbuildinfo> call.
524 Gets B<DPKG_BUILDPACKAGE_HOOK_CHANGES_OPTIONS> with the space-separated lists
525 of options that will passed to the B<dpkg-genchanges> call.
531 Gets B<DPKG_BUILDPACKAGE_HOOK_CHECK_OPTIONS> with the space-separated lists
532 of options that will passed to the check command call.
540 The I<hook-command> supports the following substitution format string,
541 which will get applied to it before execution:
547 A single % character.
551 A boolean value (0 or 1), representing whether the following action is
556 The source package name.
560 The source package version.
564 The source package version (without the epoch).
568 The upstream version.
572 =item B<--buildinfo-file=>I<filename>
574 Set the I<filename> for the generated B<.buildinfo> file (since dpkg 1.21.0).
576 =item B<--buildinfo-option=>I<opt>
578 Pass option I<opt> to B<dpkg-genbuildinfo> (since dpkg 1.18.11).
579 Can be used multiple times.
581 =item B<--sign-backend=>I<sign-backend>
583 Specify an OpenPGP backend interface to use when invoking the I<sign-command>
584 (since dpkg 1.21.10).
586 The default is B<auto>, where the best current backend available will be used.
587 The specific OpenPGP backends supported in order of preference are:
593 (any conforming Stateless OpenPGP implementation)
605 =item B<-p>, B<--sign-command=>I<sign-command>
607 When B<dpkg-buildpackage> needs to execute an OpenPGP backend command to
608 sign a source control (B<.dsc>) file, a B<.buildinfo> file or a B<.changes>
610 I<sign-command> (searching the B<PATH> if necessary) instead of the
611 default or auto-detected backend command (long option since dpkg 1.18.8).
612 I<sign-command> will get all the backend specific arguments according to
613 the B<--sign-backend> selected.
614 I<sign-command> should not contain spaces or any other shell metacharacters.
616 =item B<-k>, B<--sign-keyid=>I<key-id>
618 =item B<--sign-key=>I<key-id>
620 Specify an OpenPGP key-ID (either a fingerprint or a user-ID) for the
621 secret key to use when signing packages (B<--sign-key> since dpkg 1.18.8,
622 B<--sign-keyid> since dpkg 1.21.10).
624 =item B<--sign-keyfile=>I<key-file>
626 Specify an OpenPGP I<key-file> containing the secret key to use when signing
627 packages (since dpkg 1.21.10).
629 B<Note>: For security reasons the I<key-file> is best kept locked with a
632 =item B<-us>, B<--unsigned-source>
634 Do not sign the source package (long option since dpkg 1.18.8).
636 =item B<-ui>, B<--unsigned-buildinfo>
638 Do not sign the B<.buildinfo> file (since dpkg 1.18.19).
640 =item B<-uc>, B<--unsigned-changes>
642 Do not sign the B<.buildinfo> and B<.changes> files
643 (long option since dpkg 1.18.8).
647 Do not sign any file, this includes the source package, the B<.buildinfo>
648 file and the B<.changes> file (since dpkg 1.18.20).
650 =item B<--force-sign>
652 Force the signing of the resulting files (since dpkg 1.17.0), regardless of
653 B<-us>, B<--unsigned-source>,
654 B<-ui>, B<--unsigned-buildinfo>,
655 B<-uc>, B<--unsigned-changes>
656 or other internal heuristics.
676 =item B<-i>, B<--diff-ignore>[=I<regex>]
678 =item B<-I>, B<--tar-ignore>[=I<pattern>]
680 =item B<-z>, B<--compression-level=>I<level>
682 =item B<-Z>, B<--compression=>I<compressor>
684 Passed unchanged to B<dpkg-source>. See its manual page.
686 =item B<--source-option=>I<opt>
688 Pass option I<opt> to B<dpkg-source> (since dpkg 1.15.6).
689 Can be used multiple times.
691 =item B<--changes-file=>I<filename>
693 Set the I<filename> for the generated B<.changes> file (since dpkg 1.21.0).
695 =item B<--changes-option=>I<opt>
697 Pass option I<opt> to B<dpkg-genchanges> (since dpkg 1.15.6).
698 Can be used multiple times.
700 =item B<--admindir=>I<dir>
702 =item B<--admindir> I<dir>
704 Change the location of the B<dpkg> database (since dpkg 1.14.0).
705 The default location is I<%ADMINDIR%>.
707 =item B<-?>, B<--help>
709 Show the usage message and exit.
713 Show the version and exit.
719 =head2 External environment
723 =item B<DEB_CHECK_COMMAND>
725 If set, it will be used as the command to check the B<.changes> file
727 Overridden by the B<--check-command> option.
729 =item B<DEB_SIGN_KEYID>
731 If set, it will be used to sign the B<.changes>, B<.buildinfo> and B<.dsc>
732 files (since dpkg 1.17.2).
733 Overridden by the B<--sign-key> option.
735 =item B<DEB_SIGN_KEYFILE>
737 If set, it will be used to sign the B<.changes>, B<.buildinfo> and B<.dsc>
738 files (since dpkg 1.21.10).
739 Overridden by the B<--sign-keyfile> option.
741 =item B<DEB_BUILD_OPTIONS>
743 If set, it will contain a space-separated list of options that affect
744 the behavior of some dpkg tools involved in package building,
745 and might affect the package build process if the code in F<debian/rules>
748 The following are the options known and supported by dpkg tools,
749 other options honored by F<debian/rules> might be defined by distribution
754 =item B<parallel=>I<N>
756 The F<debian/rules> in the packaging might use this option to set up
757 the build process to use I<N> parallel jobs.
758 It is overridden by the B<--jobs> and B<--jobs-force> options.
762 B<dpkg-buildpackage> will ignore the B<DEB_CHECK_COMMAND> variable.
763 The F<debian/rules> in the packaging is not expected to run test suites
768 If F<debian/rules> calls B<dpkg-buildflags> to set up the build flags,
769 those will be set to not enable any optimizations.
773 The F<debian/rules> in the packaging should ensure that objects do not get
774 the debugging information stripped.
775 If F<debian/rules> includes the B<mk/buildtools.mk> make fragment the
776 B<STRIP> make variable will respect this option.
780 B<dpkg-buildpackage> will append the B<--no-print-directory> L<make(1)>
781 flag to the B<MAKEFLAGS> environment variable.
782 The F<debian/rules> in the packaging should reduce verbosity, while not
783 being completely quiet.
787 =item B<DEB_BUILD_PROFILES>
789 If set, it will be used as the active build profile(s) for the package
790 being built (since dpkg 1.17.2).
791 It is a space separated list of profile names.
792 Overridden by the B<-P> option.
796 Sets the color mode (since dpkg 1.18.5).
797 The currently accepted values are: B<auto> (default), B<always> and
802 If set, it will be used to decide whether to activate Native Language Support,
803 also known as internationalization (or i18n) support (since dpkg 1.19.0).
804 The accepted values are: B<0> and B<1> (default).
808 =head2 Internal environment
810 Even if B<dpkg-buildpackage> exports some variables, B<debian/rules>
811 should not rely on their presence and should instead use the
812 respective interface to retrieve the needed values, because that
813 file is the main entry point to build packages and running it
814 standalone should be supported.
822 =item B<DEB_TARGET_*>
824 B<dpkg-architecture> is called with the B<-a> and B<-t>
825 parameters forwarded. Any variable that is output by its B<-s>
826 option is integrated in the build environment.
828 =item B<DEB_RULES_REQUIRES_ROOT>
830 This variable is set to the value obtained from the B<Rules-Requires-Root>
831 field or from the command-line.
832 When set, it will be a valid value for the B<Rules-Requires-Root> field.
833 It is used to notify B<debian/rules> whether the B<rootless-builds.txt>
834 specification is supported.
836 =item B<DEB_GAIN_ROOT_CMD>
838 This variable is set to I<gain-root-command> when the field
839 B<Rules-Requires-Root> is set to a value different to B<no> and
842 =item B<SOURCE_DATE_EPOCH>
844 This variable is set to the Unix timestamp since the epoch of the
845 latest entry in I<debian/changelog>, if it is not already defined.
853 =item I<%PKGCONFDIR%/buildpackage.conf>
855 System wide configuration file
857 =item I<$XDG_CONFIG_HOME/dpkg/buildpackage.conf> or
859 =item I<$HOME/.config/dpkg/buildpackage.conf>
861 User configuration file.
867 =head2 Compiler flags are no longer exported
869 Between dpkg 1.14.17 and 1.16.1, B<dpkg-buildpackage>
870 exported compiler flags (B<CFLAGS>, B<CXXFLAGS>, B<FFLAGS>,
871 B<CPPFLAGS> and B<LDFLAGS>) with values as returned
872 by B<dpkg-buildflags>. This is no longer the case.
874 =head2 Default build targets
876 B<dpkg-buildpackage> is using the B<build-arch> and
877 B<build-indep> targets since dpkg 1.16.2. Those targets are thus
878 mandatory. But to avoid breakages of existing packages, and ease
879 the transition, if the source package does not build both architecture
880 independent and dependent binary packages (since dpkg 1.18.8) it will
881 fallback to use the B<build> target if B<make -f debian/rules -qn>
882 I<build-target> returns 2 as exit code.
886 Building binary or source packages should only be performed over trusted
891 It should be possible to specify spaces and shell metacharacters
892 and initial arguments for
893 I<gain-root-command> and I<sign-command>.
897 I<%PKGDOCDIR%/spec/rootless-builds.txt>,
899 B<dpkg-architecture>(1),
900 B<dpkg-buildflags>(1),
901 B<dpkg-genbuildinfo>(1),
902 B<dpkg-genchanges>(1),
905 L<https://datatracker.ietf.org/doc/draft-dkg-openpgp-stateless-cli/>,