From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <gentoo-commits+bounces-840371-garchives=archives.gentoo.org@lists.gentoo.org>
Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80])
	by finch.gentoo.org (Postfix) with ESMTP id 00C0513888F
	for <garchives@archives.gentoo.org>; Thu, 15 Oct 2015 06:24:00 +0000 (UTC)
Received: from pigeon.gentoo.org (localhost [127.0.0.1])
	by pigeon.gentoo.org (Postfix) with SMTP id 28DC121C00F;
	Thu, 15 Oct 2015 06:23:48 +0000 (UTC)
Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183])
	(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
	(No client certificate requested)
	by pigeon.gentoo.org (Postfix) with ESMTPS id 3D9C821C00F
	for <gentoo-commits@lists.gentoo.org>; Thu, 15 Oct 2015 06:23:47 +0000 (UTC)
Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52])
	(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
	(No client certificate requested)
	by smtp.gentoo.org (Postfix) with ESMTPS id 51DC1340B10
	for <gentoo-commits@lists.gentoo.org>; Thu, 15 Oct 2015 06:23:46 +0000 (UTC)
Received: from localhost.localdomain (localhost [127.0.0.1])
	by oystercatcher.gentoo.org (Postfix) with ESMTP id D4AE610DF
	for <gentoo-commits@lists.gentoo.org>; Thu, 15 Oct 2015 06:23:41 +0000 (UTC)
From: "Ulrich Müller" <ulm@gentoo.org>
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" <ulm@gentoo.org>
Message-ID: <1444857697.68e4d3846411e85e246207078a6ac3893667ecde.ulm@gentoo>
Subject: [gentoo-commits] proj/pms:eapi-6 commit in: /
X-VCS-Repository: proj/pms
X-VCS-Files: eapi-differences.tex pkg-mgr-commands.tex
X-VCS-Directories: /
X-VCS-Committer: ulm
X-VCS-Committer-Name: Ulrich Müller
X-VCS-Revision: 68e4d3846411e85e246207078a6ac3893667ecde
X-VCS-Branch: eapi-6
Date: Thu, 15 Oct 2015 06:23:41 +0000 (UTC)
Precedence: bulk
List-Post: <mailto:gentoo-commits@lists.gentoo.org>
List-Help: <mailto:gentoo-commits+help@lists.gentoo.org>
List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org>
List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org>
List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org>
X-BeenThere: gentoo-commits@lists.gentoo.org
X-Archives-Salt: 3c482f9c-8dcd-460a-a181-df49b8566485
X-Archives-Hash: 75442b4d990aaac07b7a9cfdabd7763e

commit:     68e4d3846411e85e246207078a6ac3893667ecde
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 23 11:28:01 2015 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Wed Oct 14 21:21:37 2015 +0000
URL:        https://gitweb.gentoo.org/proj/pms.git/commit/?id=68e4d384

EAPI 6 has einstalldocs.

This also adds support for an empty DOCS variable and for directories
in DOCS.

Bug: 459692
Bug: 463736
Bug: 481980

 eapi-differences.tex |  4 ++++
 pkg-mgr-commands.tex | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 52 insertions(+)

diff --git a/eapi-differences.tex b/eapi-differences.tex
index 88b8c6f..30ed46b 100644
--- a/eapi-differences.tex
+++ b/eapi-differences.tex
@@ -234,6 +234,9 @@ Controllable compression & \compactfeatureref{docompress} &
 \t{default} function & \compactfeatureref{default-func} &
     * & Yes & Yes & Yes & Yes \\
 
+\t{einstalldocs} & \compactfeatureref{einstalldocs} &
+    No & No & No & No & Yes \\
+
 File mtimes preserved & \compactfeatureref{mtime-preserve} &
     Undefined & Yes & Yes & Yes & Yes \\
 
@@ -353,6 +356,7 @@ EAPI 6 is EAPI 5 with the following changes:
 \item \t{unpack} supports absolute and relative paths, \featureref{unpack-absolute}.
 \item \t{unpack} supports \t{.txz}, \featureref{unpack-extensions}.
 \item \t{unpack} matches filename extensions case-insensitively, \featureref{unpack-ignore-case}.
+\item \t{einstalldocs} support, \featureref{einstalldocs}.
 \end{compactitem}
 
 \ChangeWhenAddingAnEAPI{6}

diff --git a/pkg-mgr-commands.tex b/pkg-mgr-commands.tex
index 5e9d61c..c33b4e6 100644
--- a/pkg-mgr-commands.tex
+++ b/pkg-mgr-commands.tex
@@ -919,8 +919,42 @@ has returned.
     section~\ref{sec:default-phase-funcs}). Must not be called if the \t{default\_} function does
     not exist for the current phase in the current EAPI\@. Only available in EAPIs listed in
     table~\ref{tab:default-function-table}.
+
+\item[einstalldocs] \featurelabel{einstalldocs} Takes no arguments. Installs the files specified
+    by the \t{DOCS} and \t{HTML\_DOCS} variables or a default set of files, according to
+    Algorithm~\ref{alg:einstalldocs}. If called using \t{nonfatal} and any of the called commands
+    returns a non-zero exit status, returns immediately with the same exit status. Only available
+    in EAPIs listed in table~\ref{tab:einstalldocs} as supporting \t{einstalldocs}.
 \end{description}
 
+\begin{algorithm}
+\caption{\t{einstalldocs} logic} \label{alg:einstalldocs}
+\begin{algorithmic}[1]
+\STATE save the value of the install directory for \t{dodoc}
+\STATE call \t{docinto .} \COMMENT{sets the directory to \t{/usr/share/doc/\$\{PF\}}}
+\IF{the DOCS variable is a non-empty array}
+    \STATE call \t{dodoc -r "\$\{DOCS[@]\}"}
+\ELSIF{the DOCS variable is a non-empty scalar}
+    \STATE call \t{dodoc -r \$\{DOCS\}}
+\ELSIF{the DOCS variable is unset}
+    \FORALL{$d$ matching the filename expansion of \t{README*} \t{ChangeLog} \t{AUTHORS} \t{NEWS}
+            \t{TODO} \t{CHANGES} \t{THANKS} \t{BUGS} \t{FAQ} \t{CREDITS} \t{CHANGELOG}}
+        \IF{file $d$ exists and has a size greater than zero}
+            \STATE call \t{dodoc} with $d$ as argument
+        \ENDIF
+    \ENDFOR
+\ENDIF
+\STATE call \t{docinto html} \COMMENT{sets the directory to \t{/usr/share/doc/\$\{PF\}/html}}
+\IF{the HTML\_DOCS variable is a non-empty array}
+    \STATE call \t{dodoc -r "\$\{HTML\_DOCS[@]\}"}
+\ELSIF{the HTML\_DOCS variable is a non-empty scalar}
+    \STATE call \t{dodoc -r \$\{HTML\_DOCS\}}
+\ENDIF
+\STATE restore the value of the install directory for \t{dodoc}
+\RETURN shell true (0)
+\end{algorithmic}
+\end{algorithm}
+
 \ChangeWhenAddingAnEAPI{6}
 \begin{centertable}{EAPIs supporting the \t{default} function}
     \label{tab:default-function-table}
@@ -935,6 +969,20 @@ has returned.
     \end{tabular}
 \end{centertable}
 
+\ChangeWhenAddingAnEAPI{6}
+\begin{centertable}{EAPIs supporting \t{einstalldocs}}
+    \label{tab:einstalldocs}
+    \begin{tabular}{ l l }
+      \toprule
+      \multicolumn{1}{c}{\textbf{EAPI}} &
+      \multicolumn{1}{c}{\textbf{Supports \t{einstalldocs}?}} \\
+      \midrule
+      0, 1, 2, 3, 4, 5  & No  \\
+      6                 & Yes \\
+      \bottomrule
+    \end{tabular}
+\end{centertable}
+
 \subsubsection{Debug Commands}
 The following commands are available for debugging. Normally all of these commands should be no ops;
 a package manager may provide a special debug mode where these commands instead do something.