Gentoo Archives: gentoo-dev

From: Julian Ospald <hasufell@g.o>
To: gentoo-dev@l.g.o
Cc: Julian Ospald <hasufell@g.o>
Subject: [gentoo-dev] [PATCH] metadata: add slots element
Date: Mon, 12 Oct 2015 17:21:02
Message-Id: 1444670373-12706-2-git-send-email-hasufell@gentoo.org
In Reply to: [gentoo-dev] [RFC] Allow SLOT documentation in metadata.xml by Julian Ospald
1 There seems to be some general confusion about specific package SLOTs
2 and their meaning, since there can be several naming schemes applied
3 and documentation is either non-existent or is inside the ebuild via
4 comments.
5 Because of that it should be part of metadata.xml.
6
7 An example use case for media-libs/libpng would be:
8 <slots>
9 <slot name="0">For building against. This is the only slot
10 that provides headers and command line tools.</slot>
11 <slot name="1.2">For binary compatibility, provides libpng12.so.0.</slot>
12 <slot name="1.5">For binary compatibility, provides libpng15.so.15.</slot>
13 <subslots>Represent ABI compatibility for libpng.so.</subslots>
14 </slots>
15
16 For packages like x11-libs/wxGTK one could write:
17 <slots>
18 <slot name="*">Major versions.</slot>
19 </slots>
20 ---
21 metadata.dtd | 12 +++++++++++-
22 1 file changed, 11 insertions(+), 1 deletion(-)
23
24 diff --git a/metadata.dtd b/metadata.dtd
25 index ff2649c..4b29f3b 100644
26 --- a/metadata.dtd
27 +++ b/metadata.dtd
28 @@ -5,7 +5,7 @@
29 <!ATTLIST catmetadata pkgname CDATA "">
30
31 <!-- Metadata for a package -->
32 -<!ELEMENT pkgmetadata ( (herd|maintainer|natural-name|longdescription|use|upstream)* )>
33 +<!ELEMENT pkgmetadata ( (herd|maintainer|natural-name|longdescription|slots|use|upstream)* )>
34 <!ATTLIST pkgmetadata pkgname CDATA "">
35
36 <!-- One tag for each herd this package is assigned to. -->
37 @@ -20,6 +20,15 @@
38 <!-- A long description of the package in freetext-->
39 <!ELEMENT longdescription (#PCDATA|pkg|cat)* >
40
41 + <!-- A description of the packages SLOTs -->
42 + <!ELEMENT slots ((slot)*,subslots?) >
43 + <!-- A particular SLOT -->
44 + <!ELEMENT slot (#PCDATA)* >
45 + <!-- name attribute holds the name of the SLOT, for sub-SLOTS use the subslots element -->
46 + <!ATTLIST slot name CDATA #REQUIRED >
47 + <!-- The meaning of sub-SLOTs for the whole package -->
48 + <!ELEMENT subslots (#PCDATA)* >
49 +
50 <!-- The changelog of the package-->
51 <!-- Please note that #PCDATA is mentioned only for the upstream changelog
52 element, where the content is a URL. This is due to limitations of the DTD -->
53 @@ -79,6 +88,7 @@
54 language "C" or "en", which is equivalent -->
55 <!ATTLIST description lang CDATA "C" >
56 <!ATTLIST longdescription lang CDATA "C" >
57 + <!ATTLIST slots lang CDATA "C" >
58 <!ATTLIST use lang CDATA "C" >
59
60 <!-- The restrict attribute, this attribute specifies restrictions on
61 --
62 2.6.1

Replies

Subject Author
Re: [gentoo-dev] [PATCH] metadata: add slots element Alexis Ballier <aballier@g.o>
Re: [gentoo-dev] [PATCH] metadata: add slots element "Andreas K. Huettel" <dilfridge@g.o>
[gentoo-dev] Re: [PATCH] metadata: add slots element Michael Palimaka <kensington@g.o>