diff options
author | Julian Ospald <hasufell@gentoo.org> | 2015-10-12 19:19:33 +0200 |
---|---|---|
committer | Michał Górny <mgorny@gentoo.org> | 2015-10-17 21:11:52 +0200 |
commit | 551e00fc42ed21f6a6ff6129b5b85e64725d9665 (patch) | |
tree | f515f6f4d15092df93e1ac72b13cd35f83a7b642 | |
parent | herds: Remove no-longer usable <maintainingproject/> element (diff) | |
download | dtd-551e00fc42ed21f6a6ff6129b5b85e64725d9665.tar.gz dtd-551e00fc42ed21f6a6ff6129b5b85e64725d9665.tar.bz2 dtd-551e00fc42ed21f6a6ff6129b5b85e64725d9665.zip |
metadata: add slots element
There seems to be some general confusion about specific package SLOTs
and their meaning, since there can be several naming schemes applied
and documentation is either non-existent or is inside the ebuild via
comments.
Because of that it should be part of metadata.xml.
An example use case for media-libs/libpng would be:
<slots>
<slot name="0">For building against. This is the only slot
that provides headers and command line tools.</slot>
<slot name="1.2">For binary compatibility, provides libpng12.so.0.</slot>
<slot name="1.5">For binary compatibility, provides libpng15.so.15.</slot>
<subslots>Represent ABI compatibility for libpng.so.</subslots>
</slots>
For packages like x11-libs/wxGTK one could write:
<slots>
<slot name="*">Major versions.</slot>
</slots>
-rw-r--r-- | metadata.dtd | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/metadata.dtd b/metadata.dtd index ff2649c..4b29f3b 100644 --- a/metadata.dtd +++ b/metadata.dtd @@ -5,7 +5,7 @@ <!ATTLIST catmetadata pkgname CDATA ""> <!-- Metadata for a package --> -<!ELEMENT pkgmetadata ( (herd|maintainer|natural-name|longdescription|use|upstream)* )> +<!ELEMENT pkgmetadata ( (herd|maintainer|natural-name|longdescription|slots|use|upstream)* )> <!ATTLIST pkgmetadata pkgname CDATA ""> <!-- One tag for each herd this package is assigned to. --> @@ -20,6 +20,15 @@ <!-- A long description of the package in freetext--> <!ELEMENT longdescription (#PCDATA|pkg|cat)* > + <!-- A description of the packages SLOTs --> + <!ELEMENT slots ((slot)*,subslots?) > + <!-- A particular SLOT --> + <!ELEMENT slot (#PCDATA)* > + <!-- name attribute holds the name of the SLOT, for sub-SLOTS use the subslots element --> + <!ATTLIST slot name CDATA #REQUIRED > + <!-- The meaning of sub-SLOTs for the whole package --> + <!ELEMENT subslots (#PCDATA)* > + <!-- The changelog of the package--> <!-- Please note that #PCDATA is mentioned only for the upstream changelog element, where the content is a URL. This is due to limitations of the DTD --> @@ -79,6 +88,7 @@ language "C" or "en", which is equivalent --> <!ATTLIST description lang CDATA "C" > <!ATTLIST longdescription lang CDATA "C" > + <!ATTLIST slots lang CDATA "C" > <!ATTLIST use lang CDATA "C" > <!-- The restrict attribute, this attribute specifies restrictions on |