From e1bce9a316494f14d059b5afc0e1912832622334 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Sat, 11 Jun 2011 09:32:03 +0200 Subject: [PATCH] Rephrase *DEPEND to state when and whether they are installed. --- dependencies.tex | 27 ++++++++++++++++++++++----- 1 files changed, 22 insertions(+), 5 deletions(-) diff --git a/dependencies.tex b/dependencies.tex index f6318d8..b218579 100644 --- a/dependencies.tex +++ b/dependencies.tex @@ -6,13 +6,30 @@ There are three classes of dependencies supported by ebuilds: \begin{compactitem} -\item Build dependencies (\t{DEPEND}). These must be installed and usable before the ebuild - is installed. -\item Runtime dependencies (\t{RDEPEND}). These must be installed and usable before the ebuild - is treated as usable. -\item Post dependencies (\t{PDEPEND}). These must be installed at some point. +\item Build dependencies (\t{DEPEND}). These must be installed and usable before any of + the ebuild \t{src\_*} phase functions is executed. These may not be installed at all + if a binary package is being merged. +\item Runtime dependencies (\t{RDEPEND}). These must be installed and usable before + the results of an ebuild merging are treated as usable. +\item Post dependencies (\t{PDEPEND}). These must be installed at some point before + the package manager finishes the batch of installs. \end{compactitem} +\begin{centertable}{Dependency classes required to be satisfied for a particular phase function} \label{tab:phase-function-dependency-classes} + \begin{tabular}{ p{0.2\textwidth} p{0.7\textwidth} } + \toprule + \multicolumn{1}{c}{\textbf{Phase function}} & + \multicolumn{1}{c}{\textbf{Satisfied dependency classes}} \\ + \midrule + \t{pkg\_pretend}, \t{pkg\_setup}, \t{pkg\_info}, \t{pkg\_nofetch} & None (ebuilds can rely only on the packages in the system set) \\ + \t{src\_unpack}, \t{src\_prepare}, \t{src\_configure}, \t{src\_compile}, \t{src\_test}, \t{src\_install} & \t{DEPEND} \\ + \t{pkg\_preinst}, \t{pkg\_postinst}, \t{pkg\_prerm}, \t{pkg\_postrm}, \t{pkg\_config} & \t{RDEPEND} \\ + \bottomrule + \end{tabular} +\end{centertable} + +Table~\ref{tab:phase-function-dependency-classes} lists dependencies which must be satisfied before a particular phase function is executed. + In addition, \t{SRC\_URI}, \t{HOMEPAGE}, \t{PROVIDE}, \t{RESTRICT}, \t{PROPERTIES}, \t{LICENSE} and \t{REQUIRED\_USE} use dependency-style specifications to specify their values. -- 1.7.5.3