diff options
author | Michał Górny <mgorny@gentoo.org> | 2017-09-14 23:14:39 +0200 |
---|---|---|
committer | Ulrich Müller <ulm@gentoo.org> | 2017-10-09 12:08:51 +0200 |
commit | c6fe2071a2e83be2203196ad7f9459941821a034 (patch) | |
tree | d81e1d9898c05917e05203af9803b581dff0d915 /glep-0053.rst | |
parent | glep-0045: Mark Final since GLEP 1 now uses ISO 8601 dates (diff) | |
download | glep-c6fe2071a2e83be2203196ad7f9459941821a034.tar.gz glep-c6fe2071a2e83be2203196ad7f9459941821a034.tar.bz2 glep-c6fe2071a2e83be2203196ad7f9459941821a034.zip |
Rename all GLEPs to .rst
Diffstat (limited to 'glep-0053.rst')
-rw-r--r-- | glep-0053.rst | 98 |
1 files changed, 98 insertions, 0 deletions
diff --git a/glep-0053.rst b/glep-0053.rst new file mode 100644 index 0000000..bfd08c0 --- /dev/null +++ b/glep-0053.rst @@ -0,0 +1,98 @@ +GLEP: 53 +Title: Keywording scheme +Version: $Revision$ +Last-Modified: $Date$ +Author: Fabian Groffen <grobian@gentoo.org>, Diego Pettenò <flameeyes@gentoo.org> +Status: Final +Type: Standards Track +Content-Type: text/x-rst +Created: 11-Dec-2005 +Post-History: 13-Apr-2007 + + + +Abstract +======== + +This GLEP is a replacement of the keywording scheme from GLEP 22 +[#GLEP22]_. The current use of keywords is retained in favour of +4-tuple keywords. This GLEP defines how current keywords are to be +interpreted, and how future keywords should be constructed. + + +Motivation +========== + +Although the state of GLEP 22 [#GLEP22]_ is final, its keywording scheme +was never propagated through the tree. In fact, 4-tuple keywords are +not used at all. This GLEP defines a keywording scheme that is +compatible with the scheme that is currently in use. + + +Rationale +========= + +The Gentoo/Alt project deals with different Operating Systems and +architectures. Recently Gentoo/FreeBSD for Sparc was introduced after +support for x86 platforms. This yielded in another new keyword. +For these kind of platforms, a single field keyword is not enough to +properly describe the OS and architecture. While four fields in a +keyword are overkill, two fields in a keyword should be enough for +everyone. + + +Backwards Compatibility +======================= + +The proposed keywording scheme is fully compatible with the current +situation of the portage tree, this in contrast to GLEP 22. The +variables provided by GLEP 22 can't be extracted from the new keyword, +but since GLEP 22-style keywords aren't in the tree at the moment, that +is not a problem. The same information can be extracted from the +``CHOST`` variable, if necessary. No modifications to ebuilds will have +to be made. + + +Specification +============= + +Keywords will consist out of two parts separated by a hyphen (``-``). +The left hand part of the keyword is the architecture, such as `x86`, +`sparc` or `ppc`. The right hand part indicates the operating system or +distribution, such as `linux`, `macos`, `solaris` or `fbsd`. If the +right hand part is omitted, it implies the operating system/distribution +type is GNU/Linux. In such case the hyphen is also omitted. Examples +of such keywords are ``x86`` and ``sparc-fbsd``. This is fully +compatible with the current keywords used in the tree. Examples of +OS/distributions for the right hand side of the keyword are: + +:: + + (linux) GNU/Linux (Gentoo biased, but not fixed) + fbsd FreeBSD + macos Apple Mac OS + solaris Sun Solaris + +Both architecture as well as OS/distribution are lower-case ASCII +(alpha) numeric character sequences. A valid keyword matches the +following expression: + + ``[a-z0-9]+(-[a-z0-9]+)?`` + +Note that no limit on the length of both fields in the keyword are +imposed. However, we cannot overemphasize our preference to keep +keywords small and sensible. + + + +.. [#GLEP22] GLEP 22, New "keyword" system to incorporate various + userlands/kernels/archs, Goodyear, + (http://glep.gentoo.org/glep-0022.html) + + +Copyright +========= + +This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 +Unported License. To view a copy of this license, visit +http://creativecommons.org/licenses/by-sa/3.0/. |