commit:     a356d816dc3339de9347c86678a75ddfd0e3b27b
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 16 19:06:08 2015 +0000
Commit:     git@oystercatcher mirror+tproxy <git <AT> oystercatcher <DOT> 
gentoo <DOT> org>
CommitDate: Thu Feb 19 08:17:29 2015 +0000
URL:        http://sources.gentoo.org/gitweb/?p=proj/pms.git;a=commit;h=a356d816

EAPI 6: unpack supports absolute and relative paths.

See bug 483244.

---
 eapi-differences.tex |  4 ++++
 pkg-mgr-commands.tex | 26 +++++++++++++++++++++++---
 2 files changed, 27 insertions(+), 3 deletions(-)

diff --git a/eapi-differences.tex b/eapi-differences.tex
index 12c05b4..66c2cbe 100644
--- a/eapi-differences.tex
+++ b/eapi-differences.tex
@@ -207,6 +207,9 @@ Controllable compression & \compactfeatureref{docompress} &
 \t{usex} & \compactfeatureref{usex} &
     No & No & No & Yes & Yes \\
 
+\t{unpack} absolute paths & \compactfeatureref{unpack-absolute} &
+    No & No & No & No & Yes \\
+
 \t{unpack} support for \t{xz}? & \compactfeatureref{unpack-extensions} &
     No & Yes & Yes & Yes & Yes \\
 
@@ -325,6 +328,7 @@ EAPI 6 is EAPI 5 with the following changes:
 \item \t{einstall} banned, \featureref{banned-commands}.
 \item \t{die} and \t{assert} called with \t{-n} respect \t{nonfatal}, 
\featureref{nonfatal-die}.
 \item \t{econf} adds \t{-{}-docdir} and \t{-{}-htmldir}, 
\featureref{econf-options}.
+\item \t{unpack} supports absolute and relative paths, 
\featureref{unpack-absolute}.
 \end{compactitem}
 
 \ChangeWhenAddingAnEAPI{6}

diff --git a/pkg-mgr-commands.tex b/pkg-mgr-commands.tex
index 3ac8169..57d5bfb 100644
--- a/pkg-mgr-commands.tex
+++ b/pkg-mgr-commands.tex
@@ -751,9 +751,15 @@ has returned.
     the current working directory itself) have permissions \t{a+r,u+w,go-w} 
and that all directories
     under the current working directory additionally have permissions \t{a+x}.
 
-    All arguments to \t{unpack} must be either a filename without path, in 
which case \t{unpack}
-    looks in \t{DISTDIR} for the file, or start with the string \t{./}, in 
which case \t{unpack}
-    uses the argument as a path relative to the working directory.
+    Arguments to \t{unpack} are interpreted as follows:
+    \begin{itemize}
+    \item A filename without path (i.\,e., not containing any slash) is looked 
up in \t{DISTDIR}.
+    \item An argument starting with the string \t{./} is a path relative to 
the working directory.
+    \item \featurelabel{unpack-absolute} Otherwise, for EAPIs listed in
+        table~\ref{tab:unpack-behaviour} as supporting absolute and relative 
paths, the argument is
+        interpreted as a literal path (absolute, or relative to the working 
directory); for EAPIs
+        listed as \e{not} supporting such paths, \t{unpack} shall abort the 
build process.
+    \end{itemize}
 
     Any unrecognised file format shall be skipped silently. If unpacking a 
supported file format
     fails, \t{unpack} shall abort the build process.
@@ -789,6 +795,20 @@ has returned.
     being in the system set or via dependencies.
 
     \ChangeWhenAddingAnEAPI{6}
+    \begin{centertable}{\t{unpack} behaviour for EAPIs}
+        \label{tab:unpack-behaviour}
+        \begin{tabular}{ l l }
+          \toprule
+          \multicolumn{1}{c}{\textbf{EAPI}} &
+          \multicolumn{1}{c}{\textbf{Supports absolute and relative paths?}} \\
+          \midrule
+          0, 1, 2, 3, 4, 5  & No  \\
+          6                 & Yes \\
+          \bottomrule
+        \end{tabular}
+    \end{centertable}
+
+    \ChangeWhenAddingAnEAPI{6}
     \begin{centertable}{\t{unpack} extensions for EAPIs}
         \label{tab:unpack-extensions-table}
         \begin{tabular}{ l l }

Reply via email to