On Fri, Nov 13, 2020 at 11:49 AM Alexander Kanavin <alex.kana...@gmail.com> wrote: > > Setting _PYTHON_SYSCONFIGDATA_NAME in python3native class globally was > problematic as it was leaking into host python environment, which > was causing tracebacks depending on host distro and action > (typically anything involving importing sysconfig module). > > The new class sets the variable only in specific tasks where it is needed, > and should be inherited explicitly: > - use python3native to run scripts with native python > - use python3targetconfig to run scripts with native python > if those scripts need to access target config data (such > as correct installation directories). This also adds a dependency > on target python, so should be used carefully to avoid lengthening builds. > > Signed-off-by: Alexander Kanavin <alex.kana...@gmail.com>
This fixes the devtool modify u-boot failure for me on Arch. Alistair > --- > meta/classes/python3native.bbclass | 2 -- > meta/classes/python3targetconfig.bbclass | 15 +++++++++++++++ > 2 files changed, 15 insertions(+), 2 deletions(-) > create mode 100644 meta/classes/python3targetconfig.bbclass > > diff --git a/meta/classes/python3native.bbclass > b/meta/classes/python3native.bbclass > index d98fb4c758..2e3a88c126 100644 > --- a/meta/classes/python3native.bbclass > +++ b/meta/classes/python3native.bbclass > @@ -17,8 +17,6 @@ export STAGING_LIBDIR > export PYTHON_LIBRARY="${STAGING_LIBDIR}/lib${PYTHON_DIR}${PYTHON_ABI}.so" > export PYTHON_INCLUDE_DIR="${STAGING_INCDIR}/${PYTHON_DIR}${PYTHON_ABI}" > > -export _PYTHON_SYSCONFIGDATA_NAME="_sysconfigdata" > - > # suppress host user's site-packages dirs. > export PYTHONNOUSERSITE = "1" > > diff --git a/meta/classes/python3targetconfig.bbclass > b/meta/classes/python3targetconfig.bbclass > new file mode 100644 > index 0000000000..640d0c97b6 > --- /dev/null > +++ b/meta/classes/python3targetconfig.bbclass > @@ -0,0 +1,15 @@ > +inherit python3native > + > +DEPENDS_append = " python3" > + > +do_configure_prepend() { > + export _PYTHON_SYSCONFIGDATA_NAME="_sysconfigdata" > +} > + > +do_compile_prepend() { > + export _PYTHON_SYSCONFIGDATA_NAME="_sysconfigdata" > +} > + > +do_install_prepend() { > + export _PYTHON_SYSCONFIGDATA_NAME="_sysconfigdata" > +} > -- > 2.29.2 > > > >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#144589): https://lists.openembedded.org/g/openembedded-core/message/144589 Mute This Topic: https://lists.openembedded.org/mt/78237681/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-