Gentoo Archives: gentoo-pms

From: "Ulrich Müller" <ulm@g.o>
To: gentoo-pms@l.g.o
Subject: [gentoo-pms] [PATCH 01/22] Add an EAPI 6 identical to EAPI 5.
Date: Thu, 15 Oct 2015 10:50:28
Message-Id: 1444906221-30505-2-git-send-email-ulm@gentoo.org
In Reply to: [gentoo-pms] EAPI 6 draft for review by "Ulrich Müller"
1 ---
2 dependencies.tex | 15 ++++--
3 eapi-differences.tex | 122 +++++++++++++++++++++++++++---------------------
4 eapis.tex | 4 +-
5 ebuild-env-commands.tex | 3 +-
6 ebuild-env-vars.tex | 12 +++--
7 ebuild-functions.tex | 28 +++++++----
8 ebuild-vars.tex | 12 +++--
9 merge.tex | 3 +-
10 pkg-mgr-commands.tex | 45 ++++++++++++------
11 pms.tex | 4 +-
12 profile-variables.tex | 3 +-
13 profiles.tex | 3 +-
14 12 files changed, 156 insertions(+), 98 deletions(-)
15
16 diff --git a/dependencies.tex b/dependencies.tex
17 index fcfce9b..8d3facb 100644
18 --- a/dependencies.tex
19 +++ b/dependencies.tex
20 @@ -88,7 +88,7 @@ be surrounded on both sides by whitespace, except at the start and end of the st
21
22 In particular, note that whitespace is not optional.
23
24 -\ChangeWhenAddingAnEAPI{5}
25 +\ChangeWhenAddingAnEAPI{6}
26 \begin{centertable}{EAPIs supporting \t{SRC\_URI} arrows} \label{tab:uri-arrows-table}
27 \begin{tabular}{ l l }
28 \toprule
29 @@ -101,11 +101,12 @@ In particular, note that whitespace is not optional.
30 \t{3} & Yes \\
31 \t{4} & Yes \\
32 \t{5} & Yes \\
33 + \t{6} & Yes \\
34 \bottomrule
35 \end{tabular}
36 \end{centertable}
37
38 -\ChangeWhenAddingAnEAPI{5}
39 +\ChangeWhenAddingAnEAPI{6}
40 \begin{centertable}{EAPIs supporting \t{REQUIRED\_USE ??}\ groups} \label{tab:at-most-one-of-table}
41 \begin{tabular}{ l l }
42 \toprule
43 @@ -118,6 +119,7 @@ In particular, note that whitespace is not optional.
44 \t{3} & No \\
45 \t{4} & No \\
46 \t{5} & Yes \\
47 + \t{6} & Yes \\
48 \bottomrule
49 \end{tabular}
50 \end{centertable}
51 @@ -188,7 +190,7 @@ manager must warn or error if this feature is used with an EAPI not supporting u
52
53 \note Order is important. The slot restriction must come before use dependencies.
54
55 -\ChangeWhenAddingAnEAPI{5}
56 +\ChangeWhenAddingAnEAPI{6}
57 \begin{centertable}{Support for \t{SLOT} dependencies and sub-slots in EAPIs}
58 \label{tab:slot-deps-table}
59 \begin{tabular}{ l l l }
60 @@ -203,11 +205,12 @@ manager must warn or error if this feature is used with an EAPI not supporting u
61 \t{3} & Named only & No \\
62 \t{4} & Named only & No \\
63 \t{5} & Named and operator & Yes \\
64 + \t{6} & Named and operator & Yes \\
65 \bottomrule
66 \end{tabular}
67 \end{centertable}
68
69 -\ChangeWhenAddingAnEAPI{5}
70 +\ChangeWhenAddingAnEAPI{6}
71 \begin{centertable}{EAPIs supporting \t{USE} dependencies} \label{tab:use-deps-table}
72 \begin{tabular}{ l l }
73 \toprule
74 @@ -220,6 +223,7 @@ manager must warn or error if this feature is used with an EAPI not supporting u
75 \t{3} & 2-style \\
76 \t{4} & 4-style \\
77 \t{5} & 4-style \\
78 + \t{6} & 4-style \\
79 \bottomrule
80 \end{tabular}
81 \end{centertable}
82 @@ -258,7 +262,7 @@ ignored by the package manager, so long as any blocked package will be uninstall
83 strong block must not be ignored. The mapping from one or two exclamation marks to strength is
84 described in table~\ref{tab:bang-strength-table}.
85
86 -\ChangeWhenAddingAnEAPI{5}
87 +\ChangeWhenAddingAnEAPI{6}
88 \begin{centertable}{Exclamation mark strengths for EAPIs} \label{tab:bang-strength-table}
89 \begin{tabular}{ l l l }
90 \toprule
91 @@ -272,6 +276,7 @@ described in table~\ref{tab:bang-strength-table}.
92 \t{3} & Weak & Strong \\
93 \t{4} & Weak & Strong \\
94 \t{5} & Weak & Strong \\
95 + \t{6} & Weak & Strong \\
96 \bottomrule
97 \end{tabular}
98 \end{centertable}
99 diff --git a/eapi-differences.tex b/eapi-differences.tex
100 index 255f428..0a8f9e1 100644
101 --- a/eapi-differences.tex
102 +++ b/eapi-differences.tex
103 @@ -2,10 +2,10 @@
104
105 \note This chapter is informative and for convenience only. Refer to the main text for specifics.
106
107 -\ChangeWhenAddingAnEAPI{5}
108 +\ChangeWhenAddingAnEAPI{6}
109 \begin{landscape}
110 \newcolumntype{P}[1]{>{\setlength{\rightskip}{0pt plus 1fil}}p{#1}}
111 -\begin{longtable}{llP{5em}P{5em}P{6em}P{6em}P{6em}P{6em}}
112 +\begin{longtable}{llP{5em}P{5em}P{6em}P{6em}P{6em}P{6em}P{6em}}
113 \caption{Features in EAPIs}\\
114 \toprule
115 \multicolumn{1}{c}{\b{Feature}} &
116 @@ -18,7 +18,8 @@
117 \multicolumn{1}{c}{2} &
118 \multicolumn{1}{c}{3} &
119 \multicolumn{1}{c}{4} &
120 -\multicolumn{1}{c}{5} \\
121 +\multicolumn{1}{c}{5} &
122 +\multicolumn{1}{c}{6} \\
123 \midrule
124 \endfirsthead
125 \midrule
126 @@ -32,7 +33,8 @@
127 \multicolumn{1}{c}{2} &
128 \multicolumn{1}{c}{3} &
129 \multicolumn{1}{c}{4} &
130 -\multicolumn{1}{c}{5} \\
131 +\multicolumn{1}{c}{5} &
132 +\multicolumn{1}{c}{6} \\
133 \midrule
134 \endhead
135 \midrule
136 @@ -41,67 +43,67 @@
137 \endlastfoot
138
139 Stable use masking/forcing & \compactfeatureref{stablemask} &
140 - No & No & No & No & No & Yes \\
141 + No & No & No & No & No & Yes & Yes \\
142
143 \t{IUSE} defaults & \compactfeatureref{iuse-defaults} &
144 - No & Yes & Yes & Yes & Yes & Yes \\
145 + No & Yes & Yes & Yes & Yes & Yes & Yes \\
146
147 \t{REQUIRED\_USE} & \compactfeatureref{required-use} &
148 - No & No & No & No & Yes & Yes \\
149 + No & No & No & No & Yes & Yes & Yes \\
150
151 \t{PROPERTIES} & \compactfeatureref{properties} &
152 - Optionally & Optionally & Optionally & Optionally & Yes & Yes \\
153 + Optionally & Optionally & Optionally & Optionally & Yes & Yes & Yes \\
154
155 \t{RDEPEND=DEPEND} & \compactfeatureref{rdepend-depend} &
156 - Yes & Yes & Yes & Yes & No & No \\
157 + Yes & Yes & Yes & Yes & No & No & No \\
158
159 \t{DEFINED\_PHASES} & \compactfeatureref{defined-phases} &
160 - Optionally & Optionally & Optionally & Optionally & Yes & Yes \\
161 + Optionally & Optionally & Optionally & Optionally & Yes & Yes & Yes \\
162
163 \t{??\ ( )} groups & \compactfeatureref{at-most-one-of} &
164 - No & No & No & No & No & Yes \\
165 + No & No & No & No & No & Yes & Yes \\
166
167 \t{SRC\_URI} arrows & \compactfeatureref{src-uri-arrows} &
168 - No & No & Yes & Yes & Yes & Yes \\
169 + No & No & Yes & Yes & Yes & Yes & Yes \\
170
171 Slot dependencies & \compactfeatureref{slot-deps} &
172 - No & Named & Named & Named & Named & Named and Operator \\
173 + No & Named & Named & Named & Named & Named and Operator & Named and Operator \\
174
175 Sub-slots & \compactfeatureref{sub-slot} &
176 - No & No & No & No & No & Yes \\
177 + No & No & No & No & No & Yes & Yes \\
178
179 Use dependencies & \compactfeatureref{use-deps} &
180 - No & No & 2-style & 2-style & 4-style & 4-style \\
181 + No & No & 2-style & 2-style & 4-style & 4-style & 4-style \\
182
183 \t{!} blockers & \compactfeatureref{bang-strength} &
184 - Unspecified & Unspecified & Weak & Weak & Weak & Weak \\
185 + Unspecified & Unspecified & Weak & Weak & Weak & Weak & Weak \\
186
187 \t{!!} blockers & \compactfeatureref{bang-strength} &
188 - Forbidden & Forbidden & Strong & Strong & Strong & Strong \\
189 + Forbidden & Forbidden & Strong & Strong & Strong & Strong & Strong \\
190
191 \t{S} to \t{WORKDIR} fallback & \compactfeatureref{s-workdir-fallback} &
192 - Always & Always & Always & Always & Conditional & Conditional \\
193 + Always & Always & Always & Always & Conditional & Conditional & Conditional \\
194
195 \t{pkg\_pretend} & \compactfeatureref{pkg-pretend} &
196 - No & No & No & No & Yes & Yes \\
197 + No & No & No & No & Yes & Yes & Yes \\
198
199 \t{src\_prepare} & \compactfeatureref{src-prepare} &
200 - No & No & Yes & Yes & Yes & Yes \\
201 + No & No & Yes & Yes & Yes & Yes & Yes \\
202
203 \t{src\_configure} & \compactfeatureref{src-configure} &
204 - No & No & Yes & Yes & Yes & Yes \\
205 + No & No & Yes & Yes & Yes & Yes & Yes \\
206
207 \t{src\_compile} style & \compactfeatureref{src-compile} &
208 - 0 & 1 & 2 & 2 & 2 & 2 \\
209 + 0 & 1 & 2 & 2 & 2 & 2 & 2 \\
210
211 Parallel tests & \compactfeatureref{parallel-tests} &
212 - No & No & No & No & No & Yes \\
213 + No & No & No & No & No & Yes & Yes \\
214
215 \t{src\_install} style & \compactfeatureref{src-install} &
216 - no-op & no-op & no-op & no-op & 4 & 4 \\
217 + no-op & no-op & no-op & no-op & 4 & 4 & 4 \\
218
219 \t{pkg\_info} & \compactfeatureref{pkg-info} &
220 - Installed & Installed & Installed & Installed & Both & Both \\
221 + Installed & Installed & Installed & Installed & Both & Both & Both \\
222
223 \t{default\_} phase functions & \compactfeatureref{default-phase-funcs} &
224 None & None &
225 @@ -110,91 +112,95 @@ Parallel tests & \compactfeatureref{parallel-tests} &
226 \t{pkg\_nofetch}, \t{src\_unpack}, \t{src\_prepare}, \t{src\_configure},
227 \t{src\_compile}, \t{src\_install}, \t{src\_test} &
228 \t{pkg\_nofetch}, \t{src\_unpack}, \t{src\_prepare}, \t{src\_configure},
229 + \t{src\_compile}, \t{src\_install}, \t{src\_test} &
230 + \t{pkg\_nofetch}, \t{src\_unpack}, \t{src\_prepare}, \t{src\_configure},
231 \t{src\_compile}, \t{src\_install}, \t{src\_test} \\
232
233 \t{AA} & \compactfeatureref{aa} &
234 - Yes & Yes & Yes & Yes & No & No \\
235 + Yes & Yes & Yes & Yes & No & No & No \\
236
237 \t{KV} & \compactfeatureref{kv} &
238 - Yes & Yes & Yes & Yes & No & No \\
239 + Yes & Yes & Yes & Yes & No & No & No \\
240
241 \t{EBUILD\_PHASE\_FUNC} & \compactfeatureref{ebuild-phase-func} &
242 - No & No & No & No & No & Yes \\
243 + No & No & No & No & No & Yes & Yes \\
244
245 \t{MERGE\_TYPE} & \compactfeatureref{merge-type} &
246 - No & No & No & No & Yes & Yes \\
247 + No & No & No & No & Yes & Yes & Yes \\
248
249 Profile \t{IUSE} injection & \compactfeatureref{profile-iuse-inject} &
250 - No & No & No & No & No & Yes \\
251 + No & No & No & No & No & Yes & Yes \\
252
253 \t{REPLACING\_VERSIONS} & \compactfeatureref{replace-version-vars} &
254 - No & No & No & No & Yes & Yes \\
255 + No & No & No & No & Yes & Yes & Yes \\
256
257 \t{REPLACED\_BY\_VERSION} & \compactfeatureref{replace-version-vars} &
258 - No & No & No & No & Yes & Yes \\
259 + No & No & No & No & Yes & Yes & Yes \\
260
261 \t{EPREFIX}, \t{ED}, \t{EROOT} & \compactfeatureref{offset-prefix-vars} &
262 - No & No & No & Yes & Yes & Yes \\
263 + No & No & No & Yes & Yes & Yes & Yes \\
264
265 \t{find} is GNU? & \compactfeatureref{gnu-find} &
266 - Undefined & Undefined & Undefined & Undefined & Undefined & Yes \\
267 + Undefined & Undefined & Undefined & Undefined & Undefined & Yes & Yes \\
268
269 Most utilities die & \compactfeatureref{die-on-failure} &
270 - No & No & No & No & Yes & Yes \\
271 + No & No & No & No & Yes & Yes & Yes \\
272
273 \t{nonfatal} & \compactfeatureref{nonfatal} &
274 - No & No & No & No & Yes & Yes \\
275 + No & No & No & No & Yes & Yes & Yes \\
276
277 \t{dohard} & \compactfeatureref{banned-commands} &
278 - Yes & Yes & Yes & Yes & Banned & Banned \\
279 + Yes & Yes & Yes & Yes & Banned & Banned & Banned \\
280
281 \t{dosed} & \compactfeatureref{banned-commands} &
282 - Yes & Yes & Yes & Yes & Banned & Banned \\
283 + Yes & Yes & Yes & Yes & Banned & Banned & Banned \\
284
285 Option \t{-{}-host-root} & \compactfeatureref{host-root-option} &
286 - No & No & No & No & No & Yes \\
287 + No & No & No & No & No & Yes & Yes \\
288
289 \t{econf} arguments & \compactfeatureref{econf-options} &
290 - & & & & disable dependency tracking & disable dependency tracking, disable silent rules \\
291 + & & & & disable dependency tracking &
292 + disable dependency tracking, disable silent rules &
293 + disable dependency tracking, disable silent rules \\
294
295 \t{dodoc -r} & \compactfeatureref{dodoc} &
296 - No & No & No & No & Yes & Yes \\
297 + No & No & No & No & Yes & Yes & Yes \\
298
299 \t{doheader} & \compactfeatureref{doheader} &
300 - No & No & No & No & No & Yes \\
301 + No & No & No & No & No & Yes & Yes \\
302
303 \t{doins} handles symlinks & \compactfeatureref{doins} &
304 - No & No & No & No & Yes & Yes \\
305 + No & No & No & No & Yes & Yes & Yes \\
306
307 \t{doman} languages & \compactfeatureref{doman-langs} &
308 - No & No & Yes & Yes & Yes & Yes \\
309 + No & No & Yes & Yes & Yes & Yes & Yes \\
310
311 \t{doman -i18n} precedence & \compactfeatureref{doman-langs} &
312 - N/A & N/A & No & No & Yes & Yes \\
313 + N/A & N/A & No & No & Yes & Yes & Yes \\
314
315 \t{new*} support stdin & \compactfeatureref{newfoo-stdin} &
316 - No & No & No & No & No & Yes \\
317 + No & No & No & No & No & Yes & Yes \\
318
319 Controllable compression & \compactfeatureref{docompress} &
320 - No & No & No & No & Yes & Yes \\
321 + No & No & No & No & Yes & Yes & Yes \\
322
323 \t{docompress} & \compactfeatureref{docompress} &
324 - No & No & No & No & Yes & Yes \\
325 + No & No & No & No & Yes & Yes & Yes \\
326
327 \t{use\_with} empty third arg & \compactfeatureref{use-with} &
328 - No & No & No & No & Yes & Yes \\
329 + No & No & No & No & Yes & Yes & Yes \\
330
331 \t{usex} & \compactfeatureref{usex} &
332 - No & No & No & No & No & Yes \\
333 + No & No & No & No & No & Yes & Yes \\
334
335 \t{unpack} support for \t{xz}? & \compactfeatureref{unpack-extensions} &
336 - No & No & No & Yes & Yes & Yes \\
337 + No & No & No & Yes & Yes & Yes & Yes \\
338
339 \t{default} function & \compactfeatureref{default-func} &
340 - No & No & Yes & Yes & Yes & Yes \\
341 + No & No & Yes & Yes & Yes & Yes & Yes \\
342
343 File mtimes preserved & \compactfeatureref{mtime-preserve} &
344 - Undefined & Undefined & Undefined & Yes & Yes & Yes \\
345 + Undefined & Undefined & Undefined & Yes & Yes & Yes & Yes \\
346
347 \end{longtable}
348 \end{landscape}
349 @@ -294,7 +300,15 @@ EAPI 5 is EAPI 4 with the following changes:
350 \item \t{usex} support, \featureref{usex}.
351 \end{compactitem}
352
353 -\ChangeWhenAddingAnEAPI{5}
354 +\section*{EAPI 6}
355 +
356 +EAPI 6 is EAPI 5 with the following changes:
357 +
358 +\begin{compactitem}
359 +\item None
360 +\end{compactitem}
361 +
362 +\ChangeWhenAddingAnEAPI{6}
363
364 % vim: set filetype=tex fileencoding=utf8 et tw=100 spell spelllang=en :
365
366 diff --git a/eapis.tex b/eapis.tex
367 index 6b03d2b..bb860f4 100644
368 --- a/eapis.tex
369 +++ b/eapis.tex
370 @@ -19,7 +19,7 @@ EAPIs are also used for profile directories, as described in section~\ref{sec:pr
371
372 The following EAPIs are defined by this specification:
373
374 -\ChangeWhenAddingAnEAPI{5}
375 +\ChangeWhenAddingAnEAPI{6}
376 \begin{description}
377 \item[0] The `original' base EAPI.
378 \item[1] EAPI `1' contains a number of extensions to EAPI `0'. Except where explicitly noted, it is
379 @@ -32,6 +32,8 @@ The following EAPIs are defined by this specification:
380 in all other ways identical to EAPI `3'.
381 \item[5] EAPI `5' contains a number of extensions to EAPI `4'. Except where explicitly noted, it is
382 in all other ways identical to EAPI `4'.
383 +\item[6] EAPI `6' contains a number of extensions to EAPI `5'. Except where explicitly noted, it is
384 + in all other ways identical to EAPI `5'.
385 \end{description}
386
387 Except where explicitly noted, everything in this specification
388 diff --git a/ebuild-env-commands.tex b/ebuild-env-commands.tex
389 index 20771bd..8b2c146 100644
390 --- a/ebuild-env-commands.tex
391 +++ b/ebuild-env-commands.tex
392 @@ -35,7 +35,7 @@ The following commands must always be available in the ebuild environment:
393 table~\ref{tab:system-commands-table} as requiring GNU find.
394 \end{compactitem}
395
396 -\ChangeWhenAddingAnEAPI{5}
397 +\ChangeWhenAddingAnEAPI{6}
398 \begin{centertable}{\t{find} implementation for EAPIs} \label{tab:system-commands-table}
399 \begin{tabular}{ l l }
400 \toprule
401 @@ -48,6 +48,7 @@ The following commands must always be available in the ebuild environment:
402 \t{3} & Undefined \\
403 \t{4} & Undefined \\
404 \t{5} & Yes \\
405 + \t{6} & Yes \\
406 \bottomrule
407 \end{tabular}
408 \end{centertable}
409 diff --git a/ebuild-env-vars.tex b/ebuild-env-vars.tex
410 index d387aca..8946157 100644
411 --- a/ebuild-env-vars.tex
412 +++ b/ebuild-env-vars.tex
413 @@ -225,7 +225,7 @@ variable.
414 \end{longtable}
415 \end{landscape}
416
417 -\ChangeWhenAddingAnEAPI{5}
418 +\ChangeWhenAddingAnEAPI{6}
419 \begin{centertable}{EAPIs supporting various added env variables} \label{tab:added-env-vars-table}
420 \begin{tabular}{ l l l l l }
421 \toprule
422 @@ -241,11 +241,12 @@ variable.
423 \t{3} & No & No & No & No \\
424 \t{4} & Yes & Yes & Yes & No \\
425 \t{5} & Yes & Yes & Yes & Yes \\
426 + \t{6} & Yes & Yes & Yes & Yes \\
427 \bottomrule
428 \end{tabular}
429 \end{centertable}
430
431 -\ChangeWhenAddingAnEAPI{5}
432 +\ChangeWhenAddingAnEAPI{6}
433 \begin{centertable}{EAPIs supporting various removed env variables} \label{tab:removed-env-vars-table}
434 \begin{tabular}{ l l l }
435 \toprule
436 @@ -259,11 +260,12 @@ variable.
437 \t{3} & Yes & Yes \\
438 \t{4} & No & No \\
439 \t{5} & No & No \\
440 + \t{6} & No & No \\
441 \bottomrule
442 \end{tabular}
443 \end{centertable}
444
445 -\ChangeWhenAddingAnEAPI{5}
446 +\ChangeWhenAddingAnEAPI{6}
447 \begin{centertable}{EAPIs supporting offset-prefix env variables}
448 \label{tab:offset-env-vars-table}
449 \begin{tabular}{ l l l l }
450 @@ -279,6 +281,7 @@ variable.
451 \t{3} & Yes & Yes & Yes \\
452 \t{4} & Yes & Yes & Yes \\
453 \t{5} & Yes & Yes & Yes \\
454 + \t{6} & Yes & Yes & Yes \\
455 \bottomrule
456 \end{tabular}
457 \end{centertable}
458 @@ -379,7 +382,7 @@ contain at most one value.
459 \subsection{Offset-prefix variables \t{EPREFIX}, \t{EROOT} and \t{ED}}
460 \label{sec:offset-vars}
461
462 -\ChangeWhenAddingAnEAPI{5}
463 +\ChangeWhenAddingAnEAPI{6}
464 \begin{centertable}{EAPIs supporting offset-prefix}
465 \label{tab:offset-support-table}
466 \begin{tabular}{ l l }
467 @@ -393,6 +396,7 @@ contain at most one value.
468 \t{3} & Yes \\
469 \t{4} & Yes \\
470 \t{5} & Yes \\
471 + \t{6} & Yes \\
472 \bottomrule
473 \end{tabular}
474 \end{centertable}
475 diff --git a/ebuild-functions.tex b/ebuild-functions.tex
476 index 480ccda..60bd1e5 100644
477 --- a/ebuild-functions.tex
478 +++ b/ebuild-functions.tex
479 @@ -44,7 +44,7 @@ fallback to \t{WORKDIR} is used:
480 in \t{DEFINED\_PHASES}.
481 \end{compactitem}
482
483 -\ChangeWhenAddingAnEAPI{5}
484 +\ChangeWhenAddingAnEAPI{6}
485 \begin{centertable}{EAPIs with \t{S} to \t{WORKDIR} fallbacks} \label{tab:s-fallback-table}
486 \begin{tabular}{ l l }
487 \toprule
488 @@ -57,6 +57,7 @@ fallback to \t{WORKDIR} is used:
489 \t{3} & Always \\
490 \t{4} & Conditional error \\
491 \t{5} & Conditional error \\
492 + \t{6} & Conditional error \\
493 \bottomrule
494 \end{tabular}
495 \end{centertable}
496 @@ -79,7 +80,7 @@ before the next phase is executed.
497
498 \t{pkg\_pretend} must not write to the filesystem.
499
500 -\ChangeWhenAddingAnEAPI{5}
501 +\ChangeWhenAddingAnEAPI{6}
502 \begin{centertable}{EAPIs supporting \t{pkg\_pretend}} \label{tab:pkg-pretend-table}
503 \begin{tabular}{ l l }
504 \toprule
505 @@ -92,6 +93,7 @@ before the next phase is executed.
506 \t{3} & No \\
507 \t{4} & Yes \\
508 \t{5} & Yes \\
509 + \t{6} & Yes \\
510 \bottomrule
511 \end{tabular}
512 \end{centertable}
513 @@ -135,7 +137,7 @@ implementation does nothing.
514 The initial working directory is \t{S}, with an error or fallback to \t{WORKDIR} as discussed in
515 section~\ref{sec:s-to-workdir-fallback}.
516
517 -\ChangeWhenAddingAnEAPI{5}
518 +\ChangeWhenAddingAnEAPI{6}
519 \begin{centertable}{EAPIs supporting \t{src\_prepare}} \label{tab:src-prepare-table}
520 \begin{tabular}{ l l }
521 \toprule
522 @@ -148,6 +150,7 @@ section~\ref{sec:s-to-workdir-fallback}.
523 \t{3} & Yes \\
524 \t{4} & Yes \\
525 \t{5} & Yes \\
526 + \t{6} & Yes \\
527 \bottomrule
528 \end{tabular}
529 \end{centertable}
530 @@ -172,7 +175,7 @@ src_configure() {
531 }
532 \end{verbatim}
533
534 -\ChangeWhenAddingAnEAPI{5}
535 +\ChangeWhenAddingAnEAPI{6}
536 \begin{centertable}{EAPIs supporting \t{src\_configure}} \label{tab:src-configure-table}
537 \begin{tabular}{ l l }
538 \toprule
539 @@ -185,6 +188,7 @@ src_configure() {
540 \t{3} & Yes \\
541 \t{4} & Yes \\
542 \t{5} & Yes \\
543 + \t{6} & Yes \\
544 \bottomrule
545 \end{tabular}
546 \end{centertable}
547 @@ -240,7 +244,7 @@ src_compile() {
548 }
549 \end{verbatim}
550
551 -\ChangeWhenAddingAnEAPI{5}
552 +\ChangeWhenAddingAnEAPI{6}
553 \begin{centertable}{\t{src\_compile} behaviour for EAPIs} \label{tab:src-compile-table}
554 \begin{tabular}{ l l }
555 \toprule
556 @@ -253,6 +257,7 @@ src_compile() {
557 \t{3} & 2 \\
558 \t{4} & 2 \\
559 \t{5} & 2 \\
560 + \t{6} & 2 \\
561 \bottomrule
562 \end{tabular}
563 \end{centertable}
564 @@ -275,7 +280,7 @@ parallel tests, the \t{emake} command must be called with option \t{-j1}.
565 The \t{src\_test} function may be disabled by \t{RESTRICT}\@. See section~\ref{sec:restrict}. It may
566 be disabled by user too, using a PM-specific mechanism.
567
568 -\ChangeWhenAddingAnEAPI{5}
569 +\ChangeWhenAddingAnEAPI{6}
570 \begin{centertable}{\t{src\_test} behaviour for EAPIs} \label{tab:src-test-table}
571 \begin{tabular}{ l l }
572 \toprule
573 @@ -288,6 +293,7 @@ be disabled by user too, using a PM-specific mechanism.
574 \t{3} & No \\
575 \t{4} & No \\
576 \t{5} & Yes \\
577 + \t{6} & Yes \\
578 \bottomrule
579 \end{tabular}
580 \end{centertable}
581 @@ -328,7 +334,7 @@ src_install() {
582 For other EAPIs, the default implementation used when the ebuild lacks the \t{src\_install} function
583 is a no-op.
584
585 -\ChangeWhenAddingAnEAPI{5}
586 +\ChangeWhenAddingAnEAPI{6}
587 \begin{centertable}{\t{src\_install} behaviour for EAPIs} \label{tab:src-install-table}
588 \begin{tabular}{ l l }
589 \toprule
590 @@ -341,6 +347,7 @@ is a no-op.
591 \t{3} & no-op \\
592 \t{4} & 4 \\
593 \t{5} & 4 \\
594 + \t{6} & 4 \\
595 \bottomrule
596 \end{tabular}
597 \end{centertable}
598 @@ -404,7 +411,7 @@ that dependencies may not be installed.
599
600 \t{pkg\_info} must not write to the filesystem.
601
602 -\ChangeWhenAddingAnEAPI{5}
603 +\ChangeWhenAddingAnEAPI{6}
604 \begin{centertable}{EAPIs supporting \t{pkg\_info} on non-installed packages} \label{tab:pkg-info-table}
605 \begin{tabular}{ l l }
606 \toprule
607 @@ -417,6 +424,7 @@ that dependencies may not be installed.
608 \t{3} & No \\
609 \t{4} & Yes \\
610 \t{5} & Yes \\
611 + \t{6} & Yes \\
612 \bottomrule
613 \end{tabular}
614 \end{centertable}
615 @@ -439,7 +447,7 @@ named \t{default\_}(phase) that behaves as the default implementation for that E
616 when executing any ebuild phase listed in the table. Ebuilds must not call these functions except
617 when in the phase in question.
618
619 -\ChangeWhenAddingAnEAPI{5}
620 +\ChangeWhenAddingAnEAPI{6}
621 \begin{centertable}{EAPIs supporting \t{default\_} phase functions} \label{tab:default-phase-function-table}
622 \begin{tabular}{ l >{\setlength{\rightskip}{0pt plus 1fil}}p{30em} }
623 \toprule
624 @@ -456,6 +464,8 @@ when in the phase in question.
625 \t{src\_compile}, \t{src\_install}, \t{src\_test} \\
626 \t{5} & \t{pkg\_nofetch}, \t{src\_unpack}, \t{src\_prepare}, \t{src\_configure},
627 \t{src\_compile}, \t{src\_install}, \t{src\_test} \\
628 + \t{6} & \t{pkg\_nofetch}, \t{src\_unpack}, \t{src\_prepare}, \t{src\_configure},
629 + \t{src\_compile}, \t{src\_install}, \t{src\_test} \\
630 \bottomrule
631 \end{tabular}
632 \end{centertable}
633 diff --git a/ebuild-vars.tex b/ebuild-vars.tex
634 index 9842557..0bba597 100644
635 --- a/ebuild-vars.tex
636 +++ b/ebuild-vars.tex
637 @@ -84,7 +84,7 @@ Ebuilds may define any of the following variables:
638 \item[PDEPEND] See section~\ref{sec:dependencies}.
639 \end{description}
640
641 -\ChangeWhenAddingAnEAPI{5}
642 +\ChangeWhenAddingAnEAPI{6}
643 \begin{centertable}{EAPIs supporting \t{IUSE} defaults} \label{tab:iuse-defaults-table}
644 \begin{tabular}{ l l }
645 \toprule
646 @@ -97,11 +97,12 @@ Ebuilds may define any of the following variables:
647 \t{3} & Yes \\
648 \t{4} & Yes \\
649 \t{5} & Yes \\
650 + \t{6} & Yes \\
651 \bottomrule
652 \end{tabular}
653 \end{centertable}
654
655 -\ChangeWhenAddingAnEAPI{5}
656 +\ChangeWhenAddingAnEAPI{6}
657 \begin{centertable}{EAPIs supporting various ebuild-defined variables}
658 \label{tab:optional-vars-table}
659 \begin{tabular}{ l l l }
660 @@ -116,6 +117,7 @@ Ebuilds may define any of the following variables:
661 \t{3} & Optionally & No \\
662 \t{4} & Yes & Yes \\
663 \t{5} & Yes & Yes \\
664 + \t{6} & Yes & Yes \\
665 \bottomrule
666 \end{tabular}
667 \end{centertable}
668 @@ -183,7 +185,7 @@ any \t{DEPEND} or \t{RDEPEND} set in an eclass does not change the implicit \t{R
669 the ebuild portion, and any \t{DEPEND} value set in an eclass does not get treated as being part of
670 \t{RDEPEND}.
671
672 -\ChangeWhenAddingAnEAPI{5}
673 +\ChangeWhenAddingAnEAPI{6}
674 \begin{centertable}{EAPIs with \t{RDEPEND=DEPEND} Default} \label{tab:rdepend-depend-table}
675 \begin{tabular}{ l l }
676 \toprule
677 @@ -196,6 +198,7 @@ the ebuild portion, and any \t{DEPEND} value set in an eclass does not get treat
678 \t{3} & Yes \\
679 \t{4} & No \\
680 \t{5} & No \\
681 + \t{6} & No \\
682 \bottomrule
683 \end{tabular}
684 \end{centertable}
685 @@ -229,7 +232,7 @@ this variable defined, and must treat an empty string as ``this information is n
686 \note Thus, by extension of section~\ref{sec:metadata-invariance}, phase functions must not be defined
687 based upon any variant condition.
688
689 -\ChangeWhenAddingAnEAPI{5}
690 +\ChangeWhenAddingAnEAPI{6}
691 \begin{centertable}{EAPIs supporting \t{DEFINED\_PHASES}} \label{tab:defined-phases-table}
692 \begin{tabular}{ l l }
693 \toprule
694 @@ -242,6 +245,7 @@ based upon any variant condition.
695 \t{3} & Optionally \\
696 \t{4} & Yes \\
697 \t{5} & Yes \\
698 + \t{6} & Yes \\
699 \bottomrule
700 \end{tabular}
701 \end{centertable}
702 diff --git a/merge.tex b/merge.tex
703 index c212294..1180c8c 100644
704 --- a/merge.tex
705 +++ b/merge.tex
706 @@ -86,7 +86,7 @@ held under the original image directory.
707 In other EAPIs, the behaviour with respect to file modification times
708 is undefined.
709
710 -\ChangeWhenAddingAnEAPI{5}
711 +\ChangeWhenAddingAnEAPI{6}
712 \begin{centertable}{Preservation of file modification times (mtimes)}
713 \label{tab:mtime-preserve}
714 \begin{tabular}{ l l }
715 @@ -100,6 +100,7 @@ is undefined.
716 \t{3} & Yes \\
717 \t{4} & Yes \\
718 \t{5} & Yes \\
719 + \t{6} & Yes \\
720 \bottomrule
721 \end{tabular}
722 \end{centertable}
723 diff --git a/pkg-mgr-commands.tex b/pkg-mgr-commands.tex
724 index 1884a5c..c614664 100644
725 --- a/pkg-mgr-commands.tex
726 +++ b/pkg-mgr-commands.tex
727 @@ -23,7 +23,7 @@ The following commands affect this behaviour:
728 table~\ref{tab:commands-die-table} as supporting \t{nonfatal}.
729 \end{description}
730
731 -\ChangeWhenAddingAnEAPI{5}
732 +\ChangeWhenAddingAnEAPI{6}
733 \begin{centertable}{EAPI Command Failure Behaviour} \label{tab:commands-die-table}
734 \begin{tabular}{ l l l }
735 \toprule
736 @@ -37,6 +37,7 @@ The following commands affect this behaviour:
737 \t{3} & Non-zero exit & No \\
738 \t{4} & Aborts & Yes \\
739 \t{5} & Aborts & Yes \\
740 + \t{6} & Aborts & Yes \\
741 \bottomrule
742 \end{tabular}
743 \end{centertable}
744 @@ -47,7 +48,7 @@ The following commands affect this behaviour:
745 \featurelabel{banned-commands} Some commands are banned in some EAPIs. If a banned command is
746 called, the package manager must abort the build process indicating an error.
747
748 -\ChangeWhenAddingAnEAPI{5}
749 +\ChangeWhenAddingAnEAPI{6}
750 \begin{centertable}{Banned commands} \label{tab:banned-commands-table}
751 \begin{tabular}{ l l l }
752 \toprule
753 @@ -63,6 +64,7 @@ called, the package manager must abort the build process indicating an error.
754 \t{3} & No & No \\
755 \t{4} & Yes & Yes \\
756 \t{5} & Yes & Yes \\
757 + \t{6} & Yes & Yes \\
758 \bottomrule
759 \end{tabular}
760 \end{centertable}
761 @@ -159,7 +161,7 @@ current phase function has returned.
762 in the output of \t{configure -{}-help}.
763 \end{itemize}
764
765 - \ChangeWhenAddingAnEAPI{5}
766 + \ChangeWhenAddingAnEAPI{6}
767 \begin{centertable}{Extra \t{econf} arguments for EAPIs} \label{tab:econf-options-table}
768 \begin{tabular}{ l l l }
769 \toprule
770 @@ -173,6 +175,7 @@ current phase function has returned.
771 \t{3} & No & No \\
772 \t{4} & Yes & No \\
773 \t{5} & Yes & Yes \\
774 + \t{6} & Yes & Yes \\
775 \bottomrule
776 \end{tabular}
777 \end{centertable}
778 @@ -436,7 +439,7 @@ can be extended or reduced (see below). The options that can be passed to \t{doh
779
780 \end{description}
781
782 -\ChangeWhenAddingAnEAPI{5}
783 +\ChangeWhenAddingAnEAPI{6}
784 \begin{centertable}{EAPIs supporting \t{dodoc -r}} \label{tab:dodoc-table}
785 \begin{tabular}{ l l }
786 \toprule
787 @@ -449,11 +452,12 @@ can be extended or reduced (see below). The options that can be passed to \t{doh
788 \t{3} & No \\
789 \t{4} & Yes \\
790 \t{5} & Yes \\
791 + \t{6} & Yes \\
792 \bottomrule
793 \end{tabular}
794 \end{centertable}
795
796 -\ChangeWhenAddingAnEAPI{5}
797 +\ChangeWhenAddingAnEAPI{6}
798 \begin{centertable}{EAPIs supporting \t{doheader} and \t{newheader}} \label{tab:doheader-table}
799 \begin{tabular}{ l l }
800 \toprule
801 @@ -466,11 +470,12 @@ can be extended or reduced (see below). The options that can be passed to \t{doh
802 \t{3} & No \\
803 \t{4} & No \\
804 \t{5} & Yes \\
805 + \t{6} & Yes \\
806 \bottomrule
807 \end{tabular}
808 \end{centertable}
809
810 -\ChangeWhenAddingAnEAPI{5}
811 +\ChangeWhenAddingAnEAPI{6}
812 \begin{centertable}{EAPIs supporting symlinks for \t{doins}} \label{tab:doins-table}
813 \begin{tabular}{ l l }
814 \toprule
815 @@ -483,11 +488,12 @@ can be extended or reduced (see below). The options that can be passed to \t{doh
816 \t{3} & No \\
817 \t{4} & Yes \\
818 \t{5} & Yes \\
819 + \t{6} & Yes \\
820 \bottomrule
821 \end{tabular}
822 \end{centertable}
823
824 -\ChangeWhenAddingAnEAPI{5}
825 +\ChangeWhenAddingAnEAPI{6}
826 \begin{centertable}{\t{doman} language support options for EAPIs}
827 \label{tab:doman-table}
828 \begin{tabular}{ l l l }
829 @@ -502,11 +508,12 @@ can be extended or reduced (see below). The options that can be passed to \t{doh
830 \t{3} & Yes & No \\
831 \t{4} & Yes & Yes \\
832 \t{5} & Yes & Yes \\
833 + \t{6} & Yes & Yes \\
834 \bottomrule
835 \end{tabular}
836 \end{centertable}
837
838 -\ChangeWhenAddingAnEAPI{5}
839 +\ChangeWhenAddingAnEAPI{6}
840 \begin{centertable}{EAPIs supporting stdin for \t{new*} commands} \label{tab:newfoo-stdin-table}
841 \begin{tabular}{ l l }
842 \toprule
843 @@ -519,11 +526,12 @@ can be extended or reduced (see below). The options that can be passed to \t{doh
844 \t{3} & No \\
845 \t{4} & No \\
846 \t{5} & Yes \\
847 + \t{6} & Yes \\
848 \bottomrule
849 \end{tabular}
850 \end{centertable}
851
852 -\ChangeWhenAddingAnEAPI{5}
853 +\ChangeWhenAddingAnEAPI{6}
854 \begin{centertable}{EAPIs supporting \t{-{}-host-root} for \t{*\_version} commands}
855 \label{tab:foo-version-host-root-table}
856 \begin{tabular}{ l l }
857 @@ -537,6 +545,7 @@ can be extended or reduced (see below). The options that can be passed to \t{doh
858 \t{3} & No \\
859 \t{4} & No \\
860 \t{5} & Yes \\
861 + \t{6} & Yes \\
862 \bottomrule
863 \end{tabular}
864 \end{centertable}
865 @@ -626,7 +635,7 @@ exclusion list. Otherwise, add each argument to the inclusion list. Only availab
866 in table~\ref{tab:compression-table} as supporting \t{docompress}.
867 \end{description}
868
869 -\ChangeWhenAddingAnEAPI{5}
870 +\ChangeWhenAddingAnEAPI{6}
871 \begin{centertable}{EAPIs supporting controllable compression} \label{tab:compression-table}
872 \begin{tabular}{ l l l }
873 \toprule
874 @@ -640,6 +649,7 @@ in table~\ref{tab:compression-table} as supporting \t{docompress}.
875 \t{3} & No & No \\
876 \t{4} & Yes & Yes \\
877 \t{5} & Yes & Yes \\
878 + \t{6} & Yes & Yes \\
879 \bottomrule
880 \end{tabular}
881 \end{centertable}
882 @@ -678,7 +688,7 @@ either behaviour is undefined or it is an error as decided by table~\ref{tab:use
883 Only available in EAPIs listed in table~\ref{tab:usex-table} as supporting \t{usex}.
884 \end{description}
885
886 -\ChangeWhenAddingAnEAPI{5}
887 +\ChangeWhenAddingAnEAPI{6}
888 \begin{centertable}{EAPI Behaviour for Use Queries not in IUSE\_EFFECTIVE} \label{tab:use-list-strictness}
889 \begin{tabular}{ l l }
890 \toprule
891 @@ -691,11 +701,12 @@ either behaviour is undefined or it is an error as decided by table~\ref{tab:use
892 \t{3} & Undefined \\
893 \t{4} & Error \\
894 \t{5} & Error \\
895 + \t{6} & Error \\
896 \bottomrule
897 \end{tabular}
898 \end{centertable}
899
900 -\ChangeWhenAddingAnEAPI{5}
901 +\ChangeWhenAddingAnEAPI{6}
902 \begin{centertable}{EAPIs supporting empty third argument in \t{use\_with} and \t{use\_enable}}
903 \label{tab:use-with-third-arg}
904 \begin{tabular}{ l l }
905 @@ -709,11 +720,12 @@ either behaviour is undefined or it is an error as decided by table~\ref{tab:use
906 \t{3} & No \\
907 \t{4} & Yes \\
908 \t{5} & Yes \\
909 + \t{6} & Yes \\
910 \bottomrule
911 \end{tabular}
912 \end{centertable}
913
914 -\ChangeWhenAddingAnEAPI{5}
915 +\ChangeWhenAddingAnEAPI{6}
916 \begin{centertable}{EAPIs supporting \t{usex}} \label{tab:usex-table}
917 \begin{tabular}{ l l }
918 \toprule
919 @@ -726,6 +738,7 @@ either behaviour is undefined or it is an error as decided by table~\ref{tab:use
920 \t{3} & No \\
921 \t{4} & No \\
922 \t{5} & Yes \\
923 + \t{6} & Yes \\
924 \bottomrule
925 \end{tabular}
926 \end{centertable}
927 @@ -796,7 +809,7 @@ has returned.
928 It is up to the ebuild to ensure that the relevant external utilities are available, whether by
929 being in the system set or via dependencies.
930
931 -\ChangeWhenAddingAnEAPI{5}
932 +\ChangeWhenAddingAnEAPI{6}
933 \begin{centertable}{\t{unpack} extensions for EAPIs} \label{tab:unpack-extensions-table}
934 \begin{tabular}{ l l }
935 \toprule
936 @@ -809,6 +822,7 @@ has returned.
937 \t{3} & Yes \\
938 \t{4} & Yes \\
939 \t{5} & Yes \\
940 + \t{6} & Yes \\
941 \bottomrule
942 \end{tabular}
943 \end{centertable}
944 @@ -822,7 +836,7 @@ has returned.
945 table~\ref{tab:default-function-table}.
946 \end{description}
947
948 -\ChangeWhenAddingAnEAPI{5}
949 +\ChangeWhenAddingAnEAPI{6}
950 \begin{centertable}{EAPIs supporting the \t{default} function} \label{tab:default-function-table}
951 \begin{tabular}{ l l }
952 \toprule
953 @@ -835,6 +849,7 @@ has returned.
954 \t{3} & Yes \\
955 \t{4} & Yes \\
956 \t{5} & Yes \\
957 + \t{6} & Yes \\
958 \bottomrule
959 \end{tabular}
960 \end{centertable}
961 diff --git a/pms.tex b/pms.tex
962 index ae86b43..c96fc05 100644
963 --- a/pms.tex
964 +++ b/pms.tex
965 @@ -21,8 +21,8 @@
966 pdfkeywords={Gentoo, package manager, specification},
967 }
968
969 -\CurrentEAPIIs{5}
970 -\ChangeWhenAddingAnEAPI{5}
971 +\CurrentEAPIIs{6}
972 +\ChangeWhenAddingAnEAPI{6}
973
974 \begin{document}
975 \maketitle
976 diff --git a/profile-variables.tex b/profile-variables.tex
977 index 6eca502..4c5496c 100644
978 --- a/profile-variables.tex
979 +++ b/profile-variables.tex
980 @@ -33,7 +33,7 @@ Other variables, except where they affect only package-manager-specific function
981 Portage's \t{FEATURES} variable), must not be treated incrementally---later definitions shall
982 completely override those in parent profiles.
983
984 -\ChangeWhenAddingAnEAPI{5}
985 +\ChangeWhenAddingAnEAPI{6}
986 \begin{centertable}{Profile-defined \t{IUSE} injection for EAPIs} \label{tab:profile-iuse-injection-table}
987 \begin{tabular}{ l l }
988 \toprule
989 @@ -46,6 +46,7 @@ completely override those in parent profiles.
990 \t{3} & No \\
991 \t{4} & No \\
992 \t{5} & Yes \\
993 + \t{6} & Yes \\
994 \bottomrule
995 \end{tabular}
996 \end{centertable}
997 diff --git a/profiles.tex b/profiles.tex
998 index a7a8527..1048162 100644
999 --- a/profiles.tex
1000 +++ b/profiles.tex
1001 @@ -125,7 +125,7 @@ only act on packages that are merged due to a stable keyword in the sense of
1002 subsection~\ref{sec:keywords}. Thus, these files can be used to restrict the feature set deemed
1003 stable in a package.
1004
1005 -\ChangeWhenAddingAnEAPI{5}
1006 +\ChangeWhenAddingAnEAPI{6}
1007 \begin{centertable}{Profile directory support for masking/forcing use flags in stable
1008 versions only}\label{tab:profile-stablemask}
1009 \begin{tabular}{ l l }
1010 @@ -139,6 +139,7 @@ versions only}\label{tab:profile-stablemask}
1011 \t{3} & No \\
1012 \t{4} & No \\
1013 \t{5} & Yes \\
1014 + \t{6} & Yes \\
1015 \bottomrule
1016 \end{tabular}
1017 \end{centertable}
1018 --
1019 2.6.1