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 A51C41382C5 for ; Thu, 27 May 2021 19:27:10 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 09459E0960; Thu, 27 May 2021 19:27:10 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (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 E29D1E095F for ; Thu, 27 May 2021 19:27:09 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (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 F3CB23408A6 for ; Thu, 27 May 2021 19:27:08 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 26A1179C for ; Thu, 27 May 2021 19:27:06 +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: <1622142925.6ddff747af2abb20af559925bc62833b6895a368.ulm@gentoo> Subject: [gentoo-commits] proj/pms:eapi-8 commit in: / X-VCS-Repository: proj/pms X-VCS-Files: eapi-differences.tex eclasses.tex X-VCS-Directories: / X-VCS-Committer: ulm X-VCS-Committer-Name: Ulrich Müller X-VCS-Revision: 6ddff747af2abb20af559925bc62833b6895a368 X-VCS-Branch: eapi-8 Date: Thu, 27 May 2021 19:27:06 +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: c3aadb55-ca72-466c-a0cf-918f18aa70c1 X-Archives-Hash: 19f70b53a139b7bd5660f9c81e1cbf2e commit: 6ddff747af2abb20af559925bc62833b6895a368 Author: Ulrich Müller gentoo org> AuthorDate: Sun May 16 18:46:09 2021 +0000 Commit: Ulrich Müller gentoo org> CommitDate: Thu May 27 19:15:25 2021 +0000 URL: https://gitweb.gentoo.org/proj/pms.git/commit/?id=6ddff747 EAPI 8 accumulates PROPERTIES and RESTRICT across eclasses Bug: https://bugs.gentoo.org/701132 Signed-off-by: Ulrich Müller gentoo.org> eapi-differences.tex | 4 ++++ eclasses.tex | 27 ++++++++++++++++++++++----- 2 files changed, 26 insertions(+), 5 deletions(-) diff --git a/eapi-differences.tex b/eapi-differences.tex index aeddb6e..c7af2b3 100644 --- a/eapi-differences.tex +++ b/eapi-differences.tex @@ -152,6 +152,9 @@ Parallel tests & \compactfeatureref{parallel-tests} & \t{pkg_nofetch}, \t{src_unpack}, \t{src_prepare}, \t{src_configure}, \t{src_compile}, \t{src_test}, \t{src_install} \\ +Accumulate \t{RESTRICT} etc. & \compactfeatureref{accumulate-vars} & + No & No & No & No & Yes \\ + \t{AA} & \compactfeatureref{aa} & * & No & No & No & No \\ @@ -499,6 +502,7 @@ EAPI 8 is EAPI 7 with the following changes: \item \t{IDEPEND}, \featureref{idepend}. \item Empty working directory in \t{pkg_*} phase functions, \featureref{phase-function-dir}. \item Different \t{src_prepare} implementation, \featureref{src-prepare}. +\item \t{PROPERTIES} and \t{RESTRICT} accumulated across eclasses, \featureref{accumulate-vars}. \end{compactitem} \ChangeWhenAddingAnEAPI{8} diff --git a/eclasses.tex b/eclasses.tex index 7f4ba67..a92ce1f 100644 --- a/eclasses.tex +++ b/eclasses.tex @@ -34,11 +34,28 @@ The \t{inherit} command must also ensure that: \section{Eclass-defined Metadata Keys} -The \t{IUSE}, \t{REQUIRED_USE}, \t{DEPEND}, \t{BDEPEND}, \t{RDEPEND}, \t{PDEPEND} and \t{IDEPEND} -variables are handled specially when set by an eclass. They must be accumulated across eclasses, -appending the value set by each eclass to the resulting value after the previous one is loaded. -Then the eclass-defined value is appended to that defined by the ebuild. In the case of \t{RDEPEND}, -this is done after the implicit \t{RDEPEND} rules in section~\ref{sec:rdepend-depend} are applied. +\featurelabel{accumulate-vars} The \t{IUSE}, \t{REQUIRED_USE}, \t{DEPEND}, \t{BDEPEND}, \t{RDEPEND}, +\t{PDEPEND} and \t{IDEPEND} variables are handled specially when set by an eclass. They must be +accumulated across eclasses, appending the value set by each eclass to the resulting value after +the previous one is loaded. For EAPIs listed in table~\ref{tab:accumulate-vars} as accumulating +\t{PROPERTIES} and \t{RESTRICT}, the same is true for these variables. Then the eclass-defined +value is appended to that defined by the ebuild. In the case of \t{RDEPEND}, this is done after +the implicit \t{RDEPEND} rules in section~\ref{sec:rdepend-depend} are applied. + +\ChangeWhenAddingAnEAPI{8} +\begin{centertable}{EAPIs accumulating \t{PROPERTIES} and \t{RESTRICT} across eclasses} + \label{tab:accumulate-vars} + \begin{tabular}{lll} + \toprule + \multicolumn{1}{c}{\textbf{EAPI}} & + \multicolumn{1}{c}{\textbf{Accumulates \t{PROPERTIES}?}} & + \multicolumn{1}{c}{\textbf{Accumulates \t{RESTRICT}?}} \\ + \midrule + 0, 1, 2, 3, 4, 5, 6, 7 & No & No \\ + 8 & Yes & Yes \\ + \bottomrule + \end{tabular} +\end{centertable} \section{EXPORT_FUNCTIONS}