Gentoo Archives: gentoo-commits

From: "Ulrich Müller" <ulm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/pms:eapi-9 commit in: /
Date: Thu, 18 Aug 2022 15:53:14
Message-Id: 1660837913.f2da80f2cbccf68af327169743fe6c61911e7806.ulm@gentoo
1 commit: f2da80f2cbccf68af327169743fe6c61911e7806
2 Author: Ulrich Müller <ulm <AT> gentoo <DOT> org>
3 AuthorDate: Tue Aug 3 16:32:47 2021 +0000
4 Commit: Ulrich Müller <ulm <AT> gentoo <DOT> org>
5 CommitDate: Thu Aug 18 15:51:53 2022 +0000
6 URL: https://gitweb.gentoo.org/proj/pms.git/commit/?id=f2da80f2
7
8 Add an EAPI 9 identical to EAPI 8
9
10 Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>
11
12 commands.tex | 4 +-
13 dependencies.tex | 26 +++---
14 eapi-differences.tex | 231 +++++++++++++++++++++++++++-----------------------
15 eapis.tex | 4 +-
16 ebuild-env-vars.tex | 26 +++---
17 ebuild-format.tex | 4 +-
18 ebuild-functions.tex | 46 +++++-----
19 ebuild-vars.tex | 22 ++---
20 eclasses.tex | 4 +-
21 merge.tex | 6 +-
22 pkg-mgr-commands.tex | 100 +++++++++++-----------
23 pms.tex | 4 +-
24 profile-variables.tex | 8 +-
25 profiles.tex | 12 +--
26 tree-layout.tex | 8 +-
27 15 files changed, 260 insertions(+), 245 deletions(-)
28
29 diff --git a/commands.tex b/commands.tex
30 index d0ad87d..c6f4f36 100644
31 --- a/commands.tex
32 +++ b/commands.tex
33 @@ -33,7 +33,7 @@ The following commands must always be available in the ebuild environment:
34 table~\ref{tab:system-commands-table} as requiring GNU find.
35 \end{compactitem}
36
37 -\ChangeWhenAddingAnEAPI{8}
38 +\ChangeWhenAddingAnEAPI{9}
39 \begin{centertable}{System commands for EAPIs}
40 \label{tab:system-commands-table}
41 \begin{tabular}{lll}
42 @@ -44,7 +44,7 @@ The following commands must always be available in the ebuild environment:
43 \midrule
44 0, 1, 2, 3, 4 & Undefined & Any \\
45 5, 6 & Yes & Any \\
46 - 7, 8 & Yes & 2.7 \\
47 + 7, 8, 9 & Yes & 2.7 \\
48 \bottomrule
49 \end{tabular}
50 \end{centertable}
51
52 diff --git a/dependencies.tex b/dependencies.tex
53 index f14a08c..de6e752 100644
54 --- a/dependencies.tex
55 +++ b/dependencies.tex
56 @@ -88,7 +88,7 @@ with the native build system (\t{CBUILD}). Ebuilds are allowed to call them in \
57 \t{pkg_postinst}. Ebuilds may also call them in \t{pkg_prerm} and \t{pkg_postrm} but must not rely
58 on them being available.
59
60 -\ChangeWhenAddingAnEAPI{8}
61 +\ChangeWhenAddingAnEAPI{9}
62 \begin{centertable}{EAPIs supporting additional dependency types}
63 \label{tab:depend-table}
64 \begin{tabular}{lll}
65 @@ -99,7 +99,7 @@ on them being available.
66 \midrule
67 0, 1, 2, 3, 4, 5, 6 & No & No \\
68 7 & Yes & No \\
69 - 8 & Yes & Yes \\
70 + 8, 9 & Yes & Yes \\
71 \bottomrule
72 \end{tabular}
73 \end{centertable}
74 @@ -155,7 +155,7 @@ be surrounded on both sides by whitespace, except at the start and end of the st
75
76 In particular, note that whitespace is not optional.
77
78 -\ChangeWhenAddingAnEAPI{8}
79 +\ChangeWhenAddingAnEAPI{9}
80 \begin{centertable}{EAPIs supporting \t{REQUIRED_USE ??}\ groups}
81 \label{tab:at-most-one-of-table}
82 \begin{tabular}{ll}
83 @@ -164,7 +164,7 @@ In particular, note that whitespace is not optional.
84 \multicolumn{1}{c}{\textbf{Supports \t{REQUIRED_USE ??}\ groups?}} \\
85 \midrule
86 0, 1, 2, 3, 4 & No \\
87 - 5, 6, 7, 8 & Yes \\
88 + 5, 6, 7, 8, 9 & Yes \\
89 \bottomrule
90 \end{tabular}
91 \end{centertable}
92 @@ -204,7 +204,7 @@ In an exactly-one-of group, exactly one immediate child element must be matched.
93 In EAPIs specified in table~\ref{tab:empty-dep-groups}, an empty exactly-one-of group counts as
94 being matched.
95
96 -\ChangeWhenAddingAnEAPI{8}
97 +\ChangeWhenAddingAnEAPI{9}
98 \begin{centertable}{Matching of empty dependency groups in EAPIs}
99 \label{tab:empty-dep-groups}
100 \begin{tabular}{ll}
101 @@ -214,7 +214,7 @@ being matched.
102 are matched?}} \\
103 \midrule
104 0, 1, 2, 3, 4, 5, 6 & Yes \\
105 - 7, 8 & No \\
106 + 7, 8, 9 & No \\
107 \bottomrule
108 \end{tabular}
109 \end{centertable}
110 @@ -250,7 +250,7 @@ manager must warn or error if this feature is used with an EAPI not supporting u
111
112 \note{Order is important. The slot restriction must come before use dependencies.}
113
114 -\ChangeWhenAddingAnEAPI{8}
115 +\ChangeWhenAddingAnEAPI{9}
116 \begin{centertable}{Support for \t{SLOT} dependencies and sub-slots in EAPIs}
117 \label{tab:slot-deps-table}
118 \begin{tabular}{lll}
119 @@ -261,12 +261,12 @@ manager must warn or error if this feature is used with an EAPI not supporting u
120 \midrule
121 0 & No & No \\
122 1, 2, 3, 4 & Named only & No \\
123 - 5, 6, 7, 8 & Named and operator & Yes \\
124 + 5, 6, 7, 8, 9 & Named and operator & Yes \\
125 \bottomrule
126 \end{tabular}
127 \end{centertable}
128
129 -\ChangeWhenAddingAnEAPI{8}
130 +\ChangeWhenAddingAnEAPI{9}
131 \begin{centertable}{EAPIs supporting \t{USE} dependencies}
132 \label{tab:use-deps-table}
133 \begin{tabular}{ll}
134 @@ -276,7 +276,7 @@ manager must warn or error if this feature is used with an EAPI not supporting u
135 \midrule
136 0, 1 & No \\
137 2, 3 & 2-style \\
138 - 4, 5, 6, 7, 8 & 4-style \\
139 + 4, 5, 6, 7, 8, 9 & 4-style \\
140 \bottomrule
141 \end{tabular}
142 \end{centertable}
143 @@ -310,7 +310,7 @@ ignored by the package manager, so long as any blocked package will be uninstall
144 strong block must not be ignored. The mapping from one or two exclamation marks to strength is
145 described in table~\ref{tab:bang-strength-table}.
146
147 -\ChangeWhenAddingAnEAPI{8}
148 +\ChangeWhenAddingAnEAPI{9}
149 \begin{centertable}{Exclamation mark strengths for EAPIs}
150 \label{tab:bang-strength-table}
151 \begin{tabular}{lll}
152 @@ -319,8 +319,8 @@ described in table~\ref{tab:bang-strength-table}.
153 \multicolumn{1}{c}{\textbf{\t{!}}} &
154 \multicolumn{1}{c}{\textbf{\t{!!}}} \\
155 \midrule
156 - 0, 1 & Unspecified & Forbidden \\
157 - 2, 3, 4, 5, 6, 7, 8 & Weak & Strong \\
158 + 0, 1 & Unspecified & Forbidden \\
159 + 2, 3, 4, 5, 6, 7, 8, 9 & Weak & Strong \\
160 \bottomrule
161 \end{tabular}
162 \end{centertable}
163
164 diff --git a/eapi-differences.tex b/eapi-differences.tex
165 index 900f415..c75404b 100644
166 --- a/eapi-differences.tex
167 +++ b/eapi-differences.tex
168 @@ -6,34 +6,36 @@ below; entries marked with an asterisk differ between these EAPIs. See the 2012-
169 of this document for a complete table of previous EAPIs.}
170 % 2012-09-20 (EAPI 5) edition has a table of EAPIs 0 to 5
171
172 -\ChangeWhenAddingAnEAPI{8}
173 +\ChangeWhenAddingAnEAPI{9}
174 \begin{landscape}
175 -\begin{longtable}{llP{7.5em}P{7.5em}P{7.5em}P{7.5em}P{7.5em}}
176 +\begin{longtable}{llP{7.5em}P{7.5em}P{7.5em}P{7.5em}P{7.5em}P{7.5em}}
177 \caption{Features in EAPIs}\\
178 \toprule
179 \multicolumn{1}{c}{\textbf{Feature}} &
180 \multicolumn{1}{c}{\textbf{Reference}} &
181 -\multicolumn{5}{c}{\textbf{EAPIs}} \\
182 +\multicolumn{6}{c}{\textbf{EAPIs}} \\
183 \multicolumn{1}{c}{} &
184 \multicolumn{1}{c}{} &
185 \multicolumn{1}{c}{0, 1, 2, 3, 4} &
186 \multicolumn{1}{c}{5} &
187 \multicolumn{1}{c}{6} &
188 \multicolumn{1}{c}{7} &
189 -\multicolumn{1}{c}{8} \\
190 +\multicolumn{1}{c}{8} &
191 +\multicolumn{1}{c}{9} \\
192 \midrule
193 \endfirsthead
194 \midrule
195 \multicolumn{1}{c}{\textbf{Feature}} &
196 \multicolumn{1}{c}{\textbf{Reference}} &
197 -\multicolumn{5}{c}{\textbf{EAPIs}} \\
198 +\multicolumn{6}{c}{\textbf{EAPIs}} \\
199 \multicolumn{1}{c}{} &
200 \multicolumn{1}{c}{} &
201 \multicolumn{1}{c}{0, 1, 2, 3, 4} &
202 \multicolumn{1}{c}{5} &
203 \multicolumn{1}{c}{6} &
204 \multicolumn{1}{c}{7} &
205 -\multicolumn{1}{c}{8} \\
206 +\multicolumn{1}{c}{8} &
207 +\multicolumn{1}{c}{9} \\
208 \midrule
209 \endhead
210 \midrule
211 @@ -42,104 +44,105 @@ of this document for a complete table of previous EAPIs.}
212 \endlastfoot
213
214 \t{package.mask} directory & \compactfeatureref{package-mask-dir} &
215 - No & No & No & Yes & Yes \\
216 + No & No & No & Yes & Yes & Yes \\
217
218 Less strict filenames in \t{updates} & \compactfeatureref{updates-filenames} &
219 - No & No & No & No & Yes \\
220 + No & No & No & No & Yes & Yes \\
221
222 Profile files as directories & \compactfeatureref{profile-file-dirs} &
223 - No & No & No & Yes & Yes \\
224 + No & No & No & Yes & Yes & Yes \\
225
226 \t{package.provided} & \compactfeatureref{package-provided} &
227 - Optional & Optional & Optional & No & No \\
228 + Optional & Optional & Optional & No & No & No \\
229
230 Stable use masking/forcing & \compactfeatureref{stablemask} &
231 - No & Yes & Yes & Yes & Yes \\
232 + No & Yes & Yes & Yes & Yes & Yes \\
233
234 Bash version & \compactfeatureref{bash-version} &
235 - 3.2 & 3.2 & 4.2 & 4.2 & 5.0 \\
236 + 3.2 & 3.2 & 4.2 & 4.2 & 5.0 & 5.0 \\
237
238 \t{failglob} in global scope & \compactfeatureref{failglob} &
239 - No & No & Yes & Yes & Yes \\
240 + No & No & Yes & Yes & Yes & Yes \\
241
242 \t{IUSE} defaults & \compactfeatureref{iuse-defaults} &
243 - * & Yes & Yes & Yes & Yes \\
244 + * & Yes & Yes & Yes & Yes & Yes \\
245
246 \t{REQUIRED_USE} & \compactfeatureref{required-use} &
247 - * & Yes & Yes & Yes & Yes \\
248 + * & Yes & Yes & Yes & Yes & Yes \\
249
250 \t{PROPERTIES} & \compactfeatureref{properties} &
251 - * & Yes & Yes & Yes & Yes \\
252 + * & Yes & Yes & Yes & Yes & Yes \\
253
254 \t{SRC_URI} arrows & \compactfeatureref{src-uri-arrows} &
255 - * & Yes & Yes & Yes & Yes \\
256 + * & Yes & Yes & Yes & Yes & Yes \\
257
258 Selective URI restrictions & \compactfeatureref{uri-restrict} &
259 - No & No & No & No & Yes \\
260 + No & No & No & No & Yes & Yes \\
261
262 \t{RDEPEND=DEPEND} & \compactfeatureref{rdepend-depend} &
263 - * & No & No & No & No \\
264 + * & No & No & No & No & No \\
265
266 \t{DEFINED_PHASES} & \compactfeatureref{defined-phases} &
267 - * & Yes & Yes & Yes & Yes \\
268 + * & Yes & Yes & Yes & Yes & Yes \\
269
270 \t{BDEPEND} & \compactfeatureref{bdepend} &
271 - No & No & No & Yes & Yes \\
272 + No & No & No & Yes & Yes & Yes \\
273
274 \t{IDEPEND} & \compactfeatureref{idepend} &
275 - No & No & No & No & Yes \\
276 + No & No & No & No & Yes & Yes \\
277
278 \t{??\ ( )} groups & \compactfeatureref{at-most-one-of} &
279 - No & Yes & Yes & Yes & Yes \\
280 + No & Yes & Yes & Yes & Yes & Yes \\
281
282 Empty \t{||}, \t{\textasciicircum\textasciicircum} groups match &
283 \compactfeatureref{empty-dep-groups} &
284 - Yes & Yes & Yes & No & No \\
285 + Yes & Yes & Yes & No & No & No \\
286
287 Slot dependencies & \compactfeatureref{slot-deps} &
288 - * & Named and Operator & Named and Operator & Named and Operator & Named and Operator \\
289 + * & Named and Operator & Named and Operator & Named and Operator & Named and Operator &
290 + Named and Operator \\
291
292 Sub-slots & \compactfeatureref{sub-slot} &
293 - No & Yes & Yes & Yes & Yes \\
294 + No & Yes & Yes & Yes & Yes & Yes \\
295
296 Use dependencies & \compactfeatureref{use-deps} &
297 - * & 4-style & 4-style & 4-style & 4-style \\
298 + * & 4-style & 4-style & 4-style & 4-style & 4-style \\
299
300 \t{!}\ blockers & \compactfeatureref{bang-strength} &
301 - * & Weak & Weak & Weak & Weak \\
302 + * & Weak & Weak & Weak & Weak & Weak \\
303
304 \t{!!}\ blockers & \compactfeatureref{bang-strength} &
305 - * & Strong & Strong & Strong & Strong \\
306 + * & Strong & Strong & Strong & Strong & Strong \\
307
308 Working directory in \t{pkg_*} phases & \compactfeatureref{phase-function-dir} &
309 - Any & Any & Any & Any & Empty \\
310 + Any & Any & Any & Any & Empty & Empty \\
311
312 \t{S} to \t{WORKDIR} fallback & \compactfeatureref{s-workdir-fallback} &
313 - * & Conditional & Conditional & Conditional & Conditional \\
314 + * & Conditional & Conditional & Conditional & Conditional & Conditional \\
315
316 \t{pkg_pretend} & \compactfeatureref{pkg-pretend} &
317 - * & Yes & Yes & Yes & Yes \\
318 + * & Yes & Yes & Yes & Yes & Yes \\
319
320 \t{src_prepare} & \compactfeatureref{src-prepare} &
321 - * & Yes & Yes & Yes & Yes \\
322 + * & Yes & Yes & Yes & Yes & Yes \\
323
324 \t{src_prepare} style & \compactfeatureref{src-prepare} &
325 - * & no-op & 6 & 6 & 8 \\
326 + * & no-op & 6 & 6 & 8 & 8 \\
327
328 \t{src_configure} & \compactfeatureref{src-configure} &
329 - * & Yes & Yes & Yes & Yes \\
330 + * & Yes & Yes & Yes & Yes & Yes \\
331
332 \t{src_compile} style & \compactfeatureref{src-compile} &
333 - * & 2 & 2 & 2 & 2 \\
334 + * & 2 & 2 & 2 & 2 & 2 \\
335
336 Parallel tests & \compactfeatureref{parallel-tests} &
337 - No & Yes & Yes & Yes & Yes \\
338 + No & Yes & Yes & Yes & Yes & Yes \\
339
340 \t{src_install} style & \compactfeatureref{src-install} &
341 - * & 4 & 6 & 6 & 6 \\
342 + * & 4 & 6 & 6 & 6 & 6 \\
343
344 \t{pkg_info} & \compactfeatureref{pkg-info} &
345 - * & Both & Both & Both & Both \\
346 + * & Both & Both & Both & Both & Both \\
347
348 \t{default_} phase functions & \compactfeatureref{default-phase-funcs} &
349 * &
350 @@ -149,123 +152,125 @@ Parallel tests & \compactfeatureref{parallel-tests} &
351 \t{src_compile}, \t{src_test}, \t{src_install} &
352 \t{pkg_nofetch}, \t{src_unpack}, \t{src_prepare}, \t{src_configure},
353 \t{src_compile}, \t{src_test}, \t{src_install} &
354 + \t{pkg_nofetch}, \t{src_unpack}, \t{src_prepare}, \t{src_configure},
355 + \t{src_compile}, \t{src_test}, \t{src_install} &
356 \t{pkg_nofetch}, \t{src_unpack}, \t{src_prepare}, \t{src_configure},
357 \t{src_compile}, \t{src_test}, \t{src_install} \\
358
359 Accumulate \t{RESTRICT} etc. & \compactfeatureref{accumulate-vars} &
360 - No & No & No & No & Yes \\
361 + No & No & No & No & Yes & Yes \\
362
363 \t{AA} & \compactfeatureref{aa} &
364 - * & No & No & No & No \\
365 + * & No & No & No & No & No \\
366
367 \t{PORTDIR} & \compactfeatureref{portdir} &
368 - Yes & Yes & Yes & No & No \\
369 + Yes & Yes & Yes & No & No & No \\
370
371 \t{ECLASSDIR} & \compactfeatureref{eclassdir} &
372 - Yes & Yes & Yes & No & No \\
373 + Yes & Yes & Yes & No & No & No \\
374
375 \t{SYSROOT}, \t{ESYSROOT} & \compactfeatureref{sysroot} &
376 - No & No & No & Yes & Yes \\
377 + No & No & No & Yes & Yes & Yes \\
378
379 \t{BROOT} & \compactfeatureref{broot} &
380 - No & No & No & Yes & Yes \\
381 + No & No & No & Yes & Yes & Yes \\
382
383 \t{DESTTREE} & \compactfeatureref{desttree} &
384 - Yes & Yes & Yes & No & No \\
385 + Yes & Yes & Yes & No & No & No \\
386
387 \t{INSDESTTREE} & \compactfeatureref{insdesttree} &
388 - Yes & Yes & Yes & No & No \\
389 + Yes & Yes & Yes & No & No & No \\
390
391 \t{KV} & \compactfeatureref{kv} &
392 - * & No & No & No & No \\
393 + * & No & No & No & No & No \\
394
395 \t{EBUILD_PHASE_FUNC} & \compactfeatureref{ebuild-phase-func} &
396 - No & Yes & Yes & Yes & Yes \\
397 + No & Yes & Yes & Yes & Yes & Yes \\
398
399 \t{MERGE_TYPE} & \compactfeatureref{merge-type} &
400 - * & Yes & Yes & Yes & Yes \\
401 + * & Yes & Yes & Yes & Yes & Yes \\
402
403 \t{ENV_UNSET} & \compactfeatureref{env-unset} &
404 - No & No & No & Yes & Yes \\
405 + No & No & No & Yes & Yes & Yes \\
406
407 Sane locale settings & \compactfeatureref{locale-settings} &
408 - Undefined & Undefined & Yes & Yes & Yes \\
409 + Undefined & Undefined & Yes & Yes & Yes & Yes \\
410
411 Profile \t{IUSE} injection & \compactfeatureref{profile-iuse-inject} &
412 - No & Yes & Yes & Yes & Yes \\
413 + No & Yes & Yes & Yes & Yes & Yes \\
414
415 \t{REPLACING_VERSIONS} & \compactfeatureref{replace-version-vars} &
416 - * & Yes & Yes & Yes & Yes \\
417 + * & Yes & Yes & Yes & Yes & Yes \\
418
419 \t{REPLACED_BY_VERSION} & \compactfeatureref{replace-version-vars} &
420 - * & Yes & Yes & Yes & Yes \\
421 + * & Yes & Yes & Yes & Yes & Yes \\
422
423 \t{EPREFIX}, \t{ED}, \t{EROOT} & \compactfeatureref{offset-prefix-vars} &
424 - * & Yes & Yes & Yes & Yes \\
425 + * & Yes & Yes & Yes & Yes & Yes \\
426
427 Trailing slash in \t{D} etc. & \compactfeatureref{trailing-slash} &
428 - Yes & Yes & Yes & No & No \\
429 + Yes & Yes & Yes & No & No & No \\
430
431 GNU \t{patch} version & \compactfeatureref{gnu-patch} &
432 - Any & Any & Any & 2.7 & 2.7 \\
433 + Any & Any & Any & 2.7 & 2.7 & 2.7 \\
434
435 \t{find} is GNU? & \compactfeatureref{gnu-find} &
436 - Undefined & Yes & Yes & Yes & Yes \\
437 + Undefined & Yes & Yes & Yes & Yes & Yes \\
438
439 Most utilities die & \compactfeatureref{die-on-failure} &
440 - * & Yes & Yes & Yes & Yes \\
441 + * & Yes & Yes & Yes & Yes & Yes \\
442
443 \t{nonfatal} & \compactfeatureref{nonfatal} &
444 - * & Yes & Yes & Function / external & Function / external \\
445 + * & Yes & Yes & Function / external & Function / external & Function / external \\
446
447 \t{dohard} & \compactfeatureref{banned-commands} &
448 - * & Banned & Banned & Banned & Banned \\
449 + * & Banned & Banned & Banned & Banned & Banned \\
450
451 \t{dosed} & \compactfeatureref{banned-commands} &
452 - * & Banned & Banned & Banned & Banned \\
453 + * & Banned & Banned & Banned & Banned & Banned \\
454
455 \t{einstall} & \compactfeatureref{banned-commands} &
456 - Yes & Yes & Banned & Banned & Banned \\
457 + Yes & Yes & Banned & Banned & Banned & Banned \\
458
459 \t{dohtml} & \compactfeatureref{banned-commands} &
460 - Yes & Yes & Yes & Banned & Banned \\
461 + Yes & Yes & Yes & Banned & Banned & Banned \\
462
463 \t{dolib} & \compactfeatureref{banned-commands} &
464 - Yes & Yes & Yes & Banned & Banned \\
465 + Yes & Yes & Yes & Banned & Banned & Banned \\
466
467 \t{libopts} & \compactfeatureref{banned-commands} &
468 - Yes & Yes & Yes & Banned & Banned \\
469 + Yes & Yes & Yes & Banned & Banned & Banned \\
470
471 \t{useq} & \compactfeatureref{banned-commands} &
472 - Yes & Yes & Yes & Yes & Banned \\
473 + Yes & Yes & Yes & Yes & Banned & Banned \\
474
475 \t{hasv} & \compactfeatureref{banned-commands} &
476 - Yes & Yes & Yes & Yes & Banned \\
477 + Yes & Yes & Yes & Yes & Banned & Banned \\
478
479 \t{hasq} & \compactfeatureref{banned-commands} &
480 - Yes & Yes & Yes & Yes & Banned \\
481 + Yes & Yes & Yes & Yes & Banned & Banned \\
482
483 Query command options & \compactfeatureref{pm-query-options} &
484 None & \t{-{}-host-root} & \t{-{}-host-root} & \t{-b}, \t{-d}, \t{-r} &
485 - \t{-b}, \t{-d}, \t{-r} \\
486 + \t{-b}, \t{-d}, \t{-r} & \t{-b}, \t{-d}, \t{-r} \\
487
488 Output commands use stdout & \compactfeatureref{output-no-stdout} &
489 - Yes & Yes & Yes & No & No \\
490 + Yes & Yes & Yes & No & No & No \\
491
492 \t{eqawarn} & \compactfeatureref{eqawarn} &
493 - No & No & No & Yes & Yes \\
494 + No & No & No & Yes & Yes & Yes \\
495
496 \t{die -n} & \compactfeatureref{nonfatal-die} &
497 - No & No & Yes & Yes & Yes \\
498 + No & No & Yes & Yes & Yes & Yes \\
499
500 \t{die} in subshell & \compactfeatureref{subshell-die} &
501 - No & No & No & Yes & Yes \\
502 + No & No & No & Yes & Yes & Yes \\
503
504 \t{eapply} & \compactfeatureref{eapply} &
505 - No & No & Yes & Yes & Yes \\
506 + No & No & Yes & Yes & Yes & Yes \\
507
508 \t{eapply_user} & \compactfeatureref{eapply-user} &
509 - No & No & Yes & Yes & Yes \\
510 + No & No & Yes & Yes & Yes & Yes \\
511
512 \t{econf} arguments & \compactfeatureref{econf-options} &
513 * &
514 @@ -273,97 +278,99 @@ Output commands use stdout & \compactfeatureref{output-no-stdout} &
515 disable dependency tracking, disable silent rules, docdir, htmldir &
516 disable dependency tracking, disable silent rules, docdir, htmldir, with sysroot &
517 disable dependency tracking, disable silent rules, disable static,
518 + datarootdir, docdir, htmldir, with sysroot &
519 + disable dependency tracking, disable silent rules, disable static,
520 datarootdir, docdir, htmldir, with sysroot \\
521
522 \t{dodoc -r} & \compactfeatureref{dodoc} &
523 - * & Yes & Yes & Yes & Yes \\
524 + * & Yes & Yes & Yes & Yes & Yes \\
525
526 \t{doheader} & \compactfeatureref{doheader} &
527 - No & Yes & Yes & Yes & Yes \\
528 + No & Yes & Yes & Yes & Yes & Yes \\
529
530 \t{doins} handles symlinks & \compactfeatureref{doins} &
531 - * & Yes & Yes & Yes & Yes \\
532 + * & Yes & Yes & Yes & Yes & Yes \\
533
534 \t{doman} languages & \compactfeatureref{doman-langs} &
535 - * & Yes & Yes & Yes & Yes \\
536 + * & Yes & Yes & Yes & Yes & Yes \\
537
538 \t{doman -i18n} precedence & \compactfeatureref{doman-langs} &
539 - * & Yes & Yes & Yes & Yes \\
540 + * & Yes & Yes & Yes & Yes & Yes \\
541
542 \t{domo} destination path & \compactfeatureref{domo-path} &
543 - \t{\$\{DESTTREE\}} & \t{\$\{DESTTREE\}} & \t{\$\{DESTTREE\}} & \t{/usr} & \t{/usr} \\
544 + \t{\$\{DESTTREE\}} & \t{\$\{DESTTREE\}} & \t{\$\{DESTTREE\}} & \t{/usr} & \t{/usr} & \t{/usr} \\
545
546 \t{dosym -r} & \compactfeatureref{dosym-relative} &
547 - No & No & No & No & Yes \\
548 + No & No & No & No & Yes & Yes \\
549
550 \t{new*} support stdin & \compactfeatureref{newfoo-stdin} &
551 - No & Yes & Yes & Yes & Yes \\
552 + No & Yes & Yes & Yes & Yes & Yes \\
553
554 \t{insopts} affects misc.\ commands & \compactfeatureref{insopts} &
555 - Yes & Yes & Yes & Yes & No \\
556 + Yes & Yes & Yes & Yes & No & No \\
557
558 \t{exeopts} affects \t{doinitd} & \compactfeatureref{exeopts} &
559 - Yes & Yes & Yes & Yes & No \\
560 + Yes & Yes & Yes & Yes & No & No \\
561
562 Controllable compression & \compactfeatureref{docompress} &
563 - * & Yes & Yes & Yes & Yes \\
564 + * & Yes & Yes & Yes & Yes & Yes \\
565
566 \t{docompress} & \compactfeatureref{docompress} &
567 - * & Yes & Yes & Yes & Yes \\
568 + * & Yes & Yes & Yes & Yes & Yes \\
569
570 Controllable stripping & \compactfeatureref{dostrip} &
571 - No & No & No & Yes & Yes \\
572 + No & No & No & Yes & Yes & Yes \\
573
574 \t{dostrip} & \compactfeatureref{dostrip} &
575 - No & No & No & Yes & Yes \\
576 + No & No & No & Yes & Yes & Yes \\
577
578 \t{usev} second arg & \compactfeatureref{usev} &
579 - No & No & No & No & Yes \\
580 + No & No & No & No & Yes & Yes \\
581
582 \t{use_with} empty third arg & \compactfeatureref{use-with} &
583 - * & Yes & Yes & Yes & Yes \\
584 + * & Yes & Yes & Yes & Yes & Yes \\
585
586 \t{usex} & \compactfeatureref{usex} &
587 - No & Yes & Yes & Yes & Yes \\
588 + No & Yes & Yes & Yes & Yes & Yes \\
589
590 \t{in_iuse} & \compactfeatureref{in-iuse} &
591 - No & No & Yes & Yes & Yes \\
592 + No & No & Yes & Yes & Yes & Yes \\
593
594 \t{ver_*} commands & \compactfeatureref{ver-commands} &
595 - No & No & No & Yes & Yes \\
596 + No & No & No & Yes & Yes & Yes \\
597
598 \t{unpack} absolute paths & \compactfeatureref{unpack-absolute} &
599 - No & No & Yes & Yes & Yes \\
600 + No & No & Yes & Yes & Yes & Yes \\
601
602 \t{unpack} support for \t{xz} & \compactfeatureref{unpack-extensions} &
603 - * & Yes & Yes & Yes & Yes \\
604 + * & Yes & Yes & Yes & Yes & Yes \\
605
606 \t{unpack} support for \t{txz} & \compactfeatureref{unpack-extensions} &
607 - No & No & Yes & Yes & Yes \\
608 + No & No & Yes & Yes & Yes & Yes \\
609
610 \t{unpack} support for \t{7z} & \compactfeatureref{unpack-extensions} &
611 - Yes & Yes & Yes & Yes & No \\
612 + Yes & Yes & Yes & Yes & No & No \\
613
614 \t{unpack} support for \t{lha} & \compactfeatureref{unpack-extensions} &
615 - Yes & Yes & Yes & Yes & No \\
616 + Yes & Yes & Yes & Yes & No & No \\
617
618 \t{unpack} support for \t{rar} & \compactfeatureref{unpack-extensions} &
619 - Yes & Yes & Yes & Yes & No \\
620 + Yes & Yes & Yes & Yes & No & No \\
621
622 \t{unpack} case-insensitive & \compactfeatureref{unpack-ignore-case} &
623 - No & No & Yes & Yes & Yes \\
624 + No & No & Yes & Yes & Yes & Yes \\
625
626 \t{default} function & \compactfeatureref{default-func} &
627 - * & Yes & Yes & Yes & Yes \\
628 + * & Yes & Yes & Yes & Yes & Yes \\
629
630 \t{einstalldocs} & \compactfeatureref{einstalldocs} &
631 - No & No & Yes & Yes & Yes \\
632 + No & No & Yes & Yes & Yes & Yes \\
633
634 \t{get_libdir} & \compactfeatureref{get-libdir} &
635 - No & No & Yes & Yes & Yes \\
636 + No & No & Yes & Yes & Yes & Yes \\
637
638 File mtimes preserved & \compactfeatureref{mtime-preserve} &
639 - * & Yes & Yes & Yes & Yes \\
640 + * & Yes & Yes & Yes & Yes & Yes \\
641
642 \end{longtable}
643 \end{landscape}
644 @@ -545,7 +552,15 @@ EAPI 8 is EAPI 7 with the following changes:
645 \item \t{unpack} no longer supports \t{.7z}, \t{.rar}, \t{.lha}, \featureref{unpack-extensions}.
646 \end{compactitem}
647
648 -\ChangeWhenAddingAnEAPI{8}
649 +\section{EAPI 9}
650 +
651 +EAPI 9 is EAPI 8 with the following changes:
652 +
653 +\begin{compactitem}
654 +\item None
655 +\end{compactitem}
656 +
657 +\ChangeWhenAddingAnEAPI{9}
658
659 % vim: set filetype=tex fileencoding=utf8 et tw=100 spell spelllang=en :
660
661
662 diff --git a/eapis.tex b/eapis.tex
663 index a6c8109..fd0420c 100644
664 --- a/eapis.tex
665 +++ b/eapis.tex
666 @@ -17,8 +17,8 @@ EAPIs are also used for profile directories, as described in section~\ref{sec:pr
667
668 \section{Defined EAPIs}
669
670 -\ChangeWhenAddingAnEAPI{8}
671 -This specification defines EAPIs `0', `1', `2', `3', `4', `5', `6', `7', and~`8'.
672 +\ChangeWhenAddingAnEAPI{9}
673 +This specification defines EAPIs `0', `1', `2', `3', `4', `5', `6', `7', `8', and~`9'.
674 EAPI~`0' is the `original' base EAPI\@. Each of the later EAPIs contains a number of extensions
675 to its predecessor.
676
677
678 diff --git a/ebuild-env-vars.tex b/ebuild-env-vars.tex
679 index a55c366..58df6bd 100644
680 --- a/ebuild-env-vars.tex
681 +++ b/ebuild-env-vars.tex
682 @@ -263,7 +263,7 @@ variable.
683 \end{longtable}
684 \end{landscape}
685
686 -\ChangeWhenAddingAnEAPI{8}
687 +\ChangeWhenAddingAnEAPI{9}
688 \begin{centertable}{EAPIs supporting various added env variables}
689 \label{tab:added-env-vars-table}
690 \begin{tabular}{lllllll}
691 @@ -279,12 +279,12 @@ variable.
692 0, 1, 2, 3 & No & No & No & No & No & No \\
693 4 & Yes & Yes & Yes & No & No & No \\
694 5, 6 & Yes & Yes & Yes & Yes & No & No \\
695 - 7, 8 & Yes & Yes & Yes & Yes & Yes & Yes \\
696 + 7, 8, 9 & Yes & Yes & Yes & Yes & Yes & Yes \\
697 \bottomrule
698 \end{tabular}
699 \end{centertable}
700
701 -\ChangeWhenAddingAnEAPI{8}
702 +\ChangeWhenAddingAnEAPI{9}
703 \begin{centertable}{EAPIs supporting various removed env variables}
704 \label{tab:removed-env-vars-table}
705 \begin{tabular}{lllllll}
706 @@ -299,12 +299,12 @@ variable.
707 \midrule
708 0, 1, 2, 3 & Yes & Yes & Yes & Yes & Yes & Yes \\
709 4, 5, 6 & No & No & Yes & Yes & Yes & Yes \\
710 - 7, 8 & No & No & No & No & No & No \\
711 + 7, 8, 9 & No & No & No & No & No & No \\
712 \bottomrule
713 \end{tabular}
714 \end{centertable}
715
716 -\ChangeWhenAddingAnEAPI{8}
717 +\ChangeWhenAddingAnEAPI{9}
718 \begin{centertable}{EAPIs supporting offset-prefix env variables}
719 \label{tab:offset-env-vars-table}
720 \begin{tabular}{lllll}
721 @@ -317,7 +317,7 @@ variable.
722 \midrule
723 0, 1, 2 & No & No & No & No \\
724 3, 4, 5, 6 & Yes & Yes & Yes & No \\
725 - 7, 8 & Yes & Yes & Yes & Yes \\
726 + 7, 8, 9 & Yes & Yes & Yes & Yes \\
727 \bottomrule
728 \end{tabular}
729 \end{centertable}
730 @@ -341,7 +341,7 @@ must be unset, for EAPIs listed in table~\ref{tab:profile-env-unset} as supporti
731 ASCII range (U+0000 to U+007F) are concerned. Only for EAPIs listed in such a manner in
732 table~\ref{tab:locale-settings}.
733
734 -\ChangeWhenAddingAnEAPI{8}
735 +\ChangeWhenAddingAnEAPI{9}
736 \begin{centertable}{Locale settings for EAPIs}
737 \label{tab:locale-settings}
738 \begin{tabular}{ll}
739 @@ -350,7 +350,7 @@ table~\ref{tab:locale-settings}.
740 \multicolumn{1}{c}{\textbf{Sane \t{LC_CTYPE} and \t{LC_COLLATE}?}} \\
741 \midrule
742 0, 1, 2, 3, 4, 5 & Undefined \\
743 - 6, 7, 8 & Yes \\
744 + 6, 7, 8, 9 & Yes \\
745 \bottomrule
746 \end{tabular}
747 \end{centertable}
748 @@ -436,7 +436,7 @@ contain at most one value.
749 \subsection{Offset-prefix variables}
750 \label{sec:offset-vars}
751
752 -\ChangeWhenAddingAnEAPI{8}
753 +\ChangeWhenAddingAnEAPI{9}
754 \begin{centertable}{EAPIs supporting offset-prefix}
755 \label{tab:offset-support-table}
756 \begin{tabular}{ll}
757 @@ -444,8 +444,8 @@ contain at most one value.
758 \multicolumn{1}{c}{\textbf{EAPI}} &
759 \multicolumn{1}{c}{\textbf{Supports offset-prefix?}}\\
760 \midrule
761 - 0, 1, 2 & No \\
762 - 3, 4, 5, 6, 7, 8 & Yes \\
763 + 0, 1, 2 & No \\
764 + 3, 4, 5, 6, 7, 8, 9 & Yes \\
765 \bottomrule
766 \end{tabular}
767 \end{centertable}
768 @@ -476,7 +476,7 @@ specifies the system root directory, it will consist of a single slash (\t{/}).
769 a trailing slash, the package manager guarantees that a trailing slash will never be present.
770 If the path specifies the system root directory, it will be empty.
771
772 -\ChangeWhenAddingAnEAPI{8}
773 +\ChangeWhenAddingAnEAPI{9}
774 \begin{centertable}{Variables that always or never end with a trailing slash}
775 \label{tab:trailing-slash}
776 \begin{tabular}{lll}
777 @@ -488,7 +488,7 @@ If the path specifies the system root directory, it will be empty.
778 \t{D}, \t{ED} \\
779 \midrule
780 0, 1, 2, 3, 4, 5, 6 & always & always \\
781 - 7, 8 & never & never \\
782 + 7, 8, 9 & never & never \\
783 \bottomrule
784 \end{tabular}
785 \end{centertable}
786
787 diff --git a/ebuild-format.tex b/ebuild-format.tex
788 index 25ba28e..84d27b7 100644
789 --- a/ebuild-format.tex
790 +++ b/ebuild-format.tex
791 @@ -18,7 +18,7 @@ certain variables and functions (see chapters~\ref{ch:ebuild-vars} and~\ref{ch:e
792 for specific information), and must not call any external programs, write anything to standard
793 output or standard error, or modify the state of the system in any way.
794
795 -\ChangeWhenAddingAnEAPI{8}
796 +\ChangeWhenAddingAnEAPI{9}
797 \begin{centertable}{Bash version and options}
798 \label{tab:bash-version}
799 \begin{tabular}{lll}
800 @@ -29,7 +29,7 @@ output or standard error, or modify the state of the system in any way.
801 \midrule
802 0, 1, 2, 3, 4, 5 & 3.2 & No \\
803 6, 7 & 4.2 & Yes \\
804 - 8 & 5.0 & Yes \\
805 + 8, 9 & 5.0 & Yes \\
806 \bottomrule
807 \end{tabular}
808 \end{centertable}
809
810 diff --git a/ebuild-functions.tex b/ebuild-functions.tex
811 index 0c745c3..c878439 100644
812 --- a/ebuild-functions.tex
813 +++ b/ebuild-functions.tex
814 @@ -46,7 +46,7 @@ fallback to \t{WORKDIR} is used:
815 executed, are in \t{DEFINED_PHASES}.
816 \end{compactitem}
817
818 -\ChangeWhenAddingAnEAPI{8}
819 +\ChangeWhenAddingAnEAPI{9}
820 \begin{centertable}{Initial working directory in \t{pkg_*} phase functions for EAPIs}
821 \label{tab:function-dirs}
822 \begin{tabular}{ll}
823 @@ -55,12 +55,12 @@ fallback to \t{WORKDIR} is used:
824 \multicolumn{1}{c}{\textbf{Initial working directory?}} \\
825 \midrule
826 0, 1, 2, 3, 4, 5, 6, 7 & Any \\
827 - 8 & Empty \\
828 + 8, 9 & Empty \\
829 \bottomrule
830 \end{tabular}
831 \end{centertable}
832
833 -\ChangeWhenAddingAnEAPI{8}
834 +\ChangeWhenAddingAnEAPI{9}
835 \begin{centertable}{EAPIs with \t{S} to \t{WORKDIR} fallbacks}
836 \label{tab:s-fallback-table}
837 \begin{tabular}{ll}
838 @@ -69,7 +69,7 @@ fallback to \t{WORKDIR} is used:
839 \multicolumn{1}{c}{\textbf{Fallback to \t{WORKDIR} permitted?}} \\
840 \midrule
841 0, 1, 2, 3 & Always \\
842 - 4, 5, 6, 7, 8 & Conditional error \\
843 + 4, 5, 6, 7, 8, 9 & Conditional error \\
844 \bottomrule
845 \end{tabular}
846 \end{centertable}
847 @@ -91,7 +91,7 @@ before the next phase is executed.
848
849 \t{pkg_pretend} must not write to the filesystem.
850
851 -\ChangeWhenAddingAnEAPI{8}
852 +\ChangeWhenAddingAnEAPI{9}
853 \begin{centertable}{EAPIs supporting \t{pkg_pretend}}
854 \label{tab:pkg-pretend-table}
855 \begin{tabular}{ll}
856 @@ -100,7 +100,7 @@ before the next phase is executed.
857 \multicolumn{1}{c}{\textbf{Supports \t{pkg_pretend}?}} \\
858 \midrule
859 0, 1, 2, 3 & No \\
860 - 4, 5, 6, 7, 8 & Yes \\
861 + 4, 5, 6, 7, 8, 9 & Yes \\
862 \bottomrule
863 \end{tabular}
864 \end{centertable}
865 @@ -149,7 +149,7 @@ listing~\ref{lst:src-prepare-6} or listing~\ref{lst:src-prepare-8}, respectively
866 For other EAPIs supporting \t{src_prepare}, the default implementation used when the ebuild lacks
867 the \t{src_prepare} function is a no-op.
868
869 -\ChangeWhenAddingAnEAPI{8}
870 +\ChangeWhenAddingAnEAPI{9}
871 \begin{centertable}{\t{src_prepare} support and behaviour for EAPIs}
872 \label{tab:src-prepare-table}
873 \begin{tabular}{lll}
874 @@ -161,7 +161,7 @@ the \t{src_prepare} function is a no-op.
875 0, 1 & No & Not applicable \\
876 2, 3, 4, 5 & Yes & no-op \\
877 6, 7 & Yes & 6 \\
878 - 8 & Yes & 8 \\
879 + 8, 9 & Yes & 8 \\
880 \bottomrule
881 \end{tabular}
882 \end{centertable}
883 @@ -206,7 +206,7 @@ The \t{src_configure} function configures the package's build environment. The d
884 implementation used when the ebuild lacks the \t{src_configure} function shall behave as in
885 listing~\ref{lst:src-configure-2}.
886
887 -\ChangeWhenAddingAnEAPI{8}
888 +\ChangeWhenAddingAnEAPI{9}
889 \begin{centertable}{EAPIs supporting \t{src_configure}}
890 \label{tab:src-configure-table}
891 \begin{tabular}{ll}
892 @@ -214,8 +214,8 @@ listing~\ref{lst:src-configure-2}.
893 \multicolumn{1}{c}{\textbf{EAPI}} &
894 \multicolumn{1}{c}{\textbf{Supports \t{src_configure}?}} \\
895 \midrule
896 - 0, 1 & No \\
897 - 2, 3, 4, 5, 6, 7, 8 & Yes \\
898 + 0, 1 & No \\
899 + 2, 3, 4, 5, 6, 7, 8, 9 & Yes \\
900 \bottomrule
901 \end{tabular}
902 \end{centertable}
903 @@ -244,7 +244,7 @@ implementation used when the ebuild lacks the \t{src_prepare} function shall beh
904 listing~\ref{lst:src-compile-0}, listing~\ref{lst:src-compile-1} or listing~\ref{lst:src-compile-2},
905 respectively.
906
907 -\ChangeWhenAddingAnEAPI{8}
908 +\ChangeWhenAddingAnEAPI{9}
909 \begin{centertable}{\t{src_compile} behaviour for EAPIs}
910 \label{tab:src-compile-table}
911 \begin{tabular}{ll}
912 @@ -252,9 +252,9 @@ respectively.
913 \multicolumn{1}{c}{\textbf{EAPI}} &
914 \multicolumn{1}{c}{\textbf{Format}} \\
915 \midrule
916 - 0 & 0 \\
917 - 1 & 1 \\
918 - 2, 3, 4, 5, 6, 7, 8 & 2 \\
919 + 0 & 0 \\
920 + 1 & 1 \\
921 + 2, 3, 4, 5, 6, 7, 8, 9 & 2 \\
922 \bottomrule
923 \end{tabular}
924 \end{centertable}
925 @@ -317,7 +317,7 @@ parallel tests, the \t{emake} command must be called with option \t{-j1}.
926 The \t{src_test} function may be disabled by \t{RESTRICT}\@. See section~\ref{sec:restrict}. It may
927 be disabled by user too, using a PM-specific mechanism.
928
929 -\ChangeWhenAddingAnEAPI{8}
930 +\ChangeWhenAddingAnEAPI{9}
931 \begin{centertable}{\t{src_test} behaviour for EAPIs}
932 \label{tab:src-test-table}
933 \begin{tabular}{ll}
934 @@ -326,7 +326,7 @@ be disabled by user too, using a PM-specific mechanism.
935 \multicolumn{1}{c}{\textbf{Supports parallel tests?}} \\
936 \midrule
937 0, 1, 2, 3, 4 & No \\
938 - 5, 6, 7, 8 & Yes \\
939 + 5, 6, 7, 8, 9 & Yes \\
940 \bottomrule
941 \end{tabular}
942 \end{centertable}
943 @@ -346,7 +346,7 @@ listing~\ref{lst:src-install-4} or listing~\ref{lst:src-install-6}, respectively
944 For other EAPIs, the default implementation used when the ebuild lacks the \t{src_install} function
945 is a no-op.
946
947 -\ChangeWhenAddingAnEAPI{8}
948 +\ChangeWhenAddingAnEAPI{9}
949 \begin{centertable}{\t{src_install} behaviour for EAPIs}
950 \label{tab:src-install-table}
951 \begin{tabular}{ll}
952 @@ -356,7 +356,7 @@ is a no-op.
953 \midrule
954 0, 1, 2, 3 & no-op \\
955 4, 5 & 4 \\
956 - 6, 7, 8 & 6 \\
957 + 6, 7, 8, 9 & 6 \\
958 \bottomrule
959 \end{tabular}
960 \end{centertable}
961 @@ -449,7 +449,7 @@ that dependencies may not be installed.
962
963 \t{pkg_info} must not write to the filesystem.
964
965 -\ChangeWhenAddingAnEAPI{8}
966 +\ChangeWhenAddingAnEAPI{9}
967 \begin{centertable}{EAPIs supporting \t{pkg_info} on non-installed packages}
968 \label{tab:pkg-info-table}
969 \begin{tabular}{ll}
970 @@ -458,7 +458,7 @@ that dependencies may not be installed.
971 \multicolumn{1}{c}{\textbf{Supports \t{pkg_info} on non-installed packages?}} \\
972 \midrule
973 0, 1, 2, 3 & No \\
974 - 4, 5, 6, 7, 8 & Yes \\
975 + 4, 5, 6, 7, 8, 9 & Yes \\
976 \bottomrule
977 \end{tabular}
978 \end{centertable}
979 @@ -480,7 +480,7 @@ named \t{default_}(phase) that behaves as the default implementation for that EA
980 when executing any ebuild phase listed in the table. Ebuilds must not call these functions except
981 when in the phase in question.
982
983 -\ChangeWhenAddingAnEAPI{8}
984 +\ChangeWhenAddingAnEAPI{9}
985 \begin{centertable}{EAPIs supporting \t{default_} phase functions}
986 \label{tab:default-phase-function-table}
987 \begin{tabular}{l P{26em}}
988 @@ -491,7 +491,7 @@ when in the phase in question.
989 0, 1 & None \\
990 2, 3 & \t{pkg_nofetch}, \t{src_unpack}, \t{src_prepare}, \t{src_configure},
991 \t{src_compile}, \t{src_test} \\
992 - 4, 5, 6, 7, 8 & \t{pkg_nofetch}, \t{src_unpack}, \t{src_prepare}, \t{src_configure},
993 + 4, 5, 6, 7, 8, 9 & \t{pkg_nofetch}, \t{src_unpack}, \t{src_prepare}, \t{src_configure},
994 \t{src_compile}, \t{src_test}, \t{src_install} \\
995 \bottomrule
996 \end{tabular}
997
998 diff --git a/ebuild-vars.tex b/ebuild-vars.tex
999 index 5f3f583..c4413f5 100644
1000 --- a/ebuild-vars.tex
1001 +++ b/ebuild-vars.tex
1002 @@ -90,7 +90,7 @@ defined by an eclass.
1003 \item[IDEPEND] See chapter~\ref{ch:dependencies}.
1004 \end{description}
1005
1006 -\ChangeWhenAddingAnEAPI{8}
1007 +\ChangeWhenAddingAnEAPI{9}
1008 \begin{centertable}{EAPIs supporting \t{IUSE} defaults}
1009 \label{tab:iuse-defaults-table}
1010 \begin{tabular}{ll}
1011 @@ -98,13 +98,13 @@ defined by an eclass.
1012 \multicolumn{1}{c}{\textbf{EAPI}} &
1013 \multicolumn{1}{c}{\textbf{Supports \t{IUSE} defaults?}} \\
1014 \midrule
1015 - 0 & No \\
1016 - 1, 2, 3, 4, 5, 6, 7, 8 & Yes \\
1017 + 0 & No \\
1018 + 1, 2, 3, 4, 5, 6, 7, 8, 9 & Yes \\
1019 \bottomrule
1020 \end{tabular}
1021 \end{centertable}
1022
1023 -\ChangeWhenAddingAnEAPI{8}
1024 +\ChangeWhenAddingAnEAPI{9}
1025 \begin{centertable}{EAPIs supporting various ebuild-defined variables}
1026 \label{tab:optional-vars-table}
1027 \begin{tabular}{lll}
1028 @@ -114,7 +114,7 @@ defined by an eclass.
1029 \multicolumn{1}{c}{\textbf{Supports \t{REQUIRED_USE}?}} \\
1030 \midrule
1031 0, 1, 2, 3 & Optionally & No \\
1032 - 4, 5, 6, 7, 8 & Yes & Yes \\
1033 + 4, 5, 6, 7, 8, 9 & Yes & Yes \\
1034 \bottomrule
1035 \end{tabular}
1036 \end{centertable}
1037 @@ -179,7 +179,7 @@ selective URI restrictions, the URI protocol can be prefixed by an additional \t
1038 restriction for the URI (but not the implied mirror restriction). If the ebuild is fetch or mirror
1039 restricted, the \t{mirror+} prefix undoes both fetch and mirror restrictions for the URI.
1040
1041 -\ChangeWhenAddingAnEAPI{8}
1042 +\ChangeWhenAddingAnEAPI{9}
1043 \begin{centertable}{EAPIs supporting \t{SRC_URI} arrows and selective URI restrictions}
1044 \label{tab:uri-arrows-table}
1045 \begin{tabular}{lll}
1046 @@ -190,7 +190,7 @@ restricted, the \t{mirror+} prefix undoes both fetch and mirror restrictions for
1047 \midrule
1048 0, 1 & No & No \\
1049 2, 3, 4, 5, 6, 7 & Yes & No \\
1050 - 8 & Yes & Yes \\
1051 + 8, 9 & Yes & Yes \\
1052 \bottomrule
1053 \end{tabular}
1054 \end{centertable}
1055 @@ -275,7 +275,7 @@ any \t{DEPEND} or \t{RDEPEND} set in an eclass does not change the implicit \t{R
1056 the ebuild portion, and any \t{DEPEND} value set in an eclass does not get treated as being part of
1057 \t{RDEPEND}.
1058
1059 -\ChangeWhenAddingAnEAPI{8}
1060 +\ChangeWhenAddingAnEAPI{9}
1061 \begin{centertable}{EAPIs with \t{RDEPEND=DEPEND} default}
1062 \label{tab:rdepend-depend-table}
1063 \begin{tabular}{ll}
1064 @@ -284,7 +284,7 @@ the ebuild portion, and any \t{DEPEND} value set in an eclass does not get treat
1065 \multicolumn{1}{c}{\textbf{\t{RDEPEND=DEPEND}?}} \\
1066 \midrule
1067 0, 1, 2, 3 & Yes \\
1068 - 4, 5, 6, 7, 8 & No \\
1069 + 4, 5, 6, 7, 8, 9 & No \\
1070 \bottomrule
1071 \end{tabular}
1072 \end{centertable}
1073 @@ -319,7 +319,7 @@ not be exported to the ebuild environment:
1074 \note{Thus, by extension of section~\ref{sec:metadata-invariance}, phase functions must not be
1075 defined based upon any variant condition.}
1076
1077 -\ChangeWhenAddingAnEAPI{8}
1078 +\ChangeWhenAddingAnEAPI{9}
1079 \begin{centertable}{EAPIs supporting \t{DEFINED_PHASES}}
1080 \label{tab:defined-phases-table}
1081 \begin{tabular}{ll}
1082 @@ -328,7 +328,7 @@ defined based upon any variant condition.}
1083 \multicolumn{1}{c}{\textbf{Supports \t{DEFINED_PHASES}?}} \\
1084 \midrule
1085 0, 1, 2, 3 & Optionally \\
1086 - 4, 5, 6, 7, 8 & Yes \\
1087 + 4, 5, 6, 7, 8, 9 & Yes \\
1088 \bottomrule
1089 \end{tabular}
1090 \end{centertable}
1091
1092 diff --git a/eclasses.tex b/eclasses.tex
1093 index e23dcd8..3f8f653 100644
1094 --- a/eclasses.tex
1095 +++ b/eclasses.tex
1096 @@ -42,7 +42,7 @@ the previous one is loaded. For EAPIs listed in table~\ref{tab:accumulate-vars}
1097 value is appended to that defined by the ebuild. In the case of \t{RDEPEND}, this is done after
1098 the implicit \t{RDEPEND} rules in section~\ref{sec:rdepend-depend} are applied.
1099
1100 -\ChangeWhenAddingAnEAPI{8}
1101 +\ChangeWhenAddingAnEAPI{9}
1102 \begin{centertable}{EAPIs accumulating \t{PROPERTIES} and \t{RESTRICT} across eclasses}
1103 \label{tab:accumulate-vars}
1104 \begin{tabular}{lll}
1105 @@ -52,7 +52,7 @@ the implicit \t{RDEPEND} rules in section~\ref{sec:rdepend-depend} are applied.
1106 \multicolumn{1}{c}{\textbf{Accumulates \t{RESTRICT}?}} \\
1107 \midrule
1108 0, 1, 2, 3, 4, 5, 6, 7 & No & No \\
1109 - 8 & Yes & Yes \\
1110 + 8, 9 & Yes & Yes \\
1111 \bottomrule
1112 \end{tabular}
1113 \end{centertable}
1114
1115 diff --git a/merge.tex b/merge.tex
1116 index 6fcfeec..ab320a6 100644
1117 --- a/merge.tex
1118 +++ b/merge.tex
1119 @@ -86,7 +86,7 @@ held under the original image directory.
1120 In other EAPIs, the behaviour with respect to file modification times
1121 is undefined.
1122
1123 -\ChangeWhenAddingAnEAPI{8}
1124 +\ChangeWhenAddingAnEAPI{9}
1125 \begin{centertable}{Preservation of file modification times (mtimes)}
1126 \label{tab:mtime-preserve}
1127 \begin{tabular}{ll}
1128 @@ -94,8 +94,8 @@ is undefined.
1129 \multicolumn{1}{c}{\textbf{EAPI}} &
1130 \multicolumn{1}{c}{\textbf{mtimes preserved?}} \\
1131 \midrule
1132 - 0, 1, 2 & Undefined \\
1133 - 3, 4, 5, 6, 7, 8 & Yes \\
1134 + 0, 1, 2 & Undefined \\
1135 + 3, 4, 5, 6, 7, 8, 9 & Yes \\
1136 \bottomrule
1137 \end{tabular}
1138 \end{centertable}
1139
1140 diff --git a/pkg-mgr-commands.tex b/pkg-mgr-commands.tex
1141 index d4dcffe..7d2511f 100644
1142 --- a/pkg-mgr-commands.tex
1143 +++ b/pkg-mgr-commands.tex
1144 @@ -32,7 +32,7 @@ The following commands affect this behaviour:
1145 option and in EAPIs supporting this option, see table~\ref{tab:die-properties}.
1146 \end{description}
1147
1148 -\ChangeWhenAddingAnEAPI{8}
1149 +\ChangeWhenAddingAnEAPI{9}
1150 \begin{centertable}{EAPI command failure behaviour}
1151 \label{tab:commands-die-table}
1152 \begin{tabular}{llll}
1153 @@ -44,7 +44,7 @@ The following commands affect this behaviour:
1154 \midrule
1155 0, 1, 2, 3 & Non-zero exit & No & n/a \\
1156 4, 5, 6 & Aborts & Yes & No \\
1157 - 7, 8 & Aborts & Yes & Yes \\
1158 + 7, 8, 9 & Aborts & Yes & Yes \\
1159 \bottomrule
1160 \end{tabular}
1161 \end{centertable}
1162 @@ -55,7 +55,7 @@ The following commands affect this behaviour:
1163 \featurelabel{banned-commands} Some commands are banned in some EAPIs. If a banned command is
1164 called, the package manager must abort the build process indicating an error.
1165
1166 -\ChangeWhenAddingAnEAPI{8}
1167 +\ChangeWhenAddingAnEAPI{9} % two places
1168 \begin{centertable}{Banned commands}
1169 \label{tab:banned-commands-table}
1170 \begin{tabular}{lllllll}
1171 @@ -73,7 +73,7 @@ called, the package manager must abort the build process indicating an error.
1172 0, 1, 2, 3 & No & No & No & No & No & No \\
1173 4, 5 & Yes & Yes & No & No & No & No \\
1174 6 & Yes & Yes & Yes & No & No & No \\
1175 - 7, 8 & Yes & Yes & Yes & Yes & Yes & Yes \\
1176 + 7, 8, 9 & Yes & Yes & Yes & Yes & Yes & Yes \\
1177 \midrule
1178 \multicolumn{1}{c}{\textbf{EAPI}} &
1179 \multicolumn{6}{c}{\textbf{Command banned?}} \\
1180 @@ -83,7 +83,7 @@ called, the package manager must abort the build process indicating an error.
1181 \multicolumn{1}{c}{\textbf{\t{hasq}}} & & & \\
1182 \midrule
1183 0, 1, 2, 3, 4, 5, 6, 7 & No & No & No & & & \\
1184 - 8 & Yes & Yes & Yes & & & \\
1185 + 8, 9 & Yes & Yes & Yes & & & \\
1186 \bottomrule
1187 \end{tabular}
1188 \end{centertable}
1189 @@ -121,7 +121,7 @@ are given, \t{-r} is assumed.
1190 otherwise, prints an empty string. The exit code is unspecified.
1191 \end{description}
1192
1193 -\ChangeWhenAddingAnEAPI{8}
1194 +\ChangeWhenAddingAnEAPI{9}
1195 \begin{centertable}{Package manager query command options supported by EAPIs}
1196 \label{tab:pm-query-options}
1197 \begin{tabular}{lllll}
1198 @@ -134,7 +134,7 @@ are given, \t{-r} is assumed.
1199 \midrule
1200 0, 1, 2, 3, 4 & No & No & No & No \\
1201 5, 6 & Yes & No & No & No \\
1202 - 7, 8 & No & Yes & Yes & Yes \\
1203 + 7, 8, 9 & No & Yes & Yes & Yes \\
1204 \bottomrule
1205 \end{tabular}
1206 \end{centertable}
1207 @@ -171,7 +171,7 @@ output, using stdout as an output facility is forbidden.
1208 message followed by a failure indicator. Returns its first argument as exit status.
1209 \end{description}
1210
1211 -\ChangeWhenAddingAnEAPI{8}
1212 +\ChangeWhenAddingAnEAPI{9}
1213 \begin{centertable}{Output commands for EAPIs}
1214 \label{tab:output-commands}
1215 \begin{tabular}{lll}
1216 @@ -181,7 +181,7 @@ output, using stdout as an output facility is forbidden.
1217 \multicolumn{1}{c}{\textbf{Supports \t{eqawarn}?}} \\
1218 \midrule
1219 0, 1, 2, 3, 4, 5, 6 & Yes & No \\
1220 - 7, 8 & No & Yes \\
1221 + 7, 8, 9 & No & Yes \\
1222 \bottomrule
1223 \end{tabular}
1224 \end{centertable}
1225 @@ -203,7 +203,7 @@ completing. Ebuilds must not run any of these commands once the current phase fu
1226 (indicating failure), calls \t{die}, passing any parameters to it.
1227 \end{description}
1228
1229 -\ChangeWhenAddingAnEAPI{8}
1230 +\ChangeWhenAddingAnEAPI{9}
1231 \begin{centertable}{Properties of \t{die} and \t{assert} commands in EAPIs}
1232 \label{tab:die-properties}
1233 \begin{tabular}{lll}
1234 @@ -216,7 +216,7 @@ completing. Ebuilds must not run any of these commands once the current phase fu
1235 \midrule
1236 0, 1, 2, 3, 4, 5 & No & No \\
1237 6 & Yes & No \\
1238 - 7, 8 & Yes & Yes \\
1239 + 7, 8, 9 & Yes & Yes \\
1240 \bottomrule
1241 \end{tabular}
1242 \end{centertable}
1243 @@ -280,7 +280,7 @@ Ebuilds must not run any of these commands once the current phase function has r
1244 subsequent calls, the command will do nothing and return~0.
1245 \end{description}
1246
1247 -\ChangeWhenAddingAnEAPI{8}
1248 +\ChangeWhenAddingAnEAPI{9}
1249 \begin{centertable}{Patch commands for EAPIs}
1250 \label{tab:patch-commands}
1251 \begin{tabular}{lll}
1252 @@ -290,7 +290,7 @@ Ebuilds must not run any of these commands once the current phase function has r
1253 \multicolumn{1}{c}{\textbf{\t{eapply_user}?}} \\
1254 \midrule
1255 0, 1, 2, 3, 4, 5 & No & No \\
1256 - 6, 7, 8 & Yes & Yes \\
1257 + 6, 7, 8, 9 & Yes & Yes \\
1258 \bottomrule
1259 \end{tabular}
1260 \end{centertable}
1261 @@ -345,7 +345,7 @@ commands once the current phase function has returned.
1262 \t{-{}-enable-static} occurs in the output of \t{configure -{}-help}.
1263 \end{itemize}
1264
1265 - \ChangeWhenAddingAnEAPI{8}
1266 + \ChangeWhenAddingAnEAPI{9} % two places
1267 \begin{centertable}{Extra \t{econf} arguments for EAPIs}
1268 \label{tab:econf-options-table}
1269 \begin{tabular}{lllll}
1270 @@ -359,7 +359,7 @@ commands once the current phase function has returned.
1271 0, 1, 2, 3, 4, 5 & No & No & No & No \\
1272 6 & No & Yes & Yes & No \\
1273 7 & No & Yes & Yes & Yes \\
1274 - 8 & Yes & Yes & Yes & Yes \\
1275 + 8, 9 & Yes & Yes & Yes & Yes \\
1276 \midrule
1277 \multicolumn{1}{c}{\textbf{EAPI}} &
1278 \multicolumn{1}{P{5.5em}}{\textbf{-{}-disable-dependency-tracking}} &
1279 @@ -369,7 +369,7 @@ commands once the current phase function has returned.
1280 0, 1, 2, 3 & No & No & No & \\
1281 4 & Yes & No & No & \\
1282 5, 6, 7 & Yes & Yes & No & \\
1283 - 8 & Yes & Yes & Yes & \\
1284 + 8, 9 & Yes & Yes & Yes & \\
1285 \bottomrule
1286 \end{tabular}
1287 \end{centertable}
1288 @@ -670,7 +670,7 @@ dosym_relative_path() {
1289
1290 \end{description}
1291
1292 -\ChangeWhenAddingAnEAPI{8}
1293 +\ChangeWhenAddingAnEAPI{9}
1294 \begin{centertable}{EAPIs supporting \t{dodoc -r}}
1295 \label{tab:dodoc-table}
1296 \begin{tabular}{ll}
1297 @@ -679,12 +679,12 @@ dosym_relative_path() {
1298 \multicolumn{1}{c}{\textbf{Supports \t{dodoc -r}?}} \\
1299 \midrule
1300 0, 1, 2, 3 & No \\
1301 - 4, 5, 6, 7, 8 & Yes \\
1302 + 4, 5, 6, 7, 8, 9 & Yes \\
1303 \bottomrule
1304 \end{tabular}
1305 \end{centertable}
1306
1307 -\ChangeWhenAddingAnEAPI{8}
1308 +\ChangeWhenAddingAnEAPI{9}
1309 \begin{centertable}{EAPIs supporting \t{doheader} and \t{newheader}}
1310 \label{tab:doheader-table}
1311 \begin{tabular}{ll}
1312 @@ -693,12 +693,12 @@ dosym_relative_path() {
1313 \multicolumn{1}{c}{\textbf{Supports \t{doheader} and \t{newheader}?}} \\
1314 \midrule
1315 0, 1, 2, 3, 4 & No \\
1316 - 5, 6, 7, 8 & Yes \\
1317 + 5, 6, 7, 8, 9 & Yes \\
1318 \bottomrule
1319 \end{tabular}
1320 \end{centertable}
1321
1322 -\ChangeWhenAddingAnEAPI{8}
1323 +\ChangeWhenAddingAnEAPI{9}
1324 \begin{centertable}{EAPIs supporting symlinks for \t{doins}}
1325 \label{tab:doins-table}
1326 \begin{tabular}{ll}
1327 @@ -707,12 +707,12 @@ dosym_relative_path() {
1328 \multicolumn{1}{c}{\textbf{\t{doins} supports symlinks?}} \\
1329 \midrule
1330 0, 1, 2, 3 & No \\
1331 - 4, 5, 6, 7, 8 & Yes \\
1332 + 4, 5, 6, 7, 8, 9 & Yes \\
1333 \bottomrule
1334 \end{tabular}
1335 \end{centertable}
1336
1337 -\ChangeWhenAddingAnEAPI{8}
1338 +\ChangeWhenAddingAnEAPI{9}
1339 \begin{centertable}{\t{doman} language support options for EAPIs}
1340 \label{tab:doman-table}
1341 \begin{tabular}{lll}
1342 @@ -723,12 +723,12 @@ dosym_relative_path() {
1343 \midrule
1344 0, 1 & No & Not applicable \\
1345 2, 3 & Yes & No \\
1346 - 4, 5, 6, 7, 8 & Yes & Yes \\
1347 + 4, 5, 6, 7, 8, 9 & Yes & Yes \\
1348 \bottomrule
1349 \end{tabular}
1350 \end{centertable}
1351
1352 -\ChangeWhenAddingAnEAPI{8}
1353 +\ChangeWhenAddingAnEAPI{9}
1354 \begin{centertable}{EAPIs supporting stdin for \t{new*} commands}
1355 \label{tab:newfoo-stdin-table}
1356 \begin{tabular}{ll}
1357 @@ -737,12 +737,12 @@ dosym_relative_path() {
1358 \multicolumn{1}{c}{\textbf{\t{new*} can read from stdin?}} \\
1359 \midrule
1360 0, 1, 2, 3, 4 & No \\
1361 - 5, 6, 7, 8 & Yes \\
1362 + 5, 6, 7, 8, 9 & Yes \\
1363 \bottomrule
1364 \end{tabular}
1365 \end{centertable}
1366
1367 -\ChangeWhenAddingAnEAPI{8}
1368 +\ChangeWhenAddingAnEAPI{9}
1369 \begin{centertable}{\t{domo} destination path in EAPIs}
1370 \label{tab:domo-path}
1371 \begin{tabular}{ll}
1372 @@ -751,12 +751,12 @@ dosym_relative_path() {
1373 \multicolumn{1}{c}{\textbf{Destination path}} \\
1374 \midrule
1375 0, 1, 2, 3, 4, 5, 6 & \t{\$\{DESTTREE\}/share/locale} \\
1376 - 7, 8 & \t{/usr/share/locale} \\
1377 + 7, 8, 9 & \t{/usr/share/locale} \\
1378 \bottomrule
1379 \end{tabular}
1380 \end{centertable}
1381
1382 -\ChangeWhenAddingAnEAPI{8}
1383 +\ChangeWhenAddingAnEAPI{9}
1384 \begin{centertable}{EAPIs supporting \t{dosym -r}}
1385 \label{tab:dosym-r}
1386 \begin{tabular}{ll}
1387 @@ -765,7 +765,7 @@ dosym_relative_path() {
1388 \multicolumn{1}{c}{\textbf{\t{dosym} supports creation of relative paths?}} \\
1389 \midrule
1390 0, 1, 2, 3, 4, 5, 6, 7 & No \\
1391 - 8 & Yes \\
1392 + 8, 9 & Yes \\
1393 \bottomrule
1394 \end{tabular}
1395 \end{centertable}
1396 @@ -807,7 +807,7 @@ function has returned.
1397
1398 \end{description}
1399
1400 -\ChangeWhenAddingAnEAPI{8}
1401 +\ChangeWhenAddingAnEAPI{9}
1402 \begin{centertable}{Commands respecting \t{insopts} for EAPIs}
1403 \label{tab:insopts-commands}
1404 \begin{tabular}{lllll}
1405 @@ -819,12 +819,12 @@ function has returned.
1406 \multicolumn{1}{c}{\textbf{\t{doheader}?}} \\
1407 \midrule
1408 0, 1, 2, 3, 4, 5, 6, 7 & Yes & Yes & Yes & Yes \\
1409 - 8 & Yes & No & No & No \\
1410 + 8, 9 & Yes & No & No & No \\
1411 \bottomrule
1412 \end{tabular}
1413 \end{centertable}
1414
1415 -\ChangeWhenAddingAnEAPI{8}
1416 +\ChangeWhenAddingAnEAPI{9}
1417 \begin{centertable}{Commands respecting \t{exeopts} for EAPIs}
1418 \label{tab:exeopts-commands}
1419 \begin{tabular}{lll}
1420 @@ -834,7 +834,7 @@ function has returned.
1421 \multicolumn{1}{c}{\textbf{\t{doinitd}?}} \\
1422 \midrule
1423 0, 1, 2, 3, 4, 5, 6, 7 & Yes & Yes \\
1424 - 8 & Yes & No \\
1425 + 8, 9 & Yes & No \\
1426 \bottomrule
1427 \end{tabular}
1428 \end{centertable}
1429 @@ -911,7 +911,7 @@ any of these functions from any other phase.
1430 supporting \t{dostrip}.
1431 \end{description}
1432
1433 -\ChangeWhenAddingAnEAPI{8}
1434 +\ChangeWhenAddingAnEAPI{9}
1435 \begin{centertable}{Commands controlling manipulation of files in the staging area in EAPIs}
1436 \label{tab:staging-area-commands}
1437 \begin{tabular}{lll}
1438 @@ -922,7 +922,7 @@ any of these functions from any other phase.
1439 \midrule
1440 0, 1, 2, 3 & No & No \\
1441 4, 5, 6 & Yes & No \\
1442 - 7, 8 & Yes & Yes \\
1443 + 7, 8, 9 & Yes & Yes \\
1444 \bottomrule
1445 \end{tabular}
1446 \end{centertable}
1447 @@ -969,7 +969,7 @@ table~\ref{tab:use-list-strictness}.
1448 table~\ref{tab:use-list-functions} as supporting \t{in_iuse}.
1449 \end{description}
1450
1451 -\ChangeWhenAddingAnEAPI{8}
1452 +\ChangeWhenAddingAnEAPI{9}
1453 \begin{centertable}{EAPI behaviour for use queries not in \t{IUSE_EFFECTIVE}}
1454 \label{tab:use-list-strictness}
1455 \begin{tabular}{ll}
1456 @@ -978,12 +978,12 @@ table~\ref{tab:use-list-strictness}.
1457 \multicolumn{1}{c}{\textbf{Behaviour}} \\
1458 \midrule
1459 0, 1, 2, 3 & Undefined \\
1460 - 4, 5, 6, 7, 8 & Error \\
1461 + 4, 5, 6, 7, 8, 9 & Error \\
1462 \bottomrule
1463 \end{tabular}
1464 \end{centertable}
1465
1466 -\ChangeWhenAddingAnEAPI{8}
1467 +\ChangeWhenAddingAnEAPI{9}
1468 \begin{centertable}{\t{usev}, \t{use_with} and \t{use_enable} arguments for EAPIs}
1469 \label{tab:use-list-args}
1470 \begin{tabular}{lll}
1471 @@ -995,12 +995,12 @@ table~\ref{tab:use-list-strictness}.
1472 \midrule
1473 0, 1, 2, 3 & No & No \\
1474 4, 5, 6, 7 & No & Yes \\
1475 - 8 & Yes & Yes \\
1476 + 8, 9 & Yes & Yes \\
1477 \bottomrule
1478 \end{tabular}
1479 \end{centertable}
1480
1481 -\ChangeWhenAddingAnEAPI{8}
1482 +\ChangeWhenAddingAnEAPI{9}
1483 \begin{centertable}{EAPIs supporting \t{usex} and \t{in_iuse}}
1484 \label{tab:use-list-functions}
1485 \begin{tabular}{lll}
1486 @@ -1011,7 +1011,7 @@ table~\ref{tab:use-list-strictness}.
1487 \midrule
1488 0, 1, 2, 3, 4 & No & No \\
1489 5 & Yes & No \\
1490 - 6, 7, 8 & Yes & Yes \\
1491 + 6, 7, 8, 9 & Yes & Yes \\
1492 \bottomrule
1493 \end{tabular}
1494 \end{centertable}
1495 @@ -1096,7 +1096,7 @@ the second, inclusively.
1496 section~\ref{sec:version-spec}. Comparison is done using algorithm~\ref{alg:version-comparison}.
1497 \end{description}
1498
1499 -\ChangeWhenAddingAnEAPI{8}
1500 +\ChangeWhenAddingAnEAPI{9}
1501 \begin{centertable}{EAPIs supporting version manipulation commands}
1502 \label{tab:version-commands}
1503 \begin{tabular}{llll}
1504 @@ -1107,7 +1107,7 @@ the second, inclusively.
1505 \multicolumn{1}{c}{\textbf{\t{ver_test}?}} \\
1506 \midrule
1507 0, 1, 2, 3, 4, 5, 6 & No & No & No \\
1508 - 7, 8 & Yes & Yes & Yes \\
1509 + 7, 8, 9 & Yes & Yes & Yes \\
1510 \bottomrule
1511 \end{tabular}
1512 \end{centertable}
1513 @@ -1184,7 +1184,7 @@ has returned.
1514 \featurelabel{unpack-ignore-case} \t{unpack} matches filename extensions in a case-insensitive
1515 manner, for EAPIs listed such in table~\ref{tab:unpack-behaviour}.
1516
1517 - \ChangeWhenAddingAnEAPI{8}
1518 + \ChangeWhenAddingAnEAPI{9}
1519 \begin{centertable}{\t{unpack} behaviour for EAPIs}
1520 \label{tab:unpack-behaviour}
1521 \begin{tabular}{lll}
1522 @@ -1194,12 +1194,12 @@ has returned.
1523 \multicolumn{1}{c}{\textbf{Case-insensitive matching?}} \\
1524 \midrule
1525 0, 1, 2, 3, 4, 5 & No & No \\
1526 - 6, 7, 8 & Yes & Yes \\
1527 + 6, 7, 8, 9 & Yes & Yes \\
1528 \bottomrule
1529 \end{tabular}
1530 \end{centertable}
1531
1532 - \ChangeWhenAddingAnEAPI{8}
1533 + \ChangeWhenAddingAnEAPI{9}
1534 \begin{centertable}{\t{unpack} extensions for EAPIs}
1535 \label{tab:unpack-extensions-table}
1536 \begin{tabular}{llllllll}
1537 @@ -1215,7 +1215,7 @@ has returned.
1538 0, 1, 2 & No & No & No & Yes & Yes & Yes \\
1539 3, 4, 5 & Yes & Yes & No & Yes & Yes & Yes \\
1540 6, 7 & Yes & Yes & Yes & Yes & Yes & Yes \\
1541 - 8 & Yes & Yes & Yes & No & No & No \\
1542 + 8, 9 & Yes & Yes & Yes & No & No & No \\
1543 \bottomrule
1544 \end{tabular}
1545 \end{centertable}
1546 @@ -1283,7 +1283,7 @@ has returned.
1547
1548 \end{description}
1549
1550 -\ChangeWhenAddingAnEAPI{8}
1551 +\ChangeWhenAddingAnEAPI{9}
1552 \begin{centertable}{Misc commands for EAPIs}
1553 \label{tab:misc-commands}
1554 \begin{tabular}{llll}
1555 @@ -1295,7 +1295,7 @@ has returned.
1556 \midrule
1557 0, 1 & No & No & No \\
1558 2, 3, 4, 5 & Yes & No & No \\
1559 - 6, 7, 8 & Yes & Yes & Yes \\
1560 + 6, 7, 8, 9 & Yes & Yes & Yes \\
1561 \bottomrule
1562 \end{tabular}
1563 \end{centertable}
1564
1565 diff --git a/pms.tex b/pms.tex
1566 index 97d6d30..e066c2d 100644
1567 --- a/pms.tex
1568 +++ b/pms.tex
1569 @@ -21,8 +21,8 @@
1570 pdfkeywords={Gentoo, package manager, specification},
1571 }
1572
1573 -\CurrentEAPIIs{8}
1574 -\ChangeWhenAddingAnEAPI{8}
1575 +\CurrentEAPIIs{9}
1576 +\ChangeWhenAddingAnEAPI{9}
1577
1578 \begin{document}
1579 \maketitle
1580
1581 diff --git a/profile-variables.tex b/profile-variables.tex
1582 index ba40bf4..0f2dc3c 100644
1583 --- a/profile-variables.tex
1584 +++ b/profile-variables.tex
1585 @@ -40,7 +40,7 @@ Other variables, except where they affect only package-manager-specific function
1586 Portage's \t{FEATURES} variable), must not be treated incrementally---later definitions shall
1587 completely override those in parent profiles.
1588
1589 -\ChangeWhenAddingAnEAPI{8}
1590 +\ChangeWhenAddingAnEAPI{9}
1591 \begin{centertable}{Profile-defined \t{IUSE} injection for EAPIs}
1592 \label{tab:profile-iuse-injection-table}
1593 \begin{tabular}{ll}
1594 @@ -49,12 +49,12 @@ completely override those in parent profiles.
1595 \multicolumn{1}{c}{\textbf{Supports profile-defined \t{IUSE} injection?}} \\
1596 \midrule
1597 0, 1, 2, 3, 4 & No \\
1598 - 5, 6, 7, 8 & Yes \\
1599 + 5, 6, 7, 8, 9 & Yes \\
1600 \bottomrule
1601 \end{tabular}
1602 \end{centertable}
1603
1604 -\ChangeWhenAddingAnEAPI{8}
1605 +\ChangeWhenAddingAnEAPI{9}
1606 \begin{centertable}{Profile-defined unsetting of variables in EAPIs}
1607 \label{tab:profile-env-unset}
1608 \begin{tabular}{ll}
1609 @@ -63,7 +63,7 @@ completely override those in parent profiles.
1610 \multicolumn{1}{c}{\textbf{Supports \t{ENV_UNSET}?}} \\
1611 \midrule
1612 0, 1, 2, 3, 4, 5, 6 & No \\
1613 - 7, 8 & Yes \\
1614 + 7, 8, 9 & Yes \\
1615 \bottomrule
1616 \end{tabular}
1617 \end{centertable}
1618
1619 diff --git a/profiles.tex b/profiles.tex
1620 index 30da81b..8d8226a 100644
1621 --- a/profiles.tex
1622 +++ b/profiles.tex
1623 @@ -78,7 +78,7 @@ in that directory, unless their name begins with a dot, will be concatenated in
1624 filename in the POSIX locale and the result will be processed as if it were a single file.
1625 Any subdirectories will be ignored.
1626
1627 -\ChangeWhenAddingAnEAPI{8}
1628 +\ChangeWhenAddingAnEAPI{9}
1629 \begin{centertable}{EAPIs supporting directories for profile files}
1630 \label{tab:profile-file-dirs}
1631 \begin{tabular}{ll}
1632 @@ -87,7 +87,7 @@ Any subdirectories will be ignored.
1633 \multicolumn{1}{c}{\textbf{Supports directories for profile files?}} \\
1634 \midrule
1635 0, 1, 2, 3, 4, 5, 6 & No \\
1636 - 7, 8 & Yes \\
1637 + 7, 8, 9 & Yes \\
1638 \bottomrule
1639 \end{tabular}
1640 \end{centertable}
1641 @@ -123,7 +123,7 @@ it is actually installed. Because it has severe adverse effects on USE-based and
1642 dependencies, its use is strongly deprecated and package manager support must be regarded as purely
1643 optional. Supported in EAPIs as per table~\ref{tab:package-provided}.
1644
1645 -\ChangeWhenAddingAnEAPI{8}
1646 +\ChangeWhenAddingAnEAPI{9}
1647 \begin{centertable}{EAPIs supporting \t{package.provided} in profiles}
1648 \label{tab:package-provided}
1649 \begin{tabular}{ll}
1650 @@ -132,7 +132,7 @@ optional. Supported in EAPIs as per table~\ref{tab:package-provided}.
1651 \multicolumn{1}{c}{\textbf{Supports \t{package.provided}?}} \\
1652 \midrule
1653 0, 1, 2, 3, 4, 5, 6 & Optionally \\
1654 - 7, 8 & No \\
1655 + 7, 8, 9 & No \\
1656 \bottomrule
1657 \end{tabular}
1658 \end{centertable}
1659 @@ -165,7 +165,7 @@ only act on packages that are merged due to a stable keyword in the sense of
1660 subsection~\ref{sec:keywords}. Thus, these files can be used to restrict the feature set deemed
1661 stable in a package.
1662
1663 -\ChangeWhenAddingAnEAPI{8}
1664 +\ChangeWhenAddingAnEAPI{9}
1665 \begin{centertable}{Profile directory support for masking/forcing use flags in stable versions only}
1666 \label{tab:profile-stablemask}
1667 \begin{tabular}{ll}
1668 @@ -174,7 +174,7 @@ stable in a package.
1669 \multicolumn{1}{c}{\textbf{Supports masking/forcing use flags in stable versions?}} \\
1670 \midrule
1671 0, 1, 2, 3, 4 & No \\
1672 - 5, 6, 7, 8 & Yes \\
1673 + 5, 6, 7, 8, 9 & Yes \\
1674 \bottomrule
1675 \end{tabular}
1676 \end{centertable}
1677
1678 diff --git a/tree-layout.tex b/tree-layout.tex
1679 index aa04d3d..b988f6e 100644
1680 --- a/tree-layout.tex
1681 +++ b/tree-layout.tex
1682 @@ -127,7 +127,7 @@ manager must ignore any files in this directory that it does not recognise.
1683 \item[updates/] This directory is described in section~\ref{sec:updates-dir}.
1684 \end{description}
1685
1686 -\ChangeWhenAddingAnEAPI{8}
1687 +\ChangeWhenAddingAnEAPI{9}
1688 \begin{centertable}{EAPIs supporting a directory for \t{package.mask}}
1689 \label{tab:package-mask-dir}
1690 \begin{tabular}{ll}
1691 @@ -136,7 +136,7 @@ manager must ignore any files in this directory that it does not recognise.
1692 \multicolumn{1}{c}{\textbf{\t{package.mask} can be a directory?}} \\
1693 \midrule
1694 0, 1, 2, 3, 4, 5, 6 & No \\
1695 - 7, 8 & Yes \\
1696 + 7, 8, 9 & Yes \\
1697 \bottomrule
1698 \end{tabular}
1699 \end{centertable}
1700 @@ -233,7 +233,7 @@ Any name that has appeared as the origin of a move must not be reused in the fut
1701 that has appeared as the origin of a slot move may not be used by packages matching the spec of
1702 that slot move in the future.
1703
1704 -\ChangeWhenAddingAnEAPI{8}
1705 +\ChangeWhenAddingAnEAPI{9}
1706 \begin{centertable}{Naming rules for files in \t{updates} directory for EAPIs}
1707 \label{tab:updates-filenames}
1708 \begin{tabular}{ll}
1709 @@ -242,7 +242,7 @@ that slot move in the future.
1710 \multicolumn{1}{c}{\textbf{Files per quarter year?}} \\
1711 \midrule
1712 0, 1, 2, 3, 4, 5, 6, 7 & Yes \\
1713 - 8 & No \\
1714 + 8, 9 & No \\
1715 \bottomrule
1716 \end{tabular}
1717 \end{centertable}