From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id C7C16138200 for ; Fri, 14 Sep 2012 06:15:57 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id E5F4121C004; Fri, 14 Sep 2012 06:14:49 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) by pigeon.gentoo.org (Postfix) with ESMTP id AA37A21C004 for ; Fri, 14 Sep 2012 06:14:49 +0000 (UTC) Received: from hornbill.gentoo.org (hornbill.gentoo.org [94.100.119.163]) (using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id EABB533D724 for ; Fri, 14 Sep 2012 06:14:48 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by hornbill.gentoo.org (Postfix) with ESMTP id BA57EE543F for ; Fri, 14 Sep 2012 06:14:46 +0000 (UTC) From: "Ulrich Mueller" 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 Mueller" Message-ID: <1347517695.8cb5b817424a921d010f2c18f7b9822031308422.ulm@gentoo> Subject: [gentoo-commits] proj/pms:master commit in: / X-VCS-Repository: proj/pms X-VCS-Files: dependencies.tex eapi-differences.tex eapis.tex ebuild-env-vars.tex ebuild-functions.tex ebuild-vars.tex merge.tex pkg-mgr-commands.tex pms.cls pms.tex X-VCS-Directories: / X-VCS-Committer: ulm X-VCS-Committer-Name: Ulrich Mueller X-VCS-Revision: 8cb5b817424a921d010f2c18f7b9822031308422 X-VCS-Branch: master Date: Fri, 14 Sep 2012 06:14:46 +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-Archives-Salt: e8e2edcd-08a4-4eee-a258-24ea562e547a X-Archives-Hash: ded647165f3843e85726e750b0e2b2fc commit: 8cb5b817424a921d010f2c18f7b9822031308422 Author: Ciaran McCreesh googlemail com> AuthorDate: Sun May 6 16:03:49 2012 +0000 Commit: Ulrich Mueller gentoo org> CommitDate: Thu Sep 13 06:28:15 2012 +0000 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/pms.git;a=commit;h=8cb5b817 Add \ChangeWhenAddingAnEAPI command. This gives us an easy way to grep and find every place that needs updating when we add a new EAPI. --- dependencies.tex | 4 ++++ eapi-differences.tex | 3 +++ eapis.tex | 1 + ebuild-env-vars.tex | 3 +++ ebuild-functions.tex | 8 ++++++++ ebuild-vars.tex | 4 ++++ merge.tex | 1 + pkg-mgr-commands.tex | 11 +++++++++++ pms.cls | 5 +++++ pms.tex | 3 +++ 10 files changed, 43 insertions(+), 0 deletions(-) diff --git a/dependencies.tex b/dependencies.tex index 0f74b3b..54305c5 100644 --- a/dependencies.tex +++ b/dependencies.tex @@ -76,6 +76,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{4} \begin{centertable}{EAPIs supporting \t{SRC\_URI} arrows} \label{tab:uri-arrows-table} \begin{tabular}{ l l } \toprule @@ -147,6 +148,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{4} \begin{centertable}{EAPIs supporting \t{SLOT} dependencies} \label{tab:slot-deps-table} \begin{tabular}{ l l } \toprule @@ -162,6 +164,7 @@ manager must warn or error if this feature is used with an EAPI not supporting u \end{tabular} \end{centertable} +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{EAPIs supporting \t{USE} dependencies} \label{tab:use-deps-table} \begin{tabular}{ l l } \toprule @@ -212,6 +215,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{4} \begin{centertable}{Exclamation mark strengths for EAPIs} \label{tab:bang-strength-table} \begin{tabular}{ l l l } \toprule diff --git a/eapi-differences.tex b/eapi-differences.tex index a451db1..33381e7 100644 --- a/eapi-differences.tex +++ b/eapi-differences.tex @@ -2,6 +2,7 @@ \note This chapter is informative and for convenience only. Refer to the main text for specifics. +\ChangeWhenAddingAnEAPI{4} \begin{landscape} \newcolumntype{P}[1]{>{\setlength{\rightskip}{0pt plus 1fil}}p{#1}} \begin{longtable}{llP{5em}P{5em}P{8em}P{8em}P{8em}} @@ -235,6 +236,8 @@ EAPI 4 is EAPI 3 with the following changes: \item \t{use\_with} and \t{use\_enable} support empty third argument, \featureref{use-with}. \end{compactitem} +\ChangeWhenAddingAnEAPI{4} + % vim: set filetype=tex fileencoding=utf8 et tw=100 spell spelllang=en : %%% Local Variables: diff --git a/eapis.tex b/eapis.tex index 5839768..5543988 100644 --- a/eapis.tex +++ b/eapis.tex @@ -19,6 +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{4} \begin{description} \item[0] The `original' base EAPI. \item[1] EAPI `1' contains a number of extensions to EAPI `0'. Except where explicitly noted, it is diff --git a/ebuild-env-vars.tex b/ebuild-env-vars.tex index 47b23e7..ccf7311 100644 --- a/ebuild-env-vars.tex +++ b/ebuild-env-vars.tex @@ -210,6 +210,7 @@ variable. \end{longtable} \end{landscape} +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{EAPIs supporting various env variables} \label{tab:env-vars-table} \begin{tabular}{ l l l l l l } \toprule @@ -229,6 +230,7 @@ variable. \end{tabular} \end{centertable} +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{EAPIs supporting offset-prefix env variables} \label{tab:offset-env-vars-table} \begin{tabular}{ l l l l } @@ -313,6 +315,7 @@ variable shall be defined in \t{pkg\_prerm} and \t{pkg\_postrm}. It shall contai \subsection{Offset-prefix variables \t{EPREFIX}, \t{EROOT} and \t{ED}} \label{sec:offset-vars} +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{EAPIs supporting offset-prefix} \label{tab:offset-support-table} \begin{tabular}{ l l } diff --git a/ebuild-functions.tex b/ebuild-functions.tex index fe32004..24f7d69 100644 --- a/ebuild-functions.tex +++ b/ebuild-functions.tex @@ -44,6 +44,7 @@ fallback to \t{WORKDIR} is used: in \t{DEFINED\_PHASES}. \end{compactitem} +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{EAPIs with \t{S} to \t{WORKDIR} fallbacks} \label{tab:s-fallback-table} \begin{tabular}{ l l } \toprule @@ -77,6 +78,7 @@ before the next phase is executed. \t{pkg\_pretend} must not write to the filesystem. +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{EAPIs supporting \t{pkg\_pretend}} \label{tab:pkg-pretend-table} \begin{tabular}{ l l } \toprule @@ -131,6 +133,7 @@ implementation does nothing. The initial working directory is \t{S}, with an error or fallback to \t{WORKDIR} as discussed in section~\ref{sec:s-to-workdir-fallback}. +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{EAPIs supporting \t{src\_prepare}} \label{tab:src-prepare-table} \begin{tabular}{ l l } \toprule @@ -166,6 +169,7 @@ src_configure() { } \end{verbatim} +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{EAPIs supporting \t{src\_configure}} \label{tab:src-configure-table} \begin{tabular}{ l l } \toprule @@ -232,6 +236,7 @@ src_compile() { } \end{verbatim} +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{\t{src\_compile} behaviour for EAPIs} \label{tab:src-compile-table} \begin{tabular}{ l l } \toprule @@ -298,6 +303,7 @@ src_install() { For other EAPIs, the default implementation used when the ebuild lacks the \t{src\_install} function is a no-op. +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{\t{src\_install} behaviour for EAPIs} \label{tab:src-install-table} \begin{tabular}{ l l } \toprule @@ -372,6 +378,7 @@ that dependencies may not be installed. \t{pkg\_info} must not write to the filesystem. +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{EAPIs supporting \t{pkg\_info} on non-installed packages} \label{tab:pkg-info-table} \begin{tabular}{ l l } \toprule @@ -405,6 +412,7 @@ named \t{default\_}(phase) that behaves as the default implementation for that E when executing any ebuild phase listed in the table. Ebuilds must not call these functions except when in the phase in question. +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{EAPIs supporting \t{default\_} phase functions} \label{tab:default-phase-function-table} \begin{tabular}{ l >{\setlength{\rightskip}{0pt plus 1fil}}p{30em} } \toprule diff --git a/ebuild-vars.tex b/ebuild-vars.tex index 1dadc35..cf19721 100644 --- a/ebuild-vars.tex +++ b/ebuild-vars.tex @@ -78,6 +78,7 @@ Ebuilds may define any of the following variables: \item[PDEPEND] See section~\ref{sec:dependencies}. \end{description} +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{EAPIs supporting \t{IUSE} defaults} \label{tab:iuse-defaults-table} \begin{tabular}{ l l } \toprule @@ -93,6 +94,7 @@ Ebuilds may define any of the following variables: \end{tabular} \end{centertable} +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{EAPIs supporting various ebuild-defined variables} \label{tab:optional-vars-table} \begin{tabular}{ l l l } @@ -152,6 +154,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{4} \begin{centertable}{EAPIs with \t{RDEPEND=DEPEND} Default} \label{tab:rdepend-depend-table} \begin{tabular}{ l l } \toprule @@ -196,6 +199,7 @@ this variable defined, and must treat an empty string as ``this information is n \note Thus, by extension of section~\ref{sec:metadata-invariance}, phase functions must not be defined based upon any variant condition. +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{EAPIs supporting \t{DEFINED\_PHASES}} \label{tab:defined-phases-table} \begin{tabular}{ l l } \toprule diff --git a/merge.tex b/merge.tex index 8b2648d..846e876 100644 --- a/merge.tex +++ b/merge.tex @@ -86,6 +86,7 @@ held under the original image directory. In other EAPIs, the behaviour with respect to file modification times is undefined. +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{Preservation of file modification times (mtimes)} \label{tab:mtime-preserve} \begin{tabular}{ l l } diff --git a/pkg-mgr-commands.tex b/pkg-mgr-commands.tex index 8888335..348d4be 100644 --- a/pkg-mgr-commands.tex +++ b/pkg-mgr-commands.tex @@ -23,6 +23,7 @@ The following commands affect this behaviour: table~\ref{tab:commands-die-table} as supporting \t{nonfatal}. \end{description} +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{EAPI Command Failure Behaviour} \label{tab:commands-die-table} \begin{tabular}{ l l l } \toprule @@ -45,6 +46,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{4} \begin{centertable}{Banned commands} \label{tab:banned-commands-table} \begin{tabular}{ l l l l } \toprule @@ -147,6 +149,7 @@ has returned. string \t{disable-dependency-tracking} occurs in the output of \t{configure -{}-help}. \end{itemize} + \ChangeWhenAddingAnEAPI{4} \begin{centertable}{Extra \t{econf} arguments for EAPIs} \label{tab:econf-options-table} \begin{tabular}{ l l l } \toprule @@ -409,6 +412,7 @@ that can be passed to \t{dohtml} are as follows: \end{description} +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{EAPIs supporting \t{dodoc -r}} \label{tab:dodoc-table} \begin{tabular}{ l l } \toprule @@ -424,6 +428,7 @@ that can be passed to \t{dohtml} are as follows: \end{tabular} \end{centertable} +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{EAPIs supporting symlinks for \t{doins}} \label{tab:doins-table} \begin{tabular}{ l l } \toprule @@ -439,6 +444,7 @@ that can be passed to \t{dohtml} are as follows: \end{tabular} \end{centertable} +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{\t{doman} language support options for EAPIs} \label{tab:doman-table} \begin{tabular}{ l l l } @@ -541,6 +547,7 @@ exclusion list. Otherwise, add each argument to the inclusion list. Only availab in table~\ref{tab:compression-table} as supporting \t{docompress}. \end{description} +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{EAPIs supporting controllable compression} \label{tab:compression-table} \begin{tabular}{ l l l } \toprule @@ -584,6 +591,7 @@ either behaviour is undefined or it is an error as decided by table~\ref{tab:use instead of \t{-{}-with-} or \t{-{}-without-}. \end{description} +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{EAPI Behaviour for Use Queries not in IUSE\_EFFECTIVE} \label{tab:use-list-strictness} \begin{tabular}{ l l } \toprule @@ -599,6 +607,7 @@ instead of \t{-{}-with-} or \t{-{}-without-}. \end{tabular} \end{centertable} +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{EAPIs supporting empty third argument in \t{use\_with} and \t{use\_enable}} \label{tab:use-with-third-arg} \begin{tabular}{ l l } @@ -681,6 +690,7 @@ has returned. It is up to the ebuild to ensure that the relevant external utilities are available, whether by being in the system set or via dependencies. +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{\t{unpack} extensions for EAPIs} \label{tab:unpack-extensions-table} \begin{tabular}{ l l } \toprule @@ -705,6 +715,7 @@ has returned. table~\ref{tab:default-function-table}. \end{description} +\ChangeWhenAddingAnEAPI{4} \begin{centertable}{EAPIs supporting the \t{default} function} \label{tab:default-function-table} \begin{tabular}{ l l } \toprule diff --git a/pms.cls b/pms.cls index dcce924..ed16f6b 100644 --- a/pms.cls +++ b/pms.cls @@ -134,6 +134,11 @@ % margin. \areaset[-30mm]{400pt}{700pt} +% To find everywhere that needs updating when we add an EAPI +\newcommand{\CurrentEAPIIs}[1]{\def\TheCurrentEAPI{#1}} +\newcommand{\ChangeWhenAddingAnEAPI}[1]{\ifthenelse{\equal{\TheCurrentEAPI}{#1}}{}{\errmessage{This +needs to be updated for EAPI \TheCurrentEAPI}}} + % vim: set filetype=tex fileencoding=utf8 et tw=100 spell spelllang=en : %%% Local Variables: diff --git a/pms.tex b/pms.tex index 7244be9..a64bdcd 100644 --- a/pms.tex +++ b/pms.tex @@ -21,6 +21,9 @@ pdfkeywords={Gentoo, package manager, specification}, } +\CurrentEAPIIs{4} +\ChangeWhenAddingAnEAPI{4} + \begin{document} \maketitle