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 |