On Tue, 2024-11-12 at 15:00 -0500, Eli Schwartz wrote:
> On 11/12/24 1:37 PM, Michał Górny wrote:
> > > diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
> > > index 7ab8dcae3265..9b9ba4b803ac 100644
> > > --- a/eclass/distutils-r1.eclass
> > > +++ b/eclass/distutils-r1.eclass
> > > @@ -1360,6 +1360,17 @@ distutils_pep517_install() {
> > >                                   EOF
> > >                           )
> > >                   fi
> > > +                 if [[ ${BDEPEND} != *dev-python/trove-classifiers* ]]; 
> > > then
> > 
> > It's not valid to access stacked variables like BDEPEND from ebuilds.
> 
> 
> For what reason is it invalid? Is it about whether this will work
> correctly or is there a policy reason banning it or... ?

Both.

> e that this happens inside of a phase function, not at global scope.
> So the value of the variable is determined by the contents of the
> environment file, not from the incremental value when sourcing the
> eclass at global scope.
> 

Precisely.  The spec doesn't guarantee that PM will reexport
the merged BDEPEND back into ebuild env, rather than leaving whatever
the last eclass sourced set.

-- 
Best regards,
Michał Górny

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to