On 13/10/15 04:19, Julian Ospald wrote:
> 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>
> ---
>  metadata.dtd | 12 +++++++++++-
>  1 file changed, 11 insertions(+), 1 deletion(-)
> 
> 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 
> 

+1


Reply via email to