summaryrefslogtreecommitdiffstats
path: root/man/deb-buildinfo.pod
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 18:35:28 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 18:35:28 +0000
commitea314d2f45c40a006c0104157013ab4b857f665f (patch)
tree3ef2971cb3675c318b8d9effd987854ad3f6d3e8 /man/deb-buildinfo.pod
parentInitial commit. (diff)
downloaddpkg-ea314d2f45c40a006c0104157013ab4b857f665f.tar.xz
dpkg-ea314d2f45c40a006c0104157013ab4b857f665f.zip
Adding upstream version 1.22.4.upstream/1.22.4
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'man/deb-buildinfo.pod')
-rw-r--r--man/deb-buildinfo.pod269
1 files changed, 269 insertions, 0 deletions
diff --git a/man/deb-buildinfo.pod b/man/deb-buildinfo.pod
new file mode 100644
index 0000000..2f8ac43
--- /dev/null
+++ b/man/deb-buildinfo.pod
@@ -0,0 +1,269 @@
+# dpkg manual page - deb-buildinfo(5)
+#
+# Copyright © 1995-1996 Ian Jackson <ijackson@chiark.greenend.org.uk>
+# Copyright © 2010 Russ Allbery <rra@debian.org>
+# Copyright © 2015-2016 Guillem Jover <guillem@debian.org>
+#
+# This is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
+=encoding utf8
+
+=head1 NAME
+
+deb-buildinfo - Debian build information file format
+
+=head1 SYNOPSIS
+
+I<filename>B<.buildinfo>
+
+=head1 DESCRIPTION
+
+Each Debian source package build can record the build information in
+a B<.buildinfo> control file, which contains a number of fields in
+L<deb822(5)> format.
+
+Each field begins with a tag, such as
+B<Source>
+or
+B<Binary>
+(case insensitive), followed by a colon, and the body of the field
+(case sensitive unless stated otherwise).
+Fields are delimited only by field tags.
+In other words, field text may be multiple lines in length, but the
+installation tools will generally join lines when processing the body
+of the field (except in case of the multiline fields
+B<Binary-Only-Changes>, B<Installed-Build-Depends>, B<Environment>,
+B<Checksums-Md5>, B<Checksums-Sha1>
+and
+B<Checksums-Sha256>,
+see below).
+
+The control data might be enclosed in an OpenPGP ASCII Armored signature,
+as specified in RFC4880.
+
+The name of the B<.buildinfo> file will depend on the type of build and
+will be as specific as necessary but not more; the name will be:
+
+=over
+
+=item I<source-name>B<_>I<binary-version>B<_>I<arch>B<.buildinfo>
+
+for a build that includes B<any>
+
+=item I<source-name>B<_>I<binary-version>B<_>B<all.buildinfo>
+
+otherwise for a build that includes B<all>
+
+=item I<source-name>B<_>I<source-version>B<_>B<source.buildinfo>
+
+otherwise for a build that includes B<source>
+
+=back
+
+=head1 FIELDS
+
+=over
+
+=item B<Format:> I<format-version> (required)
+
+The value of this field declares the format version of the file.
+The syntax of the field value is a version number with a major and minor
+component.
+Backward incompatible changes to the format will bump the major version,
+and backward compatible changes (such as field additions) will bump the
+minor version.
+The current format version is B<1.0>.
+
+=item B<Source:> I<source-name> [B<(>I<source-version>B<)>] (required)
+
+The name of the source package.
+If the source version differs from the binary version, then the
+I<source-name> will be followed by a I<source-version> in parenthesis.
+This can happen when the build is for a binary-only non-maintainer upload.
+
+=item B<Binary:> I<binary-package-list> (required in context)
+
+This folded field is a space-separated list of binary packages built.
+If the build is source-only, then the field is omitted (since dpkg 1.20.0).
+
+=item B<Architecture:> I<arch-list> (required)
+
+This space-separated field lists the architectures of the files currently
+being built.
+Common architectures are B<amd64>, B<armel>, B<i386>, etc.
+Note that the B<all> value is meant for packages that are architecture
+independent.
+If the source for the package is also being built, the special entry
+B<source> is also present.
+Architecture wildcards must never be present in the list.
+
+=item B<Version:> I<version-string> (required)
+
+Typically, this is the original package's version number in whatever form
+the program's author uses.
+It may also include a Debian revision number (for non-native packages).
+The exact format and sorting algorithm are described in
+L<deb-version(7)>.
+
+=item B<Binary-Only-Changes:>
+
+=item S< >I<changelog-entry>
+
+This multiline field contains the concatenated text of the changelog
+entry for a binary-only non-maintainer upload (binNMU) if that is the case.
+To make this a valid multiline field empty lines are replaced with a
+single full stop (‘.’) and all lines are indented by one space
+character.
+The exact content depends on the changelog format.
+
+=item B<Checksums-Md5:> (required)
+
+=item B<Checksums-Sha1:> (required)
+
+=item B<Checksums-Sha256:> (required)
+
+=item S< >I<checksum> I<size> I<filename>
+
+These multiline fields contain a list of files with a checksum and size
+for each one.
+These fields have the same syntax and differ only in the checksum algorithm
+used: MD5 for B<Checksums-Md5>, SHA-1 for B<Checksums-Sha1> and
+SHA-256 for B<Checksums-Sha256>.
+
+The first line of the field value (the part on the same line as the field
+name followed by a colon) is always empty.
+The content of the field is expressed as continuation lines, one line per file.
+Each line consists of space-separated entries describing the file:
+the checksum, the file size, and the file name.
+
+These fields list all files that make up the build.
+
+=item B<Build-Origin:> I<name>
+
+The name of the distribution this package is originating from.
+
+=item B<Build-Architecture:> I<arch> (required)
+
+The Debian architecture for the installation the packages is being built in.
+Common architectures are B<amd64>, B<armel>, B<i386>, etc.
+
+=item B<Build-Date:> I<build-date>
+
+The date the package was built.
+It must be in the same format as the date in a L<deb-changelog(5)>
+entry.
+
+=item B<Build-Kernel-Version:> I<build-kernel-version>
+
+The release and version (in an unspecified format) of the kernel running
+on the build system.
+This field is only going to be present if the builder has explicitly
+requested it, to avoid leaking possibly sensitive information.
+
+=item B<Build-Path:> I<build-path>
+
+The absolute build path, which correspond to the unpacked source tree.
+This field is only going to be present if the vendor has allowed it
+via some pattern match to avoid leaking possibly sensitive information.
+
+On Debian and derivatives only build paths starting with I</build/>
+will emit this field.
+
+=item B<Build-Tainted-By:>
+
+=item S< >I<taint-reason-list>
+
+This folded field contains a space-separated list of non-exhaustive reason
+tags (formed by alphanumeric and dash characters) which identify why the
+current build has been tainted (since dpkg 1.19.5).
+
+On Debian and derivatives the following reason tags can be emitted:
+
+=over
+
+=item B<merged-usr-via-aliased-dirs>
+
+The system has a merged I</usr> via aliased directories (previously known
+as B<merged-usr-via-symlinks>).
+This will confuse B<dpkg-query>, B<dpkg-statoverride>,
+B<dpkg-trigger>, B<update-alternatives> and any other tool using
+pathnames as keys into their databases, as it creates filesystem aliasing
+problems, and messes with the understanding of the filesystem that
+B<dpkg> has recorded in its database.
+For build systems that hardcode pathnames to specific binaries or libraries
+on the resulting artifacts, it can also produce packages that will be
+incompatible with non-/usr-merged filesystems.
+
+=item B<usr-local-has-configs>
+
+The system has configuration files under I</usr/local/etc>.
+
+=item B<usr-local-has-includes>
+
+The system has header files under I</usr/local/include>.
+
+=item B<usr-local-has-programs>
+
+The system has programs under I</usr/local/bin> or I</usr/local/sbin>.
+
+=item B<usr-local-has-libraries>
+
+The system has libraries, either static or shared under I</usr/local/lib>.
+
+=item B<can-execute-cross-built-programs>
+
+The system can execute cross built programs, either directly or via some
+emulation layer.
+
+Since dpkg 1.21.10.
+
+=back
+
+=item B<Installed-Build-Depends:> (required)
+
+=item S< >I<package-list>
+
+The list of installed and configured packages that might affect the package
+build process.
+
+The list consists of each package name, optionally arch-qualified for foreign
+architectures, with an exact version restriction, separated by commas.
+
+The list includes all essential packages, packages listed in
+B<Build-Depends>, B<Build-Depends-Arch>, B<Build-Depends-Indep>
+source control fields, any vendor specific builtin dependencies, and all
+their recursive dependencies.
+On Debian and derivatives the dependency builtin is B<build-essential>.
+
+For dependencies coming from the source control fields, all dependency
+alternatives and all providers of virtual packages depended on will be
+included.
+
+=item B<Environment:>
+
+=item S< >I<variable-list>
+
+The list of environment variables that are known to affect the package build
+process, with each environment variable followed by an equal sign (‘=’)
+and the variable's quoted value, using double quotes (‘"’), and
+backslashes escaped (‘\\’).
+
+=back
+
+=head1 SEE ALSO
+
+L<deb822(5)>,
+L<deb-changes(5)>,
+L<deb-version(7)>,
+L<dpkg-genbuildinfo(1)>.