> -----Original Message-----
> From: Martin Jansa <[email protected]>
> Sent: den 5 mars 2021 12:51
> To: Peter Kjellerstedt <[email protected]>
> Cc: [email protected]; [email protected];
> [email protected]
> Subject: Re: [OE-core] [PATCH] glib-2.0: call os.path.normpath on THISDIR
> 
> On Fri, Mar 05, 2021 at 11:20:11AM +0000, Peter Kjellerstedt wrote:
> > > -----Original Message-----
> > > From: [email protected] <openembedded-
> [email protected]> On Behalf Of Peter Kjellerstedt
> > > Sent: den 5 mars 2021 11:54
> > > To: Martin Jansa <[email protected]>; openembedded-
> [email protected]
> > > Cc: [email protected]; [email protected]
> > > Subject: Re: [OE-core] [PATCH] glib-2.0: call os.path.normpath on
> THISDIR
> > >
> > > > -----Original Message-----
> > > > From: [email protected] <openembedded-
> [email protected]> On Behalf Of Martin Jansa
> > > > Sent: den 2 mars 2021 20:32
> > > > To: [email protected]
> > > > Cc: [email protected]; [email protected]; Martin Jansa
> <[email protected]>
> > > > Subject: [OE-core] [PATCH] glib-2.0: call os.path.normpath on
> THISDIR
> > > >
> > > > * some build environments have relative paths in THISDIR, e.g. from
> OEROOT set in:
> > > >   https://github.com/96boards/oe-rpb-
> manifest/blob/1e3345c26c56f77f3a15a3978f412a25955d2606/conf/bblayers.conf#
> L4
> > > >   and then the paths in filename normalized in:
> > > >   filename = os.path.normpath(os.path.join(path, meson.cross.d,
> element))
> > > >   don't match.
> > > >
> > > > * COREBASE used here before didn't have this issue because the value
> is already
> > > >   normalized when set in:
> > > >   meta/conf/layer.conf:COREBASE =
> > > '${@os.path.normpath("${LAYERDIR}/../")}'
> > >
> > > That is not the only problem with the change to use ${THISDIR}. We get
> > > a million errors because we have bbappend files for glib-2.0. This is
> > > because bitbake will now give an error for any potential cross-files
> > > from those layers, regardless if they exist or not (they don't).
> > >
> > > I will send a patch that I believe solves this in a way that also
> > > avoids the need for the bb.error().
> > >
> > > //Peter
> >
> > Actually, thinking a bit more on this, I believe that with my patch
> > applied, this patch should _not_ be applied. That is because it makes
> > the paths relative to thisdir, but then uses ${THISDIR} when using
> > them. Thus if thisdir is normalized, it may no longer match ${THISDIR}
> > and the relative paths will not work as intended.
> 
> I'm sorry I've tested and wrote that part of commit message when I had
> if os.path.exists(filename):
> at the beginning of this whole section, which I've then re-wrote to just
> store only existing filenames in files as a list instead of a map (to
> simplify the rest of this function as well), but then I was wondering
> why Ross used the map in the initial implementation here:
> https://git.openembedded.org/openembedded-
> core/commit/?id=5acd9cbc9d5c6355010775250fb25f043441c5cd
> and assumed it was needed to get all possible filenames in
> do_configure[file-checksums] in case they are created later.
> 
> So I've removed all my cleanups and returned to smallest change to just
> replace COREBASE with THISDIR.
> 
> What about checking the existence before showing the error, that will
> show an error only when matching file exists while keeping all
> not-skipped paths in do_configure[file-checksums] even when they don't
> exist yet.
> 
> Will send a patch for this shortly.

Any objections to my patch, where there is no need for the bb.error() 
in the first place?
        
//Peter

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#149060): 
https://lists.openembedded.org/g/openembedded-core/message/149060
Mute This Topic: https://lists.openembedded.org/mt/81034785/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to