Gentoo Archives: gentoo-dev

From: NP-Hardass <NP-Hardass@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] [PATCH] metadata: add slots element
Date: Tue, 13 Oct 2015 02:14:46
Message-Id: 20151012221359.6d1e0005@Valar-Morghulis.home.adambfeldman.com
In Reply to: Re: [gentoo-dev] [PATCH] metadata: add slots element by "Andreas K. Huettel"
1 -----BEGIN PGP SIGNED MESSAGE-----
2 Hash: SHA256
3
4 On Mon, 12 Oct 2015 23:49:11 +0200
5 "Andreas K. Huettel" <dilfridge@g.o> wrote:
6
7 > There seems to be some general confusion about specific package SLOTs
8 > and their meaning, since there can be several naming schemes applied
9 > and documentation is either non-existent or is inside the ebuild via
10 > comments.
11 > Because of that it should be part of metadata.xml.
12 >
13 > An example use case for media-libs/libpng would be:
14 > <slots>
15 > <slot name="0">For building against. This is the only slot
16 > that provides headers and command line tools.</slot>
17 > <slot name="1.2">For binary compatibility, provides
18 > libpng12.so.0.</slot> <slot name="1.5">For binary compatibility,
19 > provides libpng15.so.15.</slot> <subslots>Represent ABI compatibility
20 > for libpng.so.</subslots> </slots>
21 >
22 > For packages like x11-libs/wxGTK one could write:
23 > <slots>
24 > <slot name="*">Major versions.</slot>
25 > </slots>
26 > ---
27 > metadata.dtd | 12 +++++++++++-
28 > 1 file changed, 11 insertions(+), 1 deletion(-)
29 >
30 > diff --git a/metadata.dtd b/metadata.dtd
31 > index ff2649c..4b29f3b 100644
32 > --- a/metadata.dtd
33 > +++ b/metadata.dtd
34 > @@ -5,7 +5,7 @@
35 > <!ATTLIST catmetadata pkgname CDATA "">
36 >
37 > <!-- Metadata for a package -->
38 > -<!ELEMENT pkgmetadata
39 > ( (herd|maintainer|natural-name|longdescription|use|upstream)* )>
40 > +<!ELEMENT pkgmetadata
41 > ( (herd|maintainer|natural-name|longdescription|slots|use|upstream)*
42 > )> <!ATTLIST pkgmetadata pkgname CDATA ""> <!-- One tag for each herd
43 > this package is assigned to. --> @@ -20,6 +20,15 @@
44 > <!-- A long description of the package in freetext-->
45 > <!ELEMENT longdescription (#PCDATA|pkg|cat)* >
46 >
47 > + <!-- A description of the packages SLOTs -->
48 > + <!ELEMENT slots ((slot)*,subslots?) >
49 > + <!-- A particular SLOT -->
50 > + <!ELEMENT slot (#PCDATA)* >
51 > + <!-- name attribute holds the name of the SLOT, for sub-SLOTS
52 > use the subslots element -->
53 > + <!ATTLIST slot name CDATA #REQUIRED >
54 > + <!-- The meaning of sub-SLOTs for the whole package -->
55 > + <!ELEMENT subslots (#PCDATA)* >
56 > +
57 > <!-- The changelog of the package-->
58 > <!-- Please note that #PCDATA is mentioned only for the upstream
59 > changelog element, where the content is a URL. This is due to
60 > limitations of the DTD --> @@ -79,6 +88,7 @@
61 > language "C" or "en", which is equivalent -->
62 > <!ATTLIST description lang CDATA "C" >
63 > <!ATTLIST longdescription lang CDATA "C" >
64 > + <!ATTLIST slots lang CDATA "C" >
65 > <!ATTLIST use lang CDATA "C" >
66 >
67 > <!-- The restrict attribute, this attribute specifies restrictions
68 > on
69
70 +1
71 -----BEGIN PGP SIGNATURE-----
72 Version: GnuPG v2
73
74 iQIcBAEBCAAGBQJWHGj/AAoJEBzZQR2yrxj7KWcQAJXawG1eTgdJZx1shunzk1QN
75 xLgHs0dKvsmvnutDkqxcdJ3p2OzbdHlJpZQn88htdfj3c2vYqEMCnORPYtdmqAUD
76 HzdnSdcXnfCIPGVcOy+uFftndW1A+AXDqouLDOh0AAbZ0loQKNvrbqlk6IB85p9d
77 yq3f/0oWYdE989BqRiljFWmDbCLvFe1D7oH3CAORzcZenOA5OpPxLfpR9dwpQrO1
78 1NHf+7HyvMK1LWABmGPySQgh12kCZWMri7F1epr1jepeuUtAormlAFG8I6fc0p6C
79 KPS21Oqu8ejHTL0ekL+0YDfjJtGbyZ0EexGrhPZwBA7X3E4R0bHxQxOYHc41jO3L
80 3owOk6nKkBT8iUClxz1uaS7IuhgpyPcGhrjnyzH5HP6K2Dr/FQCz9QS9RERnnFBu
81 HShFOttmVK4rvDUcsWcVx1SHnGWGonESsyjjRw6jGV7sbXD1kEsGjjf5JuYNMk6/
82 45tOP23HbIxj6eyMACXoQpXS3N+4nsBLHwZyLunGYd7RM7lLG7/byS3GXXweornr
83 MK9GYaPAxyyYPqt60UTJqfeFjNps30KuNgPeQva0ooRBPCS/GPt+N3PLdGWJ68mq
84 45Lne/c6JcD67wqsCllxg0IlsiNpnltq68Ky7mVir6eHo9RU1bhfoOLgZNxVUll9
85 uCMVDFG3047ynEMTV2Mj
86 =9URl
87 -----END PGP SIGNATURE-----