On Thu, 2010-06-03 at 22:01 +0200, Guillem Jover wrote: > Hi! > > On Thu, 2010-06-03 at 09:56:30 -0700, Russ Allbery wrote: > > Okay, here's another try at this patch that removes some extraneous > > information that it sounds like we shouldn't get into, from this message > > and your other message, and tries to simplify the wording to address the > > issue raised in the message whose URL is given above. > > Thanks! > > > diff --git a/policy.sgml b/policy.sgml > > index af00c0e..36c7a1f 100644 > > --- a/policy.sgml > > +++ b/policy.sgml > > @@ -2735,41 +2735,62 @@ Package: libc6 > > <tt>Architecture</tt> field can include the following sets of > > values: > > <list> > > - <item>A unique single word identifying a Debian machine > > - architecture as described in <ref id="arch-spec">. > > - <item><tt>all</tt>, which indicates an > > - architecture-independent package. > > - <item><tt>any</tt>, which indicates a package available > > - for building on any architecture. > > - <item><tt>source</tt>, which indicates a source package. > > + <item> > > + A unique single word identifying a Debian machine > > + architecture as described in <ref id="arch-spec">. > > + </item> > > + <item> > > + An architecture wildcard identifying a set of Debian > > + machine architectures, see <ref id="arch-wildcard-spec">. > > + <tt>any</tt> matches all Debian machine architectures > > + and is the most frequently used. > > + </item> > > + <item> > > + <tt>all</tt>, which indicates an > > + architecture-independent package. > > + </item> > > + <item> > > + <tt>source</tt>, which indicates a source package. > > + </item> > > </list> > > </p> > > > > <p> > > In the main <file>debian/control</file> file in the source > > - package, this field may contain the special value > > - <tt>any</tt>, the special value <tt>all</tt>, or a list of > > - architectures separated by spaces. If <tt>any</tt> or > > - <tt>all</tt> appear, they must be the entire contents of the > > - field. Most packages will use either <tt>any</tt> or > > - <tt>all</tt>. Specifying a specific list of architectures is > > - for the minority of cases where a program is not portable or > > - is not useful on some architectures, and where possible the > > - program should be made portable instead. > > + package, this field may contain the special value <tt>all</tt> > > + or a list of specific and wildcard architectures separated by > > + spaces. If <tt>all</tt> appears, that value must be the > > + entire contents of the field. Most packages will use > > “any” must also only appear by itself (that got lost from the previous > text). > > > + either <tt>any</tt> or <tt>all</tt>. > > + </p> > > + > > + <p> > > + Specifying a specific list of architectures indicates that the > > + source will build an architecture-dependent package only on > > + architectures included in the list. Specifying a list of > > + architecture wildcards indicates that the source will build an > > + architecture-dependent package on only those architectures > > + that match any of the specified architecture wildcards. > > + Specifying a list of architectures or architecture wildcards > > + other than <tt>any</tt> is for the minority of cases where a > > + program is not portable or is not useful on some > > + architectures. Where possible, the program should be made > > + portable instead. > > </p> > > > > <p> > > In the source package control file <file>.dsc</file>, this > > - field may contain either the special value <tt>any</tt> or a > > - list of architectures separated by spaces. If a list is given, > > - it may include (or consist solely of) the special value > > - <tt>all</tt>. In other words, in <file>.dsc</file> files > > - unlike the <file>debian/control</file>, <tt>all</tt> may occur > > - in combination with specific architectures. The > > - <tt>Architecture</tt> field in the source package control file > > - <file>.dsc</file> is generally constructed from the > > - <tt>Architecture</tt> fields in the > > - <file>debian/control</file> in the source package. > > + field may contain either the architecture > > + wildcard <tt>any</tt> or a list of architectures and > > + architecture wildcards separated by spaces. If a list is > > + given, it may include (or consist solely of) the special > > + value <tt>all</tt>. In other words, in <file>.dsc</file> > > + files unlike the <file>debian/control</file>, <tt>all</tt> may > > + occur in combination with specific architectures. > > + The <tt>Architecture</tt> field in the source package control > > + file <file>.dsc</file> is generally constructed from > > + the <tt>Architecture</tt> fields in > > + the <file>debian/control</file> in the source package. > > </p> > > > > <p> > > @@ -2789,23 +2810,24 @@ Package: libc6 > > </p> > > > > <p> > > - Specifying a list of architectures indicates that the source > > - will build an architecture-dependent package, and will only > > - work correctly on the listed architectures. If the source > > - package also builds at least one architecture-independent > > - package, <tt>all</tt> will also be included in the list. > > + Specifying a list of architectures or architecture wildcards > > + indicates that the source will build an architecture-dependent > > + package, and will only work correctly on the listed or > > + matching architectures. If the source package also builds at > > + least one architecture-independent package, <tt>all</tt> will > > + also be included in the list. > > </p> > > > > <p> > > In a <file>.changes</file> file, the <tt>Architecture</tt> > > - field lists the architecture(s) of the package(s) > > - currently being uploaded. This will be a list; if the > > - source for the package is also being uploaded, the special > > + field lists the architecture(s) of the package(s) currently > > + being uploaded. This will be a list; if the source for the > > + package is also being uploaded, the special > > entry <tt>source</tt> is also present. <tt>all</tt> will be > > present if any architecture-independent packages are being > > - uploaded. <tt>any</tt> may never occur in the > > - <tt>Architecture</tt> field in the <file>.changes</file> > > - file. > > + uploaded. Architecture wildcards such as <tt>any</tt> must > > + never occur in the <tt>Architecture</tt> field in > > + the <file>.changes</file> file. > > </p> > > > > <p> > > @@ -4259,6 +4281,21 @@ Build-Depends: foo [!i386] | bar [!amd64] > > bar</tt> on all other architectures. > > </p> > > > > + <p> > > + All fields that specify build-time relationships may also be > > + restricted to a certain set of architectures using architecture > > + wildcards. The syntax for declaring such restrictions is the > > + same as declaring restrictions using a certain set of > > + architectures without architecture wildcards. For example: > > + <example compact="compact"> > > +Build-Depends: foo [linux-any], bar [any-i386], baz [!linux-any] > > + </example> > > + is equivalent to <tt>foo</tt> on architectures using the Linux > > + kernel and any cpu, <tt>bar</tt> on architectures using any > > + kernel and an i386 cpu, and <tt>baz</tt> on any architecture > > + using a kernel other than Linux. > > + </p> > > + > > <p> > > Note that the binary package relationship fields such as > > <tt>Depends</tt> appear in one of the binary package > > @@ -7979,6 +8016,27 @@ done > > </p> > > </sect> > > > > + <sect id="arch-wildcard-spec"> > > + <heading>Architecture Wildcards</heading> > > + > > + <p> > > + A package may specify an architecture wildcard. Architecture > > + wildcards are in the format <tt>any</tt> (which matches every > > + architecture), <tt><var>os</var></tt>-any, or > > + any-<tt><var>cpu</var></tt>. <footnote> > > + Internally, the package system normalizes the GNU triplets and > > + the Debian arches into Debian arch triplets (which are kind of > > + inverted GNU triplets), with the first component of the > > + triplet representing the libc and ABI in use, and then does > > + matching against those triplets. However, such triplets are > > + an internal implementation detail that should not be used by > > + packages directly. The libc and ABI portion is handled > > + internally by the package system based on the <var>os</var> > > + and <var>cpu</var>. > > + </footnote> > > + </p> > > + </sect> > > + > > <sect> > > <heading>Daemons</heading> > > With that correction, seconded.
seconded. Cheers, Andrew. -- ------------------------------------------------------------------------ andrew (AT) morphoss (DOT) com +64(272)DEBIAN Look afar and see the end from the beginning. ------------------------------------------------------------------------
signature.asc
Description: This is a digitally signed message part