1 |
commit: 1875c2d6483dca21b858de54c903554a652f931f |
2 |
Author: Ulrich Mueller <ulm <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sun May 1 18:54:51 2011 +0000 |
4 |
Commit: Jeremy Olexa <darkside <AT> gentoo <DOT> org> |
5 |
CommitDate: Tue May 3 21:00:45 2011 +0000 |
6 |
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/devmanual.git;a=commit;h=1875c2d6 |
7 |
|
8 |
Deprecate old-style virtuals. |
9 |
|
10 |
--- |
11 |
ebuild-writing/variables/text.xml | 7 --- |
12 |
general-concepts/dependencies/text.xml | 17 ------- |
13 |
general-concepts/virtuals/text.xml | 82 +++++++++----------------------- |
14 |
profiles/text.xml | 1 - |
15 |
profiles/virtuals/text.xml | 18 ------- |
16 |
5 files changed, 22 insertions(+), 103 deletions(-) |
17 |
|
18 |
diff --git a/ebuild-writing/variables/text.xml b/ebuild-writing/variables/text.xml |
19 |
index c78ca72..429e97e 100644 |
20 |
--- a/ebuild-writing/variables/text.xml |
21 |
+++ b/ebuild-writing/variables/text.xml |
22 |
@@ -232,13 +232,6 @@ Specifying the following variables is optional: |
23 |
<c>userpriv</c>. See <c>man 5 ebuild</c> for details. |
24 |
</ti> |
25 |
</tr> |
26 |
- <tr> |
27 |
- <ti><c>PROVIDE</c></ti> |
28 |
- <ti> |
29 |
- Any virtuals provided by this package, for example |
30 |
- <c>"virtual/editor virtual/emacs"</c>. |
31 |
- </ti> |
32 |
- </tr> |
33 |
</table> |
34 |
|
35 |
</body> |
36 |
|
37 |
diff --git a/general-concepts/dependencies/text.xml b/general-concepts/dependencies/text.xml |
38 |
index 671ccf8..ba4a46c 100644 |
39 |
--- a/general-concepts/dependencies/text.xml |
40 |
+++ b/general-concepts/dependencies/text.xml |
41 |
@@ -327,23 +327,6 @@ DEPEND="!build? ( |
42 |
</section> |
43 |
|
44 |
<section> |
45 |
-<title>Virtual Dependencies</title> |
46 |
-<body> |
47 |
- |
48 |
-<p> |
49 |
-To depend upon a virtual package, use <c>virtual/whatever</c> as the atom. |
50 |
-</p> |
51 |
- |
52 |
-<p> |
53 |
-Currently, you must not use any kind of version specification with virtuals <d/> |
54 |
-see <uri link="http://www.gentoo.org/proj/en/glep/glep-0037.html">GLEP 37</uri> |
55 |
-for details and a proposed solution. |
56 |
-</p> |
57 |
- |
58 |
-</body> |
59 |
-</section> |
60 |
- |
61 |
-<section> |
62 |
<title> |
63 |
Any of Many Dependencies |
64 |
</title> |
65 |
|
66 |
diff --git a/general-concepts/virtuals/text.xml b/general-concepts/virtuals/text.xml |
67 |
index 86bf815..ca522d0 100644 |
68 |
--- a/general-concepts/virtuals/text.xml |
69 |
+++ b/general-concepts/virtuals/text.xml |
70 |
@@ -1,91 +1,53 @@ |
71 |
<?xml version="1.0"?> |
72 |
-<guide self="general-concepts/viruals/"> |
73 |
+<guide self="general-concepts/virtuals/"> |
74 |
<chapter> |
75 |
<title>Virtuals</title> |
76 |
|
77 |
<body> |
78 |
<p> |
79 |
-Currently there exist two different forms of virtuals, our regular |
80 |
-<c>PROVIDE</c> type virtuals, and so called <e>new-style</e> virtuals. |
81 |
+Virtuals are merely packages that are in the category of <c>virtual</c>. They |
82 |
+use their dependency string to specify the providers for the virtual and should |
83 |
+not install any files. Since they are regular ebuilds, there can be several |
84 |
+versions of a virtual (which can be helpful when a package may be provided by |
85 |
+another in some versions, and not others <d/> see the perl virtuals for an |
86 |
+example of this). One other difference (besides not installing any files) is |
87 |
+that a virtual has an empty string for the value of the <c>LICENSE</c> and |
88 |
+<c>HOMEPAGE</c> variables. Since it installs no files, it really does not have |
89 |
+a license. |
90 |
</p> |
91 |
-</body> |
92 |
- |
93 |
-<section> |
94 |
-<title><e>Old-style</e> Virtuals</title> |
95 |
-<body> |
96 |
-<p> |
97 |
-<e>Old-style</e> virtuals are not really packages, but are something you can depend |
98 |
-upon and install. All <e>old-style</e> virtuals must have a category of |
99 |
-"virtual". In order to use an <e>old-style</e> virtual there are a few things |
100 |
-that need to be present in the tree: |
101 |
- |
102 |
-<ul> |
103 |
- <li> |
104 |
- Atleast one ebuild must <c>PROVIDE</c> the virtual <d/> see |
105 |
- <uri link="::ebuild-writing/variables#Optional Variables" /> |
106 |
- </li> |
107 |
- <li> |
108 |
- An entry in the virtuals file for each profile to list the default provider |
109 |
- </li> |
110 |
-</ul> |
111 |
- |
112 |
-<e>Old-style</e> virtuals are not as flexible as <e>new-style</e> virtuals |
113 |
-because there is no concept of a version. You can only depend upon a virtual, |
114 |
-but not a particular version of that virtual. |
115 |
-</p> |
116 |
-<p> |
117 |
-There are some things that are still only possible with old-style virtuals, |
118 |
-which is why they are still useful: |
119 |
- |
120 |
-<ul> |
121 |
- <li> |
122 |
- Packages providing the virtual can block the virtual, so you can ensure |
123 |
- nothing else is installed that also provides that virtual. |
124 |
- </li> |
125 |
- <li> |
126 |
- The ability to set a default in the profile for what the virtual should |
127 |
- pull in (without the need of pulling the package into the system set). |
128 |
- </li> |
129 |
-</ul> |
130 |
-</p> |
131 |
-</body> |
132 |
-</section> |
133 |
|
134 |
-<section> |
135 |
-<title><e>New-style</e> Virtuals</title> |
136 |
-<body> |
137 |
<p> |
138 |
-<e>New-style</e> virtuals are merely packages that are in the category of |
139 |
-<c>virtual</c>. They use their dependency string to specify the providers for |
140 |
-the virtual and should not install any files. Since they are regular ebuilds, |
141 |
-there can be several versions of a virtual (which can be helpful when a package |
142 |
-may be provided by another in some versions, and not others <d/> see the perl |
143 |
-virtuals for an example of this). One other difference (besides not installing |
144 |
-any files) is that a <e>new-style</e> virtual has an empty string for the value |
145 |
-of the <c>LICENSE</c> and <c>HOMEPAGE</c> variables. Since it installs no files, |
146 |
-it really does not have a license. |
147 |
+Before adding a new virtual, it should be discussed on <c>gentoo-dev</c>. |
148 |
</p> |
149 |
|
150 |
<p> |
151 |
-An example of a <e>new-style</e> virtual: |
152 |
+An example of a virtual: |
153 |
|
154 |
<codesample lang="ebuild"> |
155 |
+EAPI=4 |
156 |
+ |
157 |
DESCRIPTION="Virtual for C++ tr1 <type_traits>" |
158 |
HOMEPAGE="" |
159 |
SRC_URI="" |
160 |
+ |
161 |
LICENSE="" |
162 |
SLOT="0" |
163 |
KEYWORDS="alpha amd64 arm hppa ia64 mips ppc ppc64 s390 sparc x86 ~x86-fbsd" |
164 |
IUSE="" |
165 |
-RDEPEND="|| ( >=sys-devel/gcc-4.1 dev-libs/boost )" |
166 |
+ |
167 |
DEPEND="" |
168 |
+RDEPEND="|| ( >=sys-devel/gcc-4.1 dev-libs/boost )" |
169 |
</codesample> |
170 |
|
171 |
Looks familar...right? It should since its going to look just like a regular |
172 |
ebuild. |
173 |
</p> |
174 |
+ |
175 |
+<note> |
176 |
+The so-called <e>old-style</e> or <c>PROVIDE</c> type virtuals have been banned |
177 |
+from the Portage tree. |
178 |
+</note> |
179 |
</body> |
180 |
-</section> |
181 |
|
182 |
</chapter> |
183 |
</guide> |
184 |
|
185 |
diff --git a/profiles/text.xml b/profiles/text.xml |
186 |
index a8e6e2a..4db23c6 100644 |
187 |
--- a/profiles/text.xml |
188 |
+++ b/profiles/text.xml |
189 |
@@ -26,6 +26,5 @@ are also documented in <c>man portage</c>. |
190 |
<include href="updates/"/> |
191 |
<include href="use.desc/"/> |
192 |
<include href="use.mask/"/> |
193 |
-<include href="virtuals/"/> |
194 |
|
195 |
</guide> |
196 |
|
197 |
diff --git a/profiles/virtuals/text.xml b/profiles/virtuals/text.xml |
198 |
deleted file mode 100644 |
199 |
index 3446cbd..0000000 |
200 |
--- a/profiles/virtuals/text.xml |
201 |
+++ /dev/null |
202 |
@@ -1,18 +0,0 @@ |
203 |
-<?xml version="1.0"?> |
204 |
-<guide self="profiles/virtuals/"> |
205 |
-<chapter> |
206 |
-<title>Profiles <c>virtuals</c> Files</title> |
207 |
-<body> |
208 |
- |
209 |
-<p> |
210 |
-The <c>virtuals</c> files in <c>profiles/</c> control the default provider for |
211 |
-virtuals. It can be overridden in subprofiles for profile-specific defaults. |
212 |
-</p> |
213 |
- |
214 |
-<p> |
215 |
-Before adding a new virtual, it should be discussed on <c>gentoo-dev</c>. |
216 |
-</p> |
217 |
- |
218 |
-</body> |
219 |
-</chapter> |
220 |
-</guide> |