1 |
On Mon, 2019-12-23 at 08:21 +0100, Ulrich Mueller wrote: |
2 |
> > > > > > On Sun, 22 Dec 2019, Michał Górny wrote: |
3 |
> > --- a/dependencies.tex |
4 |
> > +++ b/dependencies.tex |
5 |
> > @@ -21,7 +21,7 @@ |
6 |
> > \t{src_install} & \t{DEPEND}, \t{BDEPEND} \\ |
7 |
> > \addlinespace |
8 |
> > \t{pkg_preinst}, \t{pkg_postinst}, \t{pkg_prerm}, \t{pkg_postrm} & |
9 |
> > - \t{RDEPEND} \\ |
10 |
> > + \t{RDEPEND}, \t{IDEPEND} \\ |
11 |
> |
12 |
> This would imply that in order to uninstall a package, the PM would |
13 |
> possibly have to install other packages listed in IDEPEND. Do we really |
14 |
> want to go down that road? (What if there are circular dependencies in |
15 |
> IDEPEND?) |
16 |
|
17 |
I've already indicated below that they may not be available. Do you |
18 |
want me to repeat that here somehow, or just omit it entirely? |
19 |
|
20 |
> |
21 |
> > @@ -30,15 +30,16 @@ |
22 |
> > |
23 |
> > \begin{centertable}{Summary of other interfaces related to dependency classes} |
24 |
> > \label{tab:dep-class-api} |
25 |
> > - \begin{tabular}{llll} |
26 |
> > + \begin{tabular}{lllll} |
27 |
> |
28 |
> But it's still 4 columns, isn't it? |
29 |
|
30 |
Yep, fixed. |
31 |
|
32 |
> |
33 |
> > \toprule |
34 |
> > - & \t{BDEPEND} & \t{DEPEND} & \t{RDEPEND}, \t{PDEPEND} \\ |
35 |
> > + & \t{BDEPEND}, \t{IDEPEND} & \t{DEPEND} & \t{RDEPEND}, |
36 |
> > + \t{PDEPEND} \\ |
37 |
> |
38 |
> Just move the first & tab to the left, then you need not split the line |
39 |
> (and see the following remark below). |
40 |
|
41 |
Good idea, done. |
42 |
|
43 |
> |
44 |
> > \midrule |
45 |
> > - Binary compatible with & \t{CBUILD} & \t{CHOST} & \t{CHOST} \\ |
46 |
> > - Base unprefixed path & \t{/} & \t{\$\{SYSROOT\}} & \t{\$\{ROOT\}} \\ |
47 |
> > - Relevant offset-prefix & \t{\$\{BROOT\}} & \t{\$\{EPREFIX\}} & \t{\$\{EPREFIX\}} \\ |
48 |
> > - Path combined with prefix & \t{\$\{BROOT\}} & \t{\$\{ESYSROOT\}} & \t{\$\{EROOT\}} \\ |
49 |
> > - PM query command option & \t{-b} & \t{-d} & \t{-r} \\ |
50 |
> > + Binary compatible with & \t{CBUILD} & \t{CHOST} & \t{CHOST} \\ |
51 |
> > + Base unprefixed path & \t{/} & \t{\$\{SYSROOT\}} & \t{\$\{ROOT\}} \\ |
52 |
> > + Relevant offset-prefix & \t{\$\{BROOT\}} & \t{\$\{EPREFIX\}} & \t{\$\{EPREFIX\}} \\ |
53 |
> > + Path combined with prefix & \t{\$\{BROOT\}} & \t{\$\{ESYSROOT\}} & \t{\$\{EROOT\}} \\ |
54 |
> > + PM query command option & \t{-b} & \t{-d} & \t{-r} \\ |
55 |
> |
56 |
> Nothing has changed here? Maybe better to leave the whitespace alone. |
57 |
|
58 |
Restored original whitespace. |
59 |
|
60 |
> |
61 |
> > +\featurelabel{idepend} Additionally, in EAPIs listed in table~\ref{tab:depend-table} as supporting |
62 |
> > +\t{IDEPEND}, install-time dependencies can be specified. Those dependencies are binary compatible |
63 |
> > +with the native build system (\t{CBUILD}). The~ebuild is allowed to call them in \t{pkg_preinst} |
64 |
> > +and \t{pkg_postinst} phases. The ebuild may also call them in \t{pkg_prerm} and \t{pkg_postrm} |
65 |
> > +but must not rely on them being available. |
66 |
> |
67 |
> s/Those/These/ |
68 |
> s/The ebuild/Ebuilds/ (twice) |
69 |
> s/ phases// (these are not phases, but phase _functions_) |
70 |
|
71 |
Done. |
72 |
|
73 |
> |
74 |
> > @@ -97,7 +106,7 @@ be surrounded on both sides by whitespace, except at the start and end of the st |
75 |
> > |
76 |
> > \begin{compactitem} |
77 |
> > \item A package dependency specification. Permitted in \t{DEPEND}, \t{BDEPEND}, \t{RDEPEND}, |
78 |
> > - \t{PDEPEND}. |
79 |
> > + \t{IDEPEND}, \t{PDEPEND}. |
80 |
> |
81 |
> Hm, I guess it's time to establish a canonical order of these variables. |
82 |
> You say, IDEPEND should be listed before PDEPEND? (On first thought, I'd |
83 |
> have listed IDEPEND at the end, because RDEPEND and PDEPEND are similar. |
84 |
> Or IDEPEND after BDEPEND.) |
85 |
|
86 |
My logic was that PDEPEND is used very rarely, so it should go last. |
87 |
However, your idea also makes sense. |
88 |
|
89 |
> |
90 |
> > --- a/ebuild-env-vars.tex |
91 |
> > +++ b/ebuild-env-vars.tex |
92 |
> > @@ -147,9 +147,10 @@ variable. |
93 |
> > \t{BROOT} & |
94 |
> > Ditto & |
95 |
> > No & |
96 |
> > - \featurelabel{broot} The absolute path to the root directory containing build dependencies |
97 |
> > - satisfied by \t{BDEPEND}, typically executable build tools. This includes any applicable offset |
98 |
> > - prefix. Only for EAPIs listed in table~\ref{tab:offset-env-vars-table} as supporting \t{BROOT}. |
99 |
> > + \featurelabel{broot} The absolute path to the root directory containing build host dependencies |
100 |
> |
101 |
> I think you shouldn't change "build" to "build host" here, because of |
102 |
> the confusion with CHOST. The following "executable build tools" makes |
103 |
> it clear enough what is meant. |
104 |
> |
105 |
> (Or if we change that wording, then we should do it now, and not as part |
106 |
> of an EAPI 8 patch.) |
107 |
|
108 |
'Host' removed. |
109 |
|
110 |
> |
111 |
> > + satisfied by \t{BDEPEND} and \t{IDEPEND}, typically executable build tools. This includes any |
112 |
> > + applicable offset prefix. Only for EAPIs listed in table~\ref{tab:offset-env-vars-table} as |
113 |
> > + supporting \t{BROOT}. |
114 |
> > --- a/ebuild-vars.tex |
115 |
> > +++ b/ebuild-vars.tex |
116 |
> > @@ -86,6 +86,7 @@ Ebuilds may define any of the following variables: |
117 |
> > details. |
118 |
> > \item[PDEPEND] See chapter~\ref{ch:dependencies}. |
119 |
> > \item[BDEPEND] See chapter~\ref{ch:dependencies}. |
120 |
> > +\item[IDEPEND] See chapter~\ref{ch:dependencies}. |
121 |
> |
122 |
> Here the order is different from the one used above (but it's like this |
123 |
> in EAPI 7 already). |
124 |
> |
125 |
|
126 |
Yes, that's why I added it last -- presumed it's in addition order. |
127 |
|
128 |
Lemme know which order should I use finally, and if I should update this |
129 |
one as well (in a separate patch?). |
130 |
|
131 |
-- |
132 |
Best regards, |
133 |
Michał Górny |