From: Charles Plessy Date: Thu, 29 Dec 2011 19:23:19 +0000 (+0100) Subject: Document the Built-Using field X-Git-Url: https://git.donarmstrong.com/?p=debian%2Fdebian-policy.git;a=commitdiff_plain;h=4953fb7792b9fbe04c27dc817a2eb3cd9ab450b8 Document the Built-Using field Thanks to Ansgar Burchardt . Closes: #641153 [jrnieder@gmail.com: with spelling fixes from Jakub Wilk] --- diff --git a/policy.sgml b/policy.sgml index 52dbb26..aa42b5d 100644 --- a/policy.sgml +++ b/policy.sgml @@ -2646,6 +2646,7 @@ Package: libc6 Depends et al Description (mandatory) Homepage + Built-Using

@@ -2701,6 +2702,7 @@ Package: libc6 Maintainer (mandatory) Description (mandatory) Homepage + Built-Using

@@ -4677,7 +4679,8 @@ Build-Depends: kernel-headers-2.2.10 [!hurd-i386],

- For binary relationship fields, the architecture restriction + For binary relationship fields and the Built-Using + field, the architecture restriction syntax is only supported in the source package control file debian/control. When the corresponding binary package control file is generated, the relationship will either @@ -5401,6 +5404,53 @@ Replaces: mail-transport-agent

+ + + Additional source packages used to build the binary + - Built-Using + + +

+ Some binary packages incorporate parts of other packages when built + but do not have to depend on those packages. Examples include + linking with static libraries or incorporating source code from + another package during the build. In this case, the source packages + of those other packages are a required part of the complete source + (the binary package is not reproducible without them). +

+ +

+ A Built-Using field must list the corresponding source + package for any such binary package incorporated during the build + + Build-Depends in the source package is not adequate since + it (rightfully) does not document the exact version used in the + build. + , + including an "exactly equal" ("=") version relation on the version + that was used to build that binary package + The archive software might reject packages that refer to + non-existent sources. + . +

+ +

+ A package using the source code from the gcc-4.6-source + binary package built from the gcc-4.6 source package would + have this field in its control file: + +Built-Using: gcc-4.6 (= 4.6.0-11) + +

+ +

+ A package including binaries from grub2 and loadlin would + have this field in its control file: + +Built-Using: grub2 (= 1.99-9), loadlin (= 1.6e-1) + +

+