Gentoo Archives: gentoo-pms

From: "Ulrich Müller" <ulm@g.o>
To: gentoo-pms@l.g.o
Subject: [gentoo-pms] [PATCH 06/22] EAPI 6: Bash version is 4.2.
Date: Thu, 15 Oct 2015 10:50:33
Message-Id: 1444906221-30505-7-git-send-email-ulm@gentoo.org
In Reply to: [gentoo-pms] EAPI 6 draft for review by "Ulrich Müller"
1 Bug: 431340
2 ---
3 eapi-differences.tex | 4 ++++
4 ebuild-env-commands.tex | 16 ++++++++--------
5 ebuild-format.tex | 11 ++++++-----
6 3 files changed, 18 insertions(+), 13 deletions(-)
7
8 diff --git a/eapi-differences.tex b/eapi-differences.tex
9 index 2132935..3f37c19 100644
10 --- a/eapi-differences.tex
11 +++ b/eapi-differences.tex
12 @@ -142,6 +142,9 @@ Profile \t{IUSE} injection & \compactfeatureref{profile-iuse-inject} &
13 \t{EPREFIX}, \t{ED}, \t{EROOT} & \compactfeatureref{offset-prefix-vars} &
14 No & Yes & Yes & Yes & Yes \\
15
16 +Bash version & \compactfeatureref{bash-version} &
17 + 3.2 & 3.2 & 3.2 & 3.2 & 4.2 \\
18 +
19 \t{find} is GNU? & \compactfeatureref{gnu-find} &
20 Undefined & Undefined & Undefined & Yes & Yes \\
21
22 @@ -308,6 +311,7 @@ EAPI 6 is EAPI 5 with the following changes:
23
24 \begin{compactitem}
25 \item Profile \t{package*} and \t{use*} can be directories, \featureref{profile-file-dirs}.
26 +\item Bash version is 4.2, \featureref{bash-version}.
27 \end{compactitem}
28
29 \ChangeWhenAddingAnEAPI{6}
30 diff --git a/ebuild-env-commands.tex b/ebuild-env-commands.tex
31 index 54e12ec..1e8a5c3 100644
32 --- a/ebuild-env-commands.tex
33 +++ b/ebuild-env-commands.tex
34 @@ -23,10 +23,8 @@ dependencies must be used to ensure their presence.
35
36 The following commands must always be available in the ebuild environment:
37 \begin{compactitem}
38 -\item All builtin commands in GNU bash, version 3.2\footnote{The required bash version was
39 - retroactively updated from 3.0 to 3.2 in November 2009
40 - (see \url{https://projects.gentoo.org/council/meeting-logs/20091109.txt}).%
41 - \label{fn:bash3.2}}.
42 +\item \featurelabel{bash-version} All builtin commands in GNU bash, version as listed in
43 + table~\ref{tab:system-commands-table}.
44 \item \t{sed} must be available, and must support all forms of invocations valid for GNU sed
45 version 4 or later.
46 \item \t{patch} must be available, and must support all inputs valid for GNU patch.
47 @@ -36,15 +34,17 @@ The following commands must always be available in the ebuild environment:
48 \end{compactitem}
49
50 \ChangeWhenAddingAnEAPI{6}
51 -\begin{centertable}{\t{find} implementation for EAPIs}
52 +\begin{centertable}{System commands for EAPIs}
53 \label{tab:system-commands-table}
54 - \begin{tabular}{ l l }
55 + \begin{tabular}{ l l l }
56 \toprule
57 \multicolumn{1}{c}{\textbf{EAPI}} &
58 + \multicolumn{1}{c}{\textbf{Bash version}} &
59 \multicolumn{1}{c}{\textbf{GNU \t{find}?}} \\
60 \midrule
61 - 0, 1, 2, 3, 4 & Undefined \\
62 - 5, 6 & Yes \\
63 + 0, 1, 2, 3, 4 & 3.2 & Undefined \\
64 + 5 & 3.2 & Yes \\
65 + 6 & 4.2 & Yes \\
66 \bottomrule
67 \end{tabular}
68 \end{centertable}
69 diff --git a/ebuild-format.tex b/ebuild-format.tex
70 index b623b97..c741398 100644
71 --- a/ebuild-format.tex
72 +++ b/ebuild-format.tex
73 @@ -2,11 +2,12 @@
74 \label{sec:ebuild-format}
75
76 The ebuild file format is in its basic form a subset of the format of a bash script. The interpreter
77 -is assumed to be GNU bash, version 3.2 or later, see footnote~\ref{fn:bash3.2} on
78 -page~\pageref{fn:bash3.2}. The file encoding must be UTF-8 with Unix-style newlines. When sourced,
79 -the ebuild must define certain variables and functions (see sections~\ref{sec:ebuild-vars}
80 -and~\ref{sec:ebuild-functions} for specific information), and must not call any external programs,
81 -write anything to standard output or standard error, or modify the state of the system in any way.
82 +is assumed to be GNU bash, version as listed in table~\ref{tab:system-commands-table} on
83 +page~\pageref{tab:system-commands-table}, or any later version. The file encoding must be UTF-8
84 +with Unix-style newlines. When sourced, the ebuild must define certain variables and functions
85 +(see sections~\ref{sec:ebuild-vars} and~\ref{sec:ebuild-functions} for specific information), and
86 +must not call any external programs, write anything to standard output or standard error, or modify
87 +the state of the system in any way.
88
89 % vim: set filetype=tex fileencoding=utf8 et tw=100 spell spelllang=en :
90
91 --
92 2.6.1