Khem: please drop this one from master-next

It was added in the default DEBUG_PREFIX_MAP in oe-core now.

On Mon, Sep 2, 2024 at 6:30 PM Martin Jansa via lists.openembedded.org
<[email protected]> wrote:
>
> This is related RFC patch just sent to oe-core ML:
> https://lists.openembedded.org/g/openembedded-core/message/204110
>
> On Mon, Sep 2, 2024 at 6:27 PM Martin Jansa <[email protected]> wrote:
> >
> > * fixes:
> >   ERROR: lib32-python3-matplotlib-3.7.2-r0 do_package_qa: QA Issue: File 
> > /usr/lib/python3.12/site-packages/matplotlib/_tri.cpython-312-i386-linux-gnu.so
> >  in package lib32-python3-matplotlib contains reference to TMPDIR 
> > [buildpaths]
> >
> > * there is native RSS already but only in -fdebug-prefix-map
> >
> > * it fails only with multilib where target RSS isn't substring of native RSS
> >
> > * comparing _tri.cpython-312-*-linux-gnu.so cmdline for regular x86-64 and 
> > lib32-python3-matplotlib i586 build shows:
> >
> > --fmacro-prefix-map=/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/python3-matplotlib/3.7.2/matplotlib-3.7.2=/usr/src/debug/python3-matplotlib/3.7.2
> >  \
> > --fdebug-prefix-map=/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/python3-matplotlib/3.7.2/matplotlib-3.7.2=/usr/src/debug/python3-matplotlib/3.7.2
> >  \
> > --fmacro-prefix-map=/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/python3-matplotlib/3.7.2/matplotlib-3.7.2=/usr/src/debug/python3-matplotlib/3.7.2
> >  \
> > --fdebug-prefix-map=/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/python3-matplotlib/3.7.2/matplotlib-3.7.2=/usr/src/debug/python3-matplotlib/3.7.2
> >  \
> > --fdebug-prefix-map=/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/python3-matplotlib/3.7.2/recipe-sysroot=
> >  \
> > --fmacro-prefix-map=/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/python3-matplotlib/3.7.2/recipe-sysroot=
> >  \
> > --fdebug-prefix-map=/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/python3-matplotlib/3.7.2/recipe-sysroot-native=
> >  \
> > +-fmacro-prefix-map=/OE/build/oe-core/tmp-glibc/work/i586-oemllib32-linux/lib32-python3-matplotlib/3.7.2/matplotlib-3.7.2=/usr/src/debug/lib32-python3-matplotlib/3.7.2
> >  \
> > +-fdebug-prefix-map=/OE/build/oe-core/tmp-glibc/work/i586-oemllib32-linux/lib32-python3-matplotlib/3.7.2/matplotlib-3.7.2=/usr/src/debug/lib32-python3-matplotlib/3.7.2
> >  \
> > +-fmacro-prefix-map=/OE/build/oe-core/tmp-glibc/work/i586-oemllib32-linux/lib32-python3-matplotlib/3.7.2/matplotlib-3.7.2=/usr/src/debug/lib32-python3-matplotlib/3.7.2
> >  \
> > +-fdebug-prefix-map=/OE/build/oe-core/tmp-glibc/work/i586-oemllib32-linux/lib32-python3-matplotlib/3.7.2/matplotlib-3.7.2=/usr/src/debug/lib32-python3-matplotlib/3.7.2
> >  \
> > +-fdebug-prefix-map=/OE/build/oe-core/tmp-glibc/work/i586-oemllib32-linux/lib32-python3-matplotlib/3.7.2/lib32-recipe-sysroot=
> >  \
> > +-fmacro-prefix-map=/OE/build/oe-core/tmp-glibc/work/i586-oemllib32-linux/lib32-python3-matplotlib/3.7.2/lib32-recipe-sysroot=
> >  \
> > +-fdebug-prefix-map=/OE/build/oe-core/tmp-glibc/work/i586-oemllib32-linux/lib32-python3-matplotlib/3.7.2/recipe-sysroot-native=
> >  \
> >
> > * the buildpaths are header files from native pybind11 (Pybind11Extension)
> >   
> > https://github.com/pybind/pybind11/blob/master/pybind11/setup_helpers.py#L89
> >
> > $ strings 
> > package/usr/lib/python3.12/site-packages/matplotlib/_tri.cpython-312-i386-linux-gnu.so
> >  | grep oemllib32
> > /OE/build/oe-core/tmp-glibc/work/i586-oemllib32-linux/lib32-python3-matplotlib/3.7.2/recipe-sysroot-native/usr/lib/python3.12/site-packages/pybind11/include/pybind11/detail/../detail/common.h
> > /OE/build/oe-core/tmp-glibc/work/i586-oemllib32-linux/lib32-python3-matplotlib/3.7.2/recipe-sysroot-native/usr/lib/python3.12/site-packages/pybind11/include/pybind11/detail/../detail/../pytypes.h
> > /OE/build/oe-core/tmp-glibc/work/i586-oemllib32-linux/lib32-python3-matplotlib/3.7.2/recipe-sysroot-native/usr/lib/python3.12/site-packages/pybind11/include/pybind11/detail/class.h
> > /OE/build/oe-core/tmp-glibc/work/i586-oemllib32-linux/lib32-python3-matplotlib/3.7.2/recipe-sysroot-native/usr/lib/python3.12/site-packages/pybind11/include/pybind11/detail/../detail/type_caster_base.h
> > /OE/build/oe-core/tmp-glibc/work/i586-oemllib32-linux/lib32-python3-matplotlib/3.7.2/recipe-sysroot-native/usr/lib/python3.12/site-packages/pybind11/include/pybind11/pybind11.h
> > /OE/build/oe-core/tmp-glibc/work/i586-oemllib32-linux/lib32-python3-matplotlib/3.7.2/recipe-sysroot-native/usr/lib/python3.12/site-packages/pybind11/include/pybind11/gil.h
> > /OE/build/oe-core/tmp-glibc/work/i586-oemllib32-linux/lib32-python3-matplotlib/3.7.2/recipe-sysroot-native/usr/lib/python3.12/site-packages/pybind11/include/pybind11/gil_safe_call_once.h
> >
> > * I'm not familiar enough with pybind11 to find a way how to configure it to
> >   use correct include dir, the issue already exists in regular x86-64 dir, 
> > but
> >   not caught by buildpaths, because, the:
> >   
> > -fmacro-prefix-map=/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/python3-matplotlib/3.7.2/recipe-sysroot=
> >   is enought to mangle the hardcoded paths (leaving only '-native') like 
> > this:
> >
> > strings 
> > ../3.7.2-x86-64/package/usr/lib64/python3.12/site-packages/matplotlib/_tri.cpython-312-x86_64-linux-gnu.so
> >  | grep pybind11/include/pybind11
> > -native/usr/lib/python3.12/site-packages/pybind11/include/pybind11/detail/common.h
> > -native/usr/lib/python3.12/site-packages/pybind11/include/pybind11/pytypes.h
> > -native/usr/lib/python3.12/site-packages/pybind11/include/pybind11/detail/class.h
> > -native/usr/lib/python3.12/site-packages/pybind11/include/pybind11/detail/type_caster_base.h
> > -native/usr/lib/python3.12/site-packages/pybind11/include/pybind11/pybind11.h
> > -native/usr/lib/python3.12/site-packages/pybind11/include/pybind11/gil.h
> > -native/usr/lib/python3.12/site-packages/pybind11/include/pybind11/gil_safe_call_once.h
> >
> > * there is also:
> >   WARNING: lib32-python3-matplotlib-3.7.2-r0 do_check_backend: QA Issue: 
> > inherits setuptools3 but has pyproject.toml with setuptools.build_meta, use 
> > the correct class [pep517-backend]
> >   but just changing the inherit doesn't work in this case, I'll leave that
> >   to someone actually using python3-matplotlib
> >
> > Signed-off-by: Martin Jansa <[email protected]>
> > ---
> >  .../recipes-devtools/python/python3-matplotlib_3.7.2.bb      | 5 +++++
> >  1 file changed, 5 insertions(+)
> >
> > diff --git 
> > a/meta-python/recipes-devtools/python/python3-matplotlib_3.7.2.bb 
> > b/meta-python/recipes-devtools/python/python3-matplotlib_3.7.2.bb
> > index 72c369100a..2886060a9e 100644
> > --- a/meta-python/recipes-devtools/python/python3-matplotlib_3.7.2.bb
> > +++ b/meta-python/recipes-devtools/python/python3-matplotlib_3.7.2.bb
> > @@ -68,3 +68,8 @@ do_compile:prepend() {
> >  }
> >
> >  BBCLASSEXTEND = "native"
> > +
> > +# otherwise pybind11 paths from STAGING_DIR_NATIVE end in 
> > _tri.cpython-312-i386-linux-gnu.so
> > +# when STAGING_DIR_NATIVE doesn't start with STAGING_DIR_HOST (e.g. for 
> > lib32-python3-matplotlib)
> > +# http://errors.yoctoproject.org/Errors/Details/801217/
> > +DEBUG_PREFIX_MAP:append = " -fmacro-prefix-map=${STAGING_DIR_NATIVE}="
> > --
> > 2.46.0
> >
>
> 
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#112124): 
https://lists.openembedded.org/g/openembedded-devel/message/112124
Mute This Topic: https://lists.openembedded.org/mt/108229723/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to