Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 282296 | Differences between
and this patch

Collapse All | Expand All

(-)a/eapi-differences.tex (+4 lines)
Lines 44-49 of this document for a complete table of previous EAPIs. Link Here
44
\t{package.mask} directory & \compactfeatureref{package-mask-dir} &
44
\t{package.mask} directory & \compactfeatureref{package-mask-dir} &
45
    No & No & No & No & Yes \\
45
    No & No & No & No & Yes \\
46
46
47
Profile files as directories & \compactfeatureref{profile-file-dirs} &
48
    No & No & No & No & Yes \\
49
47
Stable use masking/forcing & \compactfeatureref{stablemask} &
50
Stable use masking/forcing & \compactfeatureref{stablemask} &
48
    No & No & Yes & Yes & Yes \\
51
    No & No & Yes & Yes & Yes \\
49
52
Lines 377-382 EAPI 7 is EAPI 6 with the following changes: Link Here
377
380
378
\begin{compactitem}
381
\begin{compactitem}
379
\item \t{profiles/package.mask} can be a directory, \featureref{package-mask-dir}.
382
\item \t{profiles/package.mask} can be a directory, \featureref{package-mask-dir}.
383
\item \t{package.*} and \t{use.*} in a profile can be directories, \featureref{profile-file-dirs}.
380
\item \t{dohtml} banned, \featureref{banned-commands}.
384
\item \t{dohtml} banned, \featureref{banned-commands}.
381
\end{compactitem}
385
\end{compactitem}
382
386
(-)a/profiles.tex (-8 / +31 lines)
Lines 70-75 parent profile's list is taken, and the current profile's list appended. If any Link Here
70
hyphen, then any lines previous to it whose contents are equal to the remainder of that line are
70
hyphen, then any lines previous to it whose contents are equal to the remainder of that line are
71
removed from the list. Once again, blank lines and those beginning with a \# are discarded.
71
removed from the list. Once again, blank lines and those beginning with a \# are discarded.
72
72
73
\featurelabel{profile-file-dirs} In EAPIs listed in table~\ref{tab:profile-file-dirs} as supporting
74
directories for profile files, any of the files \t{package.mask}, \t{package.use}, \t{use.*} and
75
\t{package.use.*} mentioned below can be a directory instead of a regular file. Files contained
76
in that directory, unless their name begins with a dot, will be concatenated in order of their
77
filename in the POSIX locale and the result will be processed as if it were a single file.
78
Any subdirectories will be ignored.
79
80
\ChangeWhenAddingAnEAPI{7}
81
\begin{centertable}{EAPIs supporting directories for profile files}
82
    \label{tab:profile-file-dirs}
83
    \begin{tabular}{ll}
84
      \toprule
85
      \multicolumn{1}{c}{\textbf{EAPI}} &
86
      \multicolumn{1}{c}{\textbf{Supports directories for profile files?}} \\
87
      \midrule
88
      0, 1, 2, 3, 4, 5, 6 & No  \\
89
      7                   & Yes \\
90
      \bottomrule
91
    \end{tabular}
92
\end{centertable}
93
73
\subsection{packages}
94
\subsection{packages}
74
The \t{packages} file is used to define the `system set' for this profile.
95
The \t{packages} file is used to define the `system set' for this profile.
75
After the above rules for inheritance and comments are applied, its lines must take one of two
96
After the above rules for inheritance and comments are applied, its lines must take one of two
Lines 85-91 but is mentioned here for completeness. Link Here
85
\subsection{package.mask}
106
\subsection{package.mask}
86
\t{package.mask} is used to prevent packages from being installed on a given profile. Each line
107
\t{package.mask} is used to prevent packages from being installed on a given profile. Each line
87
contains one package dependency specification; anything matching this specification will not be
108
contains one package dependency specification; anything matching this specification will not be
88
installed unless unmasked by the user's configuration.
109
installed unless unmasked by the user's configuration. In some EAPIs, \t{package.mask} can be a
110
directory instead of a regular file as per section~\ref{sec:line-stacking}.
89
111
90
Note that the \t{-spec} syntax can be used to remove a mask in a parent profile, but not
112
Note that the \t{-spec} syntax can be used to remove a mask in a parent profile, but not
91
necessarily a global mask (from \t{profiles/package.mask}, section~\ref{profiles-package.mask}).
113
necessarily a global mask (from \t{profiles/package.mask}, section~\ref{profiles-package.mask}).
Lines 100-117 has severe adverse effects on USE-based and slot-based dependencies, its use is Link Here
100
and package manager support must be regarded as purely optional.
122
and package manager support must be regarded as purely optional.
101
123
102
\subsection{package.use}
124
\subsection{package.use}
103
The \t{package.use} file may be used by the package manager to override the default USE flags specified
125
The \t{package.use} file may be used by the package manager to override the default USE flags
104
by \t{make.defaults} on a per package basis.  The format is to have a package dependency specification,
126
specified by \t{make.defaults} on a per package basis. The format is to have a package dependency
105
and then a space delimited list of USE flags to enable.  A USE flag in the form of \t{-flag} indicates
127
specification, and then a space delimited list of USE flags to enable. A USE flag in the form of
106
that the package should have the USE flag disabled.  The package dependency specification is limited to
128
\t{-flag} indicates that the package should have the USE flag disabled. The package dependency
107
the forms defined by the directory's EAPI.
129
specification is limited to the forms defined by the directory's EAPI. In some EAPIs,
130
\t{package.use} can be a directory instead of a regular file as per section~\ref{sec:line-stacking}.
108
131
109
\subsection{USE masking and forcing}
132
\subsection{USE masking and forcing}
110
\label{sec:use-masking}
133
\label{sec:use-masking}
111
This section covers the eight files \t{use.mask}, \t{use.force}, \t{use.stable.mask},
134
This section covers the eight files \t{use.mask}, \t{use.force}, \t{use.stable.mask},
112
\t{use.stable.force}, \t{package.use.mask}, \t{package.use.force}, \t{package.use.stable.mask},
135
\t{use.stable.force}, \t{package.use.mask}, \t{package.use.force}, \t{package.use.stable.mask},
113
and \t{package.use.\allowbreak stable.force}. They are described together because they interact in
136
and \t{package.use.\allowbreak stable.force}. They are described together because they interact in
114
a non-trivial manner.
137
a non-trivial manner. In some EAPIs, these files can be directories instead of regular files as per
138
section~\ref{sec:line-stacking}.
115
139
116
Simply speaking, \t{use.mask} and \t{use.force} are used to say that a given USE flag must never or
140
Simply speaking, \t{use.mask} and \t{use.force} are used to say that a given USE flag must never or
117
always, respectively, be enabled when using this profile. \t{package.use.mask} and
141
always, respectively, be enabled when using this profile. \t{package.use.mask} and
118
- 

Return to bug 282296