From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 9279F1382C5 for ; Sat, 5 Jun 2021 08:57:08 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 3D132E077F; Sat, 5 Jun 2021 08:57:07 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id B7802E077F for ; Sat, 5 Jun 2021 08:57:06 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 55E4C3409EB for ; Sat, 5 Jun 2021 08:57:05 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 8B961733 for ; Sat, 5 Jun 2021 08:57:03 +0000 (UTC) From: "Ulrich Müller" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Ulrich Müller" Message-ID: <1622883331.5b8055e40ac6698dad463f5df553a9c17928abc9.ulm@gentoo> Subject: [gentoo-commits] proj/pms:eapi-8 commit in: / X-VCS-Repository: proj/pms X-VCS-Files: commands.tex dependencies.tex eapi-differences.tex eapis.tex ebuild-env-vars.tex ebuild-format.tex ebuild-functions.tex ebuild-vars.tex merge.tex pkg-mgr-commands.tex pms.tex profile-variables.tex profiles.tex tree-layout.tex X-VCS-Directories: / X-VCS-Committer: ulm X-VCS-Committer-Name: Ulrich Müller X-VCS-Revision: 5b8055e40ac6698dad463f5df553a9c17928abc9 X-VCS-Branch: eapi-8 Date: Sat, 5 Jun 2021 08:57:03 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: bda9374f-c858-4613-8ec4-081e79d31ed4 X-Archives-Hash: f8fda30c9f50c6dfe405f8defe40bba9 commit: 5b8055e40ac6698dad463f5df553a9c17928abc9 Author: Ulrich Müller gentoo org> AuthorDate: Thu May 10 17:08:50 2018 +0000 Commit: Ulrich Müller gentoo org> CommitDate: Sat Jun 5 08:55:31 2021 +0000 URL: https://gitweb.gentoo.org/proj/pms.git/commit/?id=5b8055e4 Add an EAPI 8 identical to EAPI 7 Signed-off-by: Ulrich Müller gentoo.org> commands.tex | 4 +- dependencies.tex | 26 +++---- eapi-differences.tex | 201 +++++++++++++++++++++++++++----------------------- eapis.tex | 3 +- ebuild-env-vars.tex | 24 +++--- ebuild-format.tex | 4 +- ebuild-functions.tex | 42 +++++------ ebuild-vars.tex | 24 +++--- merge.tex | 4 +- pkg-mgr-commands.tex | 84 ++++++++++----------- pms.tex | 4 +- profile-variables.tex | 8 +- profiles.tex | 12 +-- tree-layout.tex | 4 +- 14 files changed, 230 insertions(+), 214 deletions(-) diff --git a/commands.tex b/commands.tex index 799a20c..d0ad87d 100644 --- a/commands.tex +++ b/commands.tex @@ -33,7 +33,7 @@ The following commands must always be available in the ebuild environment: table~\ref{tab:system-commands-table} as requiring GNU find. \end{compactitem} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{System commands for EAPIs} \label{tab:system-commands-table} \begin{tabular}{lll} @@ -44,7 +44,7 @@ The following commands must always be available in the ebuild environment: \midrule 0, 1, 2, 3, 4 & Undefined & Any \\ 5, 6 & Yes & Any \\ - 7 & Yes & 2.7 \\ + 7, 8 & Yes & 2.7 \\ \bottomrule \end{tabular} \end{centertable} diff --git a/dependencies.tex b/dependencies.tex index 67855f5..3ef6fa6 100644 --- a/dependencies.tex +++ b/dependencies.tex @@ -82,7 +82,7 @@ as supporting \t{BDEPEND}, the build dependencies are split into two subclasses: dependency. \end{compactitem} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting additional dependency types} \label{tab:depend-table} \begin{tabular}{ll} @@ -91,7 +91,7 @@ as supporting \t{BDEPEND}, the build dependencies are split into two subclasses: \multicolumn{1}{c}{\textbf{Supports \t{BDEPEND}?}} \\ \midrule 0, 1, 2, 3, 4, 5, 6 & No \\ - 7 & Yes \\ + 7, 8 & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -146,7 +146,7 @@ be surrounded on both sides by whitespace, except at the start and end of the st In particular, note that whitespace is not optional. -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting \t{REQUIRED_USE ??}\ groups} \label{tab:at-most-one-of-table} \begin{tabular}{ll} @@ -155,7 +155,7 @@ In particular, note that whitespace is not optional. \multicolumn{1}{c}{\textbf{Supports \t{REQUIRED_USE ??}\ groups?}} \\ \midrule 0, 1, 2, 3, 4 & No \\ - 5, 6, 7 & Yes \\ + 5, 6, 7, 8 & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -195,7 +195,7 @@ In an exactly-one-of group, exactly one immediate child element must be matched. In EAPIs specified in table~\ref{tab:empty-dep-groups}, an empty exactly-one-of group counts as being matched. -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{Matching of empty dependency groups in EAPIs} \label{tab:empty-dep-groups} \begin{tabular}{ll} @@ -205,7 +205,7 @@ being matched. are matched?}} \\ \midrule 0, 1, 2, 3, 4, 5, 6 & Yes \\ - 7 & No \\ + 7, 8 & No \\ \bottomrule \end{tabular} \end{centertable} @@ -241,7 +241,7 @@ manager must warn or error if this feature is used with an EAPI not supporting u \note{Order is important. The slot restriction must come before use dependencies.} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{Support for \t{SLOT} dependencies and sub-slots in EAPIs} \label{tab:slot-deps-table} \begin{tabular}{lll} @@ -252,12 +252,12 @@ manager must warn or error if this feature is used with an EAPI not supporting u \midrule 0 & No & No \\ 1, 2, 3, 4 & Named only & No \\ - 5, 6, 7 & Named and operator & Yes \\ + 5, 6, 7, 8 & Named and operator & Yes \\ \bottomrule \end{tabular} \end{centertable} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting \t{USE} dependencies} \label{tab:use-deps-table} \begin{tabular}{ll} @@ -267,7 +267,7 @@ manager must warn or error if this feature is used with an EAPI not supporting u \midrule 0, 1 & No \\ 2, 3 & 2-style \\ - 4, 5, 6, 7 & 4-style \\ + 4, 5, 6, 7, 8 & 4-style \\ \bottomrule \end{tabular} \end{centertable} @@ -301,7 +301,7 @@ ignored by the package manager, so long as any blocked package will be uninstall strong block must not be ignored. The mapping from one or two exclamation marks to strength is described in table~\ref{tab:bang-strength-table}. -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{Exclamation mark strengths for EAPIs} \label{tab:bang-strength-table} \begin{tabular}{lll} @@ -310,8 +310,8 @@ described in table~\ref{tab:bang-strength-table}. \multicolumn{1}{c}{\textbf{\t{!}}} & \multicolumn{1}{c}{\textbf{\t{!!}}} \\ \midrule - 0, 1 & Unspecified & Forbidden \\ - 2, 3, 4, 5, 6, 7 & Weak & Strong \\ + 0, 1 & Unspecified & Forbidden \\ + 2, 3, 4, 5, 6, 7, 8 & Weak & Strong \\ \bottomrule \end{tabular} \end{centertable} diff --git a/eapi-differences.tex b/eapi-differences.tex index bc49a33..d5513c3 100644 --- a/eapi-differences.tex +++ b/eapi-differences.tex @@ -6,34 +6,36 @@ below; entries marked with an asterisk differ between these EAPIs. See the 2012- of this document for a complete table of previous EAPIs.} % 2012-09-20 (EAPI 5) edition has a table of EAPIs 0 to 5 -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{landscape} -\begin{longtable}{llP{7.5em}P{7.5em}P{7.5em}P{7.5em}P{7.5em}} +\begin{longtable}{llP{7.5em}P{7.5em}P{7.5em}P{7.5em}P{7.5em}P{7.5em}} \caption{Features in EAPIs}\\ \toprule \multicolumn{1}{c}{\textbf{Feature}} & \multicolumn{1}{c}{\textbf{Reference}} & -\multicolumn{5}{c}{\textbf{EAPIs}} \\ +\multicolumn{6}{c}{\textbf{EAPIs}} \\ \multicolumn{1}{c}{} & \multicolumn{1}{c}{} & \multicolumn{1}{c}{0, 1, 2, 3} & \multicolumn{1}{c}{4} & \multicolumn{1}{c}{5} & \multicolumn{1}{c}{6} & -\multicolumn{1}{c}{7} \\ +\multicolumn{1}{c}{7} & +\multicolumn{1}{c}{8} \\ \midrule \endfirsthead \midrule \multicolumn{1}{c}{\textbf{Feature}} & \multicolumn{1}{c}{\textbf{Reference}} & -\multicolumn{5}{c}{\textbf{EAPIs}} \\ +\multicolumn{6}{c}{\textbf{EAPIs}} \\ \multicolumn{1}{c}{} & \multicolumn{1}{c}{} & \multicolumn{1}{c}{0, 1, 2, 3} & \multicolumn{1}{c}{4} & \multicolumn{1}{c}{5} & \multicolumn{1}{c}{6} & -\multicolumn{1}{c}{7} \\ +\multicolumn{1}{c}{7} & +\multicolumn{1}{c}{8} \\ \midrule \endhead \midrule @@ -42,92 +44,92 @@ of this document for a complete table of previous EAPIs.} \endlastfoot \t{package.mask} directory & \compactfeatureref{package-mask-dir} & - No & No & No & No & Yes \\ + No & No & No & No & Yes & Yes \\ Profile files as directories & \compactfeatureref{profile-file-dirs} & - No & No & No & No & Yes \\ + No & No & No & No & Yes & Yes \\ \t{package.provided} & \compactfeatureref{package-provided} & - Optional & Optional & Optional & Optional & No \\ + Optional & Optional & Optional & Optional & No & No \\ Stable use masking/forcing & \compactfeatureref{stablemask} & - No & No & Yes & Yes & Yes \\ + No & No & Yes & Yes & Yes & Yes \\ Bash version & \compactfeatureref{bash-version} & - 3.2 & 3.2 & 3.2 & 4.2 & 4.2 \\ + 3.2 & 3.2 & 3.2 & 4.2 & 4.2 & 4.2 \\ \t{failglob} in global scope & \compactfeatureref{failglob} & - No & No & No & Yes & Yes \\ + No & No & No & Yes & Yes & Yes \\ \t{IUSE} defaults & \compactfeatureref{iuse-defaults} & - * & Yes & Yes & Yes & Yes \\ + * & Yes & Yes & Yes & Yes & Yes \\ \t{REQUIRED_USE} & \compactfeatureref{required-use} & - No & Yes & Yes & Yes & Yes \\ + No & Yes & Yes & Yes & Yes & Yes \\ \t{PROPERTIES} & \compactfeatureref{properties} & - Optionally & Yes & Yes & Yes & Yes \\ + Optionally & Yes & Yes & Yes & Yes & Yes \\ \t{SRC_URI} arrows & \compactfeatureref{src-uri-arrows} & - * & Yes & Yes & Yes & Yes \\ + * & Yes & Yes & Yes & Yes & Yes \\ \t{RDEPEND=DEPEND} & \compactfeatureref{rdepend-depend} & - Yes & No & No & No & No \\ + Yes & No & No & No & No & No \\ \t{DEFINED_PHASES} & \compactfeatureref{defined-phases} & - Optionally & Yes & Yes & Yes & Yes \\ + Optionally & Yes & Yes & Yes & Yes & Yes \\ \t{BDEPEND} & \compactfeatureref{bdepend} & - No & No & No & No & Yes \\ + No & No & No & No & Yes & Yes \\ \t{??\ ( )} groups & \compactfeatureref{at-most-one-of} & - No & No & Yes & Yes & Yes \\ + No & No & Yes & Yes & Yes & Yes \\ Empty \t{||}, \t{\textasciicircum\textasciicircum} groups match & \compactfeatureref{empty-dep-groups} & - Yes & Yes & Yes & Yes & No \\ + Yes & Yes & Yes & Yes & No & No \\ Slot dependencies & \compactfeatureref{slot-deps} & - * & Named & Named and Operator & Named and Operator & Named and Operator \\ + * & Named & Named and Operator & Named and Operator & Named and Operator & Named and Operator \\ Sub-slots & \compactfeatureref{sub-slot} & - No & No & Yes & Yes & Yes \\ + No & No & Yes & Yes & Yes & Yes \\ Use dependencies & \compactfeatureref{use-deps} & - * & 4-style & 4-style & 4-style & 4-style \\ + * & 4-style & 4-style & 4-style & 4-style & 4-style \\ \t{!}\ blockers & \compactfeatureref{bang-strength} & - * & Weak & Weak & Weak & Weak \\ + * & Weak & Weak & Weak & Weak & Weak \\ \t{!!}\ blockers & \compactfeatureref{bang-strength} & - * & Strong & Strong & Strong & Strong \\ + * & Strong & Strong & Strong & Strong & Strong \\ \t{S} to \t{WORKDIR} fallback & \compactfeatureref{s-workdir-fallback} & - Always & Conditional & Conditional & Conditional & Conditional \\ + Always & Conditional & Conditional & Conditional & Conditional & Conditional \\ \t{pkg_pretend} & \compactfeatureref{pkg-pretend} & - No & Yes & Yes & Yes & Yes \\ + No & Yes & Yes & Yes & Yes & Yes \\ \t{src_prepare} & \compactfeatureref{src-prepare} & - * & Yes & Yes & Yes & Yes \\ + * & Yes & Yes & Yes & Yes & Yes \\ \t{src_prepare} style & \compactfeatureref{src-prepare} & - * & no-op & no-op & 6 & 6 \\ + * & no-op & no-op & 6 & 6 & 6 \\ \t{src_configure} & \compactfeatureref{src-configure} & - * & Yes & Yes & Yes & Yes \\ + * & Yes & Yes & Yes & Yes & Yes \\ \t{src_compile} style & \compactfeatureref{src-compile} & - * & 2 & 2 & 2 & 2 \\ + * & 2 & 2 & 2 & 2 & 2 \\ Parallel tests & \compactfeatureref{parallel-tests} & - No & No & Yes & Yes & Yes \\ + No & No & Yes & Yes & Yes & Yes \\ \t{src_install} style & \compactfeatureref{src-install} & - no-op & 4 & 4 & 6 & 6 \\ + no-op & 4 & 4 & 6 & 6 & 6 \\ \t{pkg_info} & \compactfeatureref{pkg-info} & - Installed & Both & Both & Both & Both \\ + Installed & Both & Both & Both & Both & Both \\ \t{default_} phase functions & \compactfeatureref{default-phase-funcs} & * & @@ -137,185 +139,190 @@ Parallel tests & \compactfeatureref{parallel-tests} & \t{src_compile}, \t{src_test}, \t{src_install} & \t{pkg_nofetch}, \t{src_unpack}, \t{src_prepare}, \t{src_configure}, \t{src_compile}, \t{src_test}, \t{src_install} & + \t{pkg_nofetch}, \t{src_unpack}, \t{src_prepare}, \t{src_configure}, + \t{src_compile}, \t{src_test}, \t{src_install} & \t{pkg_nofetch}, \t{src_unpack}, \t{src_prepare}, \t{src_configure}, \t{src_compile}, \t{src_test}, \t{src_install} \\ \t{AA} & \compactfeatureref{aa} & - Yes & No & No & No & No \\ + Yes & No & No & No & No & No \\ \t{PORTDIR} & \compactfeatureref{portdir} & - Yes & Yes & Yes & Yes & No \\ + Yes & Yes & Yes & Yes & No & No \\ \t{ECLASSDIR} & \compactfeatureref{eclassdir} & - Yes & Yes & Yes & Yes & No \\ + Yes & Yes & Yes & Yes & No & No \\ \t{SYSROOT}, \t{ESYSROOT} & \compactfeatureref{sysroot} & - No & No & No & No & Yes \\ + No & No & No & No & Yes & Yes \\ \t{BROOT} & \compactfeatureref{broot} & - No & No & No & No & Yes \\ + No & No & No & No & Yes & Yes \\ \t{DESTTREE} & \compactfeatureref{desttree} & - Yes & Yes & Yes & Yes & No \\ + Yes & Yes & Yes & Yes & No & No \\ \t{INSDESTTREE} & \compactfeatureref{insdesttree} & - Yes & Yes & Yes & Yes & No \\ + Yes & Yes & Yes & Yes & No & No \\ \t{KV} & \compactfeatureref{kv} & - Yes & No & No & No & No \\ + Yes & No & No & No & No & No \\ \t{EBUILD_PHASE_FUNC} & \compactfeatureref{ebuild-phase-func} & - No & No & Yes & Yes & Yes \\ + No & No & Yes & Yes & Yes & Yes \\ \t{MERGE_TYPE} & \compactfeatureref{merge-type} & - No & Yes & Yes & Yes & Yes \\ + No & Yes & Yes & Yes & Yes & Yes \\ \t{ENV_UNSET} & \compactfeatureref{env-unset} & - No & No & No & No & Yes \\ + No & No & No & No & Yes & Yes \\ Sane locale settings & \compactfeatureref{locale-settings} & - Undefined & Undefined & Undefined & Yes & Yes \\ + Undefined & Undefined & Undefined & Yes & Yes & Yes \\ Profile \t{IUSE} injection & \compactfeatureref{profile-iuse-inject} & - No & No & Yes & Yes & Yes \\ + No & No & Yes & Yes & Yes & Yes \\ \t{REPLACING_VERSIONS} & \compactfeatureref{replace-version-vars} & - No & Yes & Yes & Yes & Yes \\ + No & Yes & Yes & Yes & Yes & Yes \\ \t{REPLACED_BY_VERSION} & \compactfeatureref{replace-version-vars} & - No & Yes & Yes & Yes & Yes \\ + No & Yes & Yes & Yes & Yes & Yes \\ \t{EPREFIX}, \t{ED}, \t{EROOT} & \compactfeatureref{offset-prefix-vars} & - * & Yes & Yes & Yes & Yes \\ + * & Yes & Yes & Yes & Yes & Yes \\ Trailing slash in \t{D} etc. & \compactfeatureref{trailing-slash} & - Yes & Yes & Yes & Yes & No \\ + Yes & Yes & Yes & Yes & No & No \\ GNU \t{patch} version & \compactfeatureref{gnu-patch} & - Any & Any & Any & Any & 2.7 \\ + Any & Any & Any & Any & 2.7 & 2.7 \\ \t{find} is GNU? & \compactfeatureref{gnu-find} & - Undefined & Undefined & Yes & Yes & Yes \\ + Undefined & Undefined & Yes & Yes & Yes & Yes \\ Most utilities die & \compactfeatureref{die-on-failure} & - No & Yes & Yes & Yes & Yes \\ + No & Yes & Yes & Yes & Yes & Yes \\ \t{nonfatal} & \compactfeatureref{nonfatal} & - No & Yes & Yes & Yes & Function / external \\ + No & Yes & Yes & Yes & Function / external & Function / external \\ \t{dohard} & \compactfeatureref{banned-commands} & - Yes & Banned & Banned & Banned & Banned \\ + Yes & Banned & Banned & Banned & Banned & Banned \\ \t{dosed} & \compactfeatureref{banned-commands} & - Yes & Banned & Banned & Banned & Banned \\ + Yes & Banned & Banned & Banned & Banned & Banned \\ \t{einstall} & \compactfeatureref{banned-commands} & - Yes & Yes & Yes & Banned & Banned \\ + Yes & Yes & Yes & Banned & Banned & Banned \\ \t{dohtml} & \compactfeatureref{banned-commands} & - Yes & Yes & Yes & Yes & Banned \\ + Yes & Yes & Yes & Yes & Banned & Banned \\ \t{dolib} & \compactfeatureref{banned-commands} & - Yes & Yes & Yes & Yes & Banned \\ + Yes & Yes & Yes & Yes & Banned & Banned \\ \t{libopts} & \compactfeatureref{banned-commands} & - Yes & Yes & Yes & Yes & Banned \\ + Yes & Yes & Yes & Yes & Banned & Banned \\ Query command options & \compactfeatureref{pm-query-options} & - None & None & \t{-{}-host-root} & \t{-{}-host-root} & \t{-b}, \t{-d}, \t{-r} \\ + None & None & \t{-{}-host-root} & \t{-{}-host-root} & \t{-b}, \t{-d}, \t{-r} & + \t{-b}, \t{-d}, \t{-r} \\ Output commands use stdout & \compactfeatureref{output-no-stdout} & - Yes & Yes & Yes & Yes & No \\ + Yes & Yes & Yes & Yes & No & No \\ \t{eqawarn} & \compactfeatureref{eqawarn} & - No & No & No & No & Yes \\ + No & No & No & No & Yes & Yes \\ \t{die -n} & \compactfeatureref{nonfatal-die} & - No & No & No & Yes & Yes \\ + No & No & No & Yes & Yes & Yes \\ \t{die} in subshell & \compactfeatureref{subshell-die} & - No & No & No & No & Yes \\ + No & No & No & No & Yes & Yes \\ \t{eapply} & \compactfeatureref{eapply} & - No & No & No & Yes & Yes \\ + No & No & No & Yes & Yes & Yes \\ \t{eapply_user} & \compactfeatureref{eapply-user} & - No & No & No & Yes & Yes \\ + No & No & No & Yes & Yes & Yes \\ \t{econf} arguments & \compactfeatureref{econf-options} & None & disable dependency tracking & disable dependency tracking, disable silent rules & disable dependency tracking, disable silent rules, docdir, htmldir & + disable dependency tracking, disable silent rules, docdir, htmldir, with sysroot & disable dependency tracking, disable silent rules, docdir, htmldir, with sysroot \\ \t{dodoc -r} & \compactfeatureref{dodoc} & - No & Yes & Yes & Yes & Yes \\ + No & Yes & Yes & Yes & Yes & Yes \\ \t{doheader} & \compactfeatureref{doheader} & - No & No & Yes & Yes & Yes \\ + No & No & Yes & Yes & Yes & Yes \\ \t{doins} handles symlinks & \compactfeatureref{doins} & - No & Yes & Yes & Yes & Yes \\ + No & Yes & Yes & Yes & Yes & Yes \\ \t{doman} languages & \compactfeatureref{doman-langs} & - * & Yes & Yes & Yes & Yes \\ + * & Yes & Yes & Yes & Yes & Yes \\ \t{doman -i18n} precedence & \compactfeatureref{doman-langs} & - * & Yes & Yes & Yes & Yes \\ + * & Yes & Yes & Yes & Yes & Yes \\ \t{domo} destination path & \compactfeatureref{domo-path} & - \t{\$\{DESTTREE\}} & \t{\$\{DESTTREE\}} & \t{\$\{DESTTREE\}} & \t{\$\{DESTTREE\}} & \t{/usr} \\ + \t{\$\{DESTTREE\}} & \t{\$\{DESTTREE\}} & \t{\$\{DESTTREE\}} & \t{\$\{DESTTREE\}} & \t{/usr} & + \t{/usr} \\ \t{new*} support stdin & \compactfeatureref{newfoo-stdin} & - No & No & Yes & Yes & Yes \\ + No & No & Yes & Yes & Yes & Yes \\ Controllable compression & \compactfeatureref{docompress} & - No & Yes & Yes & Yes & Yes \\ + No & Yes & Yes & Yes & Yes & Yes \\ \t{docompress} & \compactfeatureref{docompress} & - No & Yes & Yes & Yes & Yes \\ + No & Yes & Yes & Yes & Yes & Yes \\ Controllable stripping & \compactfeatureref{dostrip} & - No & No & No & No & Yes \\ + No & No & No & No & Yes & Yes \\ \t{dostrip} & \compactfeatureref{dostrip} & - No & No & No & No & Yes \\ + No & No & No & No & Yes & Yes \\ \t{use_with} empty third arg & \compactfeatureref{use-with} & - No & Yes & Yes & Yes & Yes \\ + No & Yes & Yes & Yes & Yes & Yes \\ \t{usex} & \compactfeatureref{usex} & - No & No & Yes & Yes & Yes \\ + No & No & Yes & Yes & Yes & Yes \\ \t{in_iuse} & \compactfeatureref{in-iuse} & - No & No & No & Yes & Yes \\ + No & No & No & Yes & Yes & Yes \\ \t{ver_*} commands & \compactfeatureref{ver-commands} & - No & No & No & No & Yes \\ + No & No & No & No & Yes & Yes \\ \t{unpack} absolute paths & \compactfeatureref{unpack-absolute} & - No & No & No & Yes & Yes \\ + No & No & No & Yes & Yes & Yes \\ \t{unpack} support for \t{xz} & \compactfeatureref{unpack-extensions} & - * & Yes & Yes & Yes & Yes \\ + * & Yes & Yes & Yes & Yes & Yes \\ \t{unpack} support for \t{txz} & \compactfeatureref{unpack-extensions} & - No & No & No & Yes & Yes \\ + No & No & No & Yes & Yes & Yes \\ \t{unpack} case-insensitive & \compactfeatureref{unpack-ignore-case} & - No & No & No & Yes & Yes \\ + No & No & No & Yes & Yes & Yes \\ \t{default} function & \compactfeatureref{default-func} & - * & Yes & Yes & Yes & Yes \\ + * & Yes & Yes & Yes & Yes & Yes \\ \t{einstalldocs} & \compactfeatureref{einstalldocs} & - No & No & No & Yes & Yes \\ + No & No & No & Yes & Yes & Yes \\ \t{get_libdir} & \compactfeatureref{get-libdir} & - No & No & No & Yes & Yes \\ + No & No & No & Yes & Yes & Yes \\ File mtimes preserved & \compactfeatureref{mtime-preserve} & - * & Yes & Yes & Yes & Yes \\ + * & Yes & Yes & Yes & Yes & Yes \\ \end{longtable} \end{landscape} @@ -474,7 +481,15 @@ EAPI 7 is EAPI 6 with the following changes: \item Version manipulation and comparison commands, \featureref{ver-commands}. \end{compactitem} -\ChangeWhenAddingAnEAPI{7} +\section{EAPI 8} + +EAPI 8 is EAPI 7 with the following changes: + +\begin{compactitem} +\item None +\end{compactitem} + +\ChangeWhenAddingAnEAPI{8} % vim: set filetype=tex fileencoding=utf8 et tw=100 spell spelllang=en : diff --git a/eapis.tex b/eapis.tex index 6c015a2..746decf 100644 --- a/eapis.tex +++ b/eapis.tex @@ -19,7 +19,7 @@ EAPIs are also used for profile directories, as described in section~\ref{sec:pr The following EAPIs are defined by this specification: -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{compactdesc} \item[0] The `original' base EAPI. \item[1] EAPI `1' contains a number of extensions to EAPI `0'. @@ -29,6 +29,7 @@ The following EAPIs are defined by this specification: \item[5] EAPI `5' contains a number of extensions to EAPI `4'. \item[6] EAPI `6' contains a number of extensions to EAPI `5'. \item[7] EAPI `7' contains a number of extensions to EAPI `6'. +\item[8] EAPI `8' contains a number of extensions to EAPI `7'. \end{compactdesc} Except where explicitly noted, everything in this specification diff --git a/ebuild-env-vars.tex b/ebuild-env-vars.tex index 006b8e4..2e562d6 100644 --- a/ebuild-env-vars.tex +++ b/ebuild-env-vars.tex @@ -262,7 +262,7 @@ variable. \end{longtable} \end{landscape} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting various added env variables} \label{tab:added-env-vars-table} \begin{tabular}{lllllll} @@ -278,12 +278,12 @@ variable. 0, 1, 2, 3 & No & No & No & No & No & No \\ 4 & Yes & Yes & Yes & No & No & No \\ 5, 6 & Yes & Yes & Yes & Yes & No & No \\ - 7 & Yes & Yes & Yes & Yes & Yes & Yes \\ + 7, 8 & Yes & Yes & Yes & Yes & Yes & Yes \\ \bottomrule \end{tabular} \end{centertable} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting various removed env variables} \label{tab:removed-env-vars-table} \begin{tabular}{lllllll} @@ -298,12 +298,12 @@ variable. \midrule 0, 1, 2, 3 & Yes & Yes & Yes & Yes & Yes & Yes \\ 4, 5, 6 & No & No & Yes & Yes & Yes & Yes \\ - 7 & No & No & No & No & No & No \\ + 7, 8 & No & No & No & No & No & No \\ \bottomrule \end{tabular} \end{centertable} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting offset-prefix env variables} \label{tab:offset-env-vars-table} \begin{tabular}{lllll} @@ -316,7 +316,7 @@ variable. \midrule 0, 1, 2 & No & No & No & No \\ 3, 4, 5, 6 & Yes & Yes & Yes & No \\ - 7 & Yes & Yes & Yes & Yes \\ + 7, 8 & Yes & Yes & Yes & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -340,7 +340,7 @@ must be unset, for EAPIs listed in table~\ref{tab:profile-env-unset} as supporti ASCII range (U+0000 to U+007F) are concerned. Only for EAPIs listed in such a manner in table~\ref{tab:locale-settings}. -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{Locale settings for EAPIs} \label{tab:locale-settings} \begin{tabular}{ll} @@ -349,7 +349,7 @@ table~\ref{tab:locale-settings}. \multicolumn{1}{c}{\textbf{Sane \t{LC_CTYPE} and \t{LC_COLLATE}?}} \\ \midrule 0, 1, 2, 3, 4, 5 & Undefined \\ - 6, 7 & Yes \\ + 6, 7, 8 & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -435,7 +435,7 @@ contain at most one value. \subsection{Offset-prefix variables} \label{sec:offset-vars} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting offset-prefix} \label{tab:offset-support-table} \begin{tabular}{ll} @@ -444,7 +444,7 @@ contain at most one value. \multicolumn{1}{c}{\textbf{Supports offset-prefix?}}\\ \midrule 0, 1, 2 & No \\ - 3, 4, 5, 6, 7 & Yes \\ + 3, 4, 5, 6, 7, 8 & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -475,7 +475,7 @@ specifies the system root directory, it will consist of a single slash (\t{/}). a trailing slash, the package manager guarantees that a trailing slash will never be present. If the path specifies the system root directory, it will be empty. -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{Variables that always or never end with a trailing slash} \label{tab:trailing-slash} \begin{tabular}{lll} @@ -487,7 +487,7 @@ If the path specifies the system root directory, it will be empty. \t{D}, \t{ED} \\ \midrule 0, 1, 2, 3, 4, 5, 6 & always & always \\ - 7 & never & never \\ + 7, 8 & never & never \\ \bottomrule \end{tabular} \end{centertable} diff --git a/ebuild-format.tex b/ebuild-format.tex index d53d773..c2224bf 100644 --- a/ebuild-format.tex +++ b/ebuild-format.tex @@ -16,7 +16,7 @@ certain variables and functions (see chapters~\ref{ch:ebuild-vars} and~\ref{ch:e for specific information), and must not call any external programs, write anything to standard output or standard error, or modify the state of the system in any way. -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{Bash version and options} \label{tab:bash-version} \begin{tabular}{lll} @@ -26,7 +26,7 @@ output or standard error, or modify the state of the system in any way. \multicolumn{1}{c}{\textbf{\t{failglob} in global scope?}} \\ \midrule 0, 1, 2, 3, 4, 5 & 3.2 & No \\ - 6, 7 & 4.2 & Yes \\ + 6, 7, 8 & 4.2 & Yes \\ \bottomrule \end{tabular} \end{centertable} diff --git a/ebuild-functions.tex b/ebuild-functions.tex index 4e691c5..ffdea16 100644 --- a/ebuild-functions.tex +++ b/ebuild-functions.tex @@ -44,7 +44,7 @@ fallback to \t{WORKDIR} is used: executed, are in \t{DEFINED_PHASES}. \end{compactitem} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs with \t{S} to \t{WORKDIR} fallbacks} \label{tab:s-fallback-table} \begin{tabular}{ll} @@ -53,7 +53,7 @@ fallback to \t{WORKDIR} is used: \multicolumn{1}{c}{\textbf{Fallback to \t{WORKDIR} permitted?}} \\ \midrule 0, 1, 2, 3 & Always \\ - 4, 5, 6, 7 & Conditional error \\ + 4, 5, 6, 7, 8 & Conditional error \\ \bottomrule \end{tabular} \end{centertable} @@ -75,7 +75,7 @@ before the next phase is executed. \t{pkg_pretend} must not write to the filesystem. -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting \t{pkg_pretend}} \label{tab:pkg-pretend-table} \begin{tabular}{ll} @@ -84,7 +84,7 @@ before the next phase is executed. \multicolumn{1}{c}{\textbf{Supports \t{pkg_pretend}?}} \\ \midrule 0, 1, 2, 3 & No \\ - 4, 5, 6, 7 & Yes \\ + 4, 5, 6, 7, 8 & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -147,7 +147,7 @@ src_prepare() { For other EAPIs supporting \t{src_prepare}, the default implementation used when the ebuild lacks the \t{src_prepare} function is a no-op. -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{\t{src_prepare} support and behaviour for EAPIs} \label{tab:src-prepare-table} \begin{tabular}{lll} @@ -158,7 +158,7 @@ the \t{src_prepare} function is a no-op. \midrule 0, 1 & No & Not applicable \\ 2, 3, 4, 5 & Yes & no-op \\ - 6, 7 & Yes & 6 \\ + 6, 7, 8 & Yes & 6 \\ \bottomrule \end{tabular} \end{centertable} @@ -185,7 +185,7 @@ src_configure() { \end{verbatim} \end{listing} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting \t{src_configure}} \label{tab:src-configure-table} \begin{tabular}{ll} @@ -193,8 +193,8 @@ src_configure() { \multicolumn{1}{c}{\textbf{EAPI}} & \multicolumn{1}{c}{\textbf{Supports \t{src_configure}?}} \\ \midrule - 0, 1 & No \\ - 2, 3, 4, 5, 6, 7 & Yes \\ + 0, 1 & No \\ + 2, 3, 4, 5, 6, 7, 8 & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -258,7 +258,7 @@ src_compile() { \end{verbatim} \end{listing} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{\t{src_compile} behaviour for EAPIs} \label{tab:src-compile-table} \begin{tabular}{ll} @@ -266,9 +266,9 @@ src_compile() { \multicolumn{1}{c}{\textbf{EAPI}} & \multicolumn{1}{c}{\textbf{Format}} \\ \midrule - 0 & 0 \\ - 1 & 1 \\ - 2, 3, 4, 5, 6, 7 & 2 \\ + 0 & 0 \\ + 1 & 1 \\ + 2, 3, 4, 5, 6, 7, 8 & 2 \\ \bottomrule \end{tabular} \end{centertable} @@ -292,7 +292,7 @@ parallel tests, the \t{emake} command must be called with option \t{-j1}. The \t{src_test} function may be disabled by \t{RESTRICT}\@. See section~\ref{sec:restrict}. It may be disabled by user too, using a PM-specific mechanism. -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{\t{src_test} behaviour for EAPIs} \label{tab:src-test-table} \begin{tabular}{ll} @@ -301,7 +301,7 @@ be disabled by user too, using a PM-specific mechanism. \multicolumn{1}{c}{\textbf{Supports parallel tests?}} \\ \midrule 0, 1, 2, 3, 4 & No \\ - 5, 6, 7 & Yes \\ + 5, 6, 7, 8 & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -360,7 +360,7 @@ src_install() { For other EAPIs, the default implementation used when the ebuild lacks the \t{src_install} function is a no-op. -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{\t{src_install} behaviour for EAPIs} \label{tab:src-install-table} \begin{tabular}{ll} @@ -370,7 +370,7 @@ is a no-op. \midrule 0, 1, 2, 3 & no-op \\ 4, 5 & 4 \\ - 6, 7 & 6 \\ + 6, 7, 8 & 6 \\ \bottomrule \end{tabular} \end{centertable} @@ -428,7 +428,7 @@ that dependencies may not be installed. \t{pkg_info} must not write to the filesystem. -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting \t{pkg_info} on non-installed packages} \label{tab:pkg-info-table} \begin{tabular}{ll} @@ -437,7 +437,7 @@ that dependencies may not be installed. \multicolumn{1}{c}{\textbf{Supports \t{pkg_info} on non-installed packages?}} \\ \midrule 0, 1, 2, 3 & No \\ - 4, 5, 6, 7 & Yes \\ + 4, 5, 6, 7, 8 & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -459,7 +459,7 @@ named \t{default_}(phase) that behaves as the default implementation for that EA when executing any ebuild phase listed in the table. Ebuilds must not call these functions except when in the phase in question. -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting \t{default_} phase functions} \label{tab:default-phase-function-table} \begin{tabular}{l P{26em}} @@ -470,7 +470,7 @@ when in the phase in question. 0, 1 & None \\ 2, 3 & \t{pkg_nofetch}, \t{src_unpack}, \t{src_prepare}, \t{src_configure}, \t{src_compile}, \t{src_test} \\ - 4, 5, 6, 7 & \t{pkg_nofetch}, \t{src_unpack}, \t{src_prepare}, \t{src_configure}, + 4, 5, 6, 7, 8 & \t{pkg_nofetch}, \t{src_unpack}, \t{src_prepare}, \t{src_configure}, \t{src_compile}, \t{src_test}, \t{src_install} \\ \bottomrule \end{tabular} diff --git a/ebuild-vars.tex b/ebuild-vars.tex index bbd286f..040b02a 100644 --- a/ebuild-vars.tex +++ b/ebuild-vars.tex @@ -88,7 +88,7 @@ Ebuilds may define any of the following variables: \item[PDEPEND] See chapter~\ref{ch:dependencies}. \end{description} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting \t{IUSE} defaults} \label{tab:iuse-defaults-table} \begin{tabular}{ll} @@ -96,13 +96,13 @@ Ebuilds may define any of the following variables: \multicolumn{1}{c}{\textbf{EAPI}} & \multicolumn{1}{c}{\textbf{Supports \t{IUSE} defaults?}} \\ \midrule - 0 & No \\ - 1, 2, 3, 4, 5, 6, 7 & Yes \\ + 0 & No \\ + 1, 2, 3, 4, 5, 6, 7, 8 & Yes \\ \bottomrule \end{tabular} \end{centertable} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting various ebuild-defined variables} \label{tab:optional-vars-table} \begin{tabular}{lll} @@ -112,7 +112,7 @@ Ebuilds may define any of the following variables: \multicolumn{1}{c}{\textbf{Supports \t{REQUIRED_USE}?}} \\ \midrule 0, 1, 2, 3 & Optionally & No \\ - 4, 5, 6, 7 & Yes & Yes \\ + 4, 5, 6, 7, 8 & Yes & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -169,7 +169,7 @@ on the right of the arrow. When consulting mirrors (except for those explicitly of the arrow, if \t{mirror://} is used), the filename to the right of the arrow shall be requested instead of the filename in the URI. -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting \t{SRC_URI} arrows} \label{tab:uri-arrows-table} \begin{tabular}{ll} @@ -177,8 +177,8 @@ instead of the filename in the URI. \multicolumn{1}{c}{\textbf{EAPI}} & \multicolumn{1}{c}{\textbf{Supports \t{SRC_URI} arrows?}} \\ \midrule - 0, 1 & No \\ - 2, 3, 4, 5, 6, 7 & Yes \\ + 0, 1 & No \\ + 2, 3, 4, 5, 6, 7, 8 & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -263,7 +263,7 @@ any \t{DEPEND} or \t{RDEPEND} set in an eclass does not change the implicit \t{R the ebuild portion, and any \t{DEPEND} value set in an eclass does not get treated as being part of \t{RDEPEND}. -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs with \t{RDEPEND=DEPEND} default} \label{tab:rdepend-depend-table} \begin{tabular}{ll} @@ -272,7 +272,7 @@ the ebuild portion, and any \t{DEPEND} value set in an eclass does not get treat \multicolumn{1}{c}{\textbf{\t{RDEPEND=DEPEND}?}} \\ \midrule 0, 1, 2, 3 & Yes \\ - 4, 5, 6, 7 & No \\ + 4, 5, 6, 7, 8 & No \\ \bottomrule \end{tabular} \end{centertable} @@ -307,7 +307,7 @@ not be exported to the ebuild environment: \note{Thus, by extension of section~\ref{sec:metadata-invariance}, phase functions must not be defined based upon any variant condition.} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting \t{DEFINED_PHASES}} \label{tab:defined-phases-table} \begin{tabular}{ll} @@ -316,7 +316,7 @@ defined based upon any variant condition.} \multicolumn{1}{c}{\textbf{Supports \t{DEFINED_PHASES}?}} \\ \midrule 0, 1, 2, 3 & Optionally \\ - 4, 5, 6, 7 & Yes \\ + 4, 5, 6, 7, 8 & Yes \\ \bottomrule \end{tabular} \end{centertable} diff --git a/merge.tex b/merge.tex index 6649d35..0e6738d 100644 --- a/merge.tex +++ b/merge.tex @@ -86,7 +86,7 @@ held under the original image directory. In other EAPIs, the behaviour with respect to file modification times is undefined. -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{Preservation of file modification times (mtimes)} \label{tab:mtime-preserve} \begin{tabular}{ll} @@ -95,7 +95,7 @@ is undefined. \multicolumn{1}{c}{\textbf{mtimes preserved?}} \\ \midrule 0, 1, 2 & Undefined \\ - 3, 4, 5, 6, 7 & Yes \\ + 3, 4, 5, 6, 7, 8 & Yes \\ \bottomrule \end{tabular} \end{centertable} diff --git a/pkg-mgr-commands.tex b/pkg-mgr-commands.tex index bc6d1ac..71d1e89 100644 --- a/pkg-mgr-commands.tex +++ b/pkg-mgr-commands.tex @@ -31,7 +31,7 @@ The following commands affect this behaviour: option and in EAPIs supporting this option, see table~\ref{tab:die-properties}. \end{description} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPI command failure behaviour} \label{tab:commands-die-table} \begin{tabular}{llll} @@ -43,7 +43,7 @@ The following commands affect this behaviour: \midrule 0, 1, 2, 3 & Non-zero exit & No & n/a \\ 4, 5, 6 & Aborts & Yes & No \\ - 7 & Aborts & Yes & Yes \\ + 7, 8 & Aborts & Yes & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -54,7 +54,7 @@ The following commands affect this behaviour: \featurelabel{banned-commands} Some commands are banned in some EAPIs. If a banned command is called, the package manager must abort the build process indicating an error. -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{Banned commands} \label{tab:banned-commands-table} \begin{tabular}{lllllll} @@ -72,7 +72,7 @@ called, the package manager must abort the build process indicating an error. 0, 1, 2, 3 & No & No & No & No & No & No \\ 4, 5 & Yes & Yes & No & No & No & No \\ 6 & Yes & Yes & Yes & No & No & No \\ - 7 & Yes & Yes & Yes & Yes & Yes & Yes \\ + 7, 8 & Yes & Yes & Yes & Yes & Yes & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -110,7 +110,7 @@ are given, \t{-r} is assumed. otherwise, prints an empty string. The exit code is unspecified. \end{description} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{Package manager query command options supported by EAPIs} \label{tab:pm-query-options} \begin{tabular}{lllll} @@ -123,7 +123,7 @@ are given, \t{-r} is assumed. \midrule 0, 1, 2, 3, 4 & No & No & No & No \\ 5, 6 & Yes & No & No & No \\ - 7 & No & Yes & Yes & Yes \\ + 7, 8 & No & Yes & Yes & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -159,7 +159,7 @@ output, using stdout as an output facility is forbidden. message followed by a failure indicator. Returns its first argument as exit status. \end{description} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{Output commands for EAPIs} \label{tab:output-commands} \begin{tabular}{lll} @@ -169,7 +169,7 @@ output, using stdout as an output facility is forbidden. \multicolumn{1}{c}{\textbf{Supports \t{eqawarn}?}} \\ \midrule 0, 1, 2, 3, 4, 5, 6 & Yes & No \\ - 7 & No & Yes \\ + 7, 8 & No & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -191,7 +191,7 @@ completing. Ebuilds must not run any of these commands once the current phase fu (indicating failure), calls \t{die}, passing any parameters to it. \end{description} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{Properties of \t{die} and \t{assert} commands in EAPIs} \label{tab:die-properties} \begin{tabular}{lll} @@ -204,7 +204,7 @@ completing. Ebuilds must not run any of these commands once the current phase fu \midrule 0, 1, 2, 3, 4, 5 & No & No \\ 6 & Yes & No \\ - 7 & Yes & Yes \\ + 7, 8 & Yes & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -268,7 +268,7 @@ Ebuilds must not run any of these commands once the current phase function has r subsequent calls, the command will do nothing and return~0. \end{description} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{Patch commands for EAPIs} \label{tab:patch-commands} \begin{tabular}{lll} @@ -278,7 +278,7 @@ Ebuilds must not run any of these commands once the current phase function has r \multicolumn{1}{c}{\textbf{\t{eapply_user}?}} \\ \midrule 0, 1, 2, 3, 4, 5 & No & No \\ - 6, 7 & Yes & Yes \\ + 6, 7, 8 & Yes & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -327,7 +327,7 @@ commands once the current phase function has returned. occurs in the output of \t{configure -{}-help}. \end{itemize} - \ChangeWhenAddingAnEAPI{7} + \ChangeWhenAddingAnEAPI{8} \begin{centertable}{Extra \t{econf} arguments for EAPIs} \label{tab:econf-options-table} \begin{tabular}{llllll} @@ -343,7 +343,7 @@ commands once the current phase function has returned. 4 & Yes & No & No & No & No \\ 5 & Yes & Yes & No & No & No \\ 6 & Yes & Yes & Yes & Yes & No \\ - 7 & Yes & Yes & Yes & Yes & Yes \\ + 7, 8 & Yes & Yes & Yes & Yes & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -619,7 +619,7 @@ the current phase function has returned. \end{description} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting \t{dodoc -r}} \label{tab:dodoc-table} \begin{tabular}{ll} @@ -628,12 +628,12 @@ the current phase function has returned. \multicolumn{1}{c}{\textbf{Supports \t{dodoc -r}?}} \\ \midrule 0, 1, 2, 3 & No \\ - 4, 5, 6, 7 & Yes \\ + 4, 5, 6, 7, 8 & Yes \\ \bottomrule \end{tabular} \end{centertable} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting \t{doheader} and \t{newheader}} \label{tab:doheader-table} \begin{tabular}{ll} @@ -642,12 +642,12 @@ the current phase function has returned. \multicolumn{1}{c}{\textbf{Supports \t{doheader} and \t{newheader}?}} \\ \midrule 0, 1, 2, 3, 4 & No \\ - 5, 6, 7 & Yes \\ + 5, 6, 7, 8 & Yes \\ \bottomrule \end{tabular} \end{centertable} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting symlinks for \t{doins}} \label{tab:doins-table} \begin{tabular}{ll} @@ -656,12 +656,12 @@ the current phase function has returned. \multicolumn{1}{c}{\textbf{\t{doins} supports symlinks?}} \\ \midrule 0, 1, 2, 3 & No \\ - 4, 5, 6, 7 & Yes \\ + 4, 5, 6, 7, 8 & Yes \\ \bottomrule \end{tabular} \end{centertable} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{\t{doman} language support options for EAPIs} \label{tab:doman-table} \begin{tabular}{lll} @@ -672,12 +672,12 @@ the current phase function has returned. \midrule 0, 1 & No & Not applicable \\ 2, 3 & Yes & No \\ - 4, 5, 6, 7 & Yes & Yes \\ + 4, 5, 6, 7, 8 & Yes & Yes \\ \bottomrule \end{tabular} \end{centertable} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting stdin for \t{new*} commands} \label{tab:newfoo-stdin-table} \begin{tabular}{ll} @@ -686,12 +686,12 @@ the current phase function has returned. \multicolumn{1}{c}{\textbf{\t{new*} can read from stdin?}} \\ \midrule 0, 1, 2, 3, 4 & No \\ - 5, 6, 7 & Yes \\ + 5, 6, 7, 8 & Yes \\ \bottomrule \end{tabular} \end{centertable} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{\t{domo} destination path in EAPIs} \label{tab:domo-path} \begin{tabular}{ll} @@ -700,7 +700,7 @@ the current phase function has returned. \multicolumn{1}{c}{\textbf{Destination path}} \\ \midrule 0, 1, 2, 3, 4, 5, 6 & \t{\$\{DESTTREE\}/share/locale} \\ - 7 & \t{/usr/share/locale} \\ + 7, 8 & \t{/usr/share/locale} \\ \bottomrule \end{tabular} \end{centertable} @@ -810,7 +810,7 @@ any of these functions from any other phase. supporting \t{dostrip}. \end{description} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{Commands controlling manipulation of files in the staging area in EAPIs} \label{tab:staging-area-commands} \begin{tabular}{lll} @@ -821,7 +821,7 @@ any of these functions from any other phase. \midrule 0, 1, 2, 3 & No & No \\ 4, 5, 6 & Yes & No \\ - 7 & Yes & Yes \\ + 7, 8 & Yes & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -865,7 +865,7 @@ table~\ref{tab:use-list-strictness}. table~\ref{tab:use-list-functions} as supporting \t{in_iuse}. \end{description} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPI behaviour for use queries not in \t{IUSE_EFFECTIVE}} \label{tab:use-list-strictness} \begin{tabular}{ll} @@ -874,12 +874,12 @@ table~\ref{tab:use-list-strictness}. \multicolumn{1}{c}{\textbf{Behaviour}} \\ \midrule 0, 1, 2, 3 & Undefined \\ - 4, 5, 6, 7 & Error \\ + 4, 5, 6, 7, 8 & Error \\ \bottomrule \end{tabular} \end{centertable} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting empty third argument in \t{use_with} and \t{use_enable}} \label{tab:use-with-third-arg} \begin{tabular}{ll} @@ -888,12 +888,12 @@ table~\ref{tab:use-list-strictness}. \multicolumn{1}{c}{\textbf{Supports empty third argument?}} \\ \midrule 0, 1, 2, 3 & No \\ - 4, 5, 6, 7 & Yes \\ + 4, 5, 6, 7, 8 & Yes \\ \bottomrule \end{tabular} \end{centertable} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting \t{usex} and \t{in_iuse}} \label{tab:use-list-functions} \begin{tabular}{lll} @@ -904,7 +904,7 @@ table~\ref{tab:use-list-strictness}. \midrule 0, 1, 2, 3, 4 & No & No \\ 5 & Yes & No \\ - 6, 7 & Yes & Yes \\ + 6, 7, 8 & Yes & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -984,7 +984,7 @@ the second, inclusively. section~\ref{sec:version-spec}. Comparison is done using algorithm~\ref{alg:version-comparison}. \end{description} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting version manipulation commands} \label{tab:version-commands} \begin{tabular}{llll} @@ -995,7 +995,7 @@ the second, inclusively. \multicolumn{1}{c}{\textbf{\t{ver_test}?}} \\ \midrule 0, 1, 2, 3, 4, 5, 6 & No & No & No \\ - 7 & Yes & Yes & Yes \\ + 7, 8 & Yes & Yes & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -1069,7 +1069,7 @@ has returned. \featurelabel{unpack-ignore-case} \t{unpack} matches filename extensions in a case-insensitive manner, for EAPIs listed such in table~\ref{tab:unpack-behaviour}. - \ChangeWhenAddingAnEAPI{7} + \ChangeWhenAddingAnEAPI{8} \begin{centertable}{\t{unpack} behaviour for EAPIs} \label{tab:unpack-behaviour} \begin{tabular}{lll} @@ -1079,12 +1079,12 @@ has returned. \multicolumn{1}{c}{\textbf{Case-insensitive matching?}} \\ \midrule 0, 1, 2, 3, 4, 5 & No & No \\ - 6, 7 & Yes & Yes \\ + 6, 7, 8 & Yes & Yes \\ \bottomrule \end{tabular} \end{centertable} - \ChangeWhenAddingAnEAPI{7} + \ChangeWhenAddingAnEAPI{8} \begin{centertable}{\t{unpack} extensions for EAPIs} \label{tab:unpack-extensions-table} \begin{tabular}{llll} @@ -1096,7 +1096,7 @@ has returned. \midrule 0, 1, 2 & No & No & No \\ 3, 4, 5 & Yes & Yes & No \\ - 6, 7 & Yes & Yes & Yes \\ + 6, 7, 8 & Yes & Yes & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -1163,7 +1163,7 @@ has returned. \end{description} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{Misc commands for EAPIs} \label{tab:misc-commands} \begin{tabular}{llll} @@ -1175,7 +1175,7 @@ has returned. \midrule 0, 1 & No & No & No \\ 2, 3, 4, 5 & Yes & No & No \\ - 6, 7 & Yes & Yes & Yes \\ + 6, 7, 8 & Yes & Yes & Yes \\ \bottomrule \end{tabular} \end{centertable} diff --git a/pms.tex b/pms.tex index 7840252..f54b1a0 100644 --- a/pms.tex +++ b/pms.tex @@ -21,8 +21,8 @@ pdfkeywords={Gentoo, package manager, specification}, } -\CurrentEAPIIs{7} -\ChangeWhenAddingAnEAPI{7} +\CurrentEAPIIs{8} +\ChangeWhenAddingAnEAPI{8} \begin{document} \maketitle diff --git a/profile-variables.tex b/profile-variables.tex index f34c7c5..ba40bf4 100644 --- a/profile-variables.tex +++ b/profile-variables.tex @@ -40,7 +40,7 @@ Other variables, except where they affect only package-manager-specific function Portage's \t{FEATURES} variable), must not be treated incrementally---later definitions shall completely override those in parent profiles. -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{Profile-defined \t{IUSE} injection for EAPIs} \label{tab:profile-iuse-injection-table} \begin{tabular}{ll} @@ -49,12 +49,12 @@ completely override those in parent profiles. \multicolumn{1}{c}{\textbf{Supports profile-defined \t{IUSE} injection?}} \\ \midrule 0, 1, 2, 3, 4 & No \\ - 5, 6, 7 & Yes \\ + 5, 6, 7, 8 & Yes \\ \bottomrule \end{tabular} \end{centertable} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{Profile-defined unsetting of variables in EAPIs} \label{tab:profile-env-unset} \begin{tabular}{ll} @@ -63,7 +63,7 @@ completely override those in parent profiles. \multicolumn{1}{c}{\textbf{Supports \t{ENV_UNSET}?}} \\ \midrule 0, 1, 2, 3, 4, 5, 6 & No \\ - 7 & Yes \\ + 7, 8 & Yes \\ \bottomrule \end{tabular} \end{centertable} diff --git a/profiles.tex b/profiles.tex index a3e666e..d6e8649 100644 --- a/profiles.tex +++ b/profiles.tex @@ -78,7 +78,7 @@ in that directory, unless their name begins with a dot, will be concatenated in filename in the POSIX locale and the result will be processed as if it were a single file. Any subdirectories will be ignored. -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting directories for profile files} \label{tab:profile-file-dirs} \begin{tabular}{ll} @@ -87,7 +87,7 @@ Any subdirectories will be ignored. \multicolumn{1}{c}{\textbf{Supports directories for profile files?}} \\ \midrule 0, 1, 2, 3, 4, 5, 6 & No \\ - 7 & Yes \\ + 7, 8 & Yes \\ \bottomrule \end{tabular} \end{centertable} @@ -123,7 +123,7 @@ it is actually installed. Because it has severe adverse effects on USE-based and dependencies, its use is strongly deprecated and package manager support must be regarded as purely optional. Supported in EAPIs as per table~\ref{tab:package-provided}. -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting \t{package.provided} in profiles} \label{tab:package-provided} \begin{tabular}{ll} @@ -132,7 +132,7 @@ optional. Supported in EAPIs as per table~\ref{tab:package-provided}. \multicolumn{1}{c}{\textbf{Supports \t{package.provided}?}} \\ \midrule 0, 1, 2, 3, 4, 5, 6 & Optionally \\ - 7 & No \\ + 7, 8 & No \\ \bottomrule \end{tabular} \end{centertable} @@ -165,7 +165,7 @@ only act on packages that are merged due to a stable keyword in the sense of subsection~\ref{sec:keywords}. Thus, these files can be used to restrict the feature set deemed stable in a package. -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{Profile directory support for masking/forcing use flags in stable versions only} \label{tab:profile-stablemask} \begin{tabular}{ll} @@ -174,7 +174,7 @@ stable in a package. \multicolumn{1}{c}{\textbf{Supports masking/forcing use flags in stable versions?}} \\ \midrule 0, 1, 2, 3, 4 & No \\ - 5, 6, 7 & Yes \\ + 5, 6, 7, 8 & Yes \\ \bottomrule \end{tabular} \end{centertable} diff --git a/tree-layout.tex b/tree-layout.tex index fdf4b65..81599a9 100644 --- a/tree-layout.tex +++ b/tree-layout.tex @@ -127,7 +127,7 @@ manager must ignore any files in this directory that it does not recognise. \item[updates/] This directory is described in section~\ref{sec:updates-dir}. \end{description} -\ChangeWhenAddingAnEAPI{7} +\ChangeWhenAddingAnEAPI{8} \begin{centertable}{EAPIs supporting a directory for \t{package.mask}} \label{tab:package-mask-dir} \begin{tabular}{ll} @@ -136,7 +136,7 @@ manager must ignore any files in this directory that it does not recognise. \multicolumn{1}{c}{\textbf{\t{package.mask} can be a directory?}} \\ \midrule 0, 1, 2, 3, 4, 5, 6 & No \\ - 7 & Yes \\ + 7, 8 & Yes \\ \bottomrule \end{tabular} \end{centertable}