The new patch is fine, thanks. Alex
On Tue, 23 Aug 2022 at 09:05, Konrad Weihmann <[email protected]> wrote: > > I read a more on this topic and found a less invasive way of disabling > this feature globally for the native target. > Sadly there's no configure switch > > Just send out a new patch, so this original series can be safely ignored > > On 22.08.22 22:03, Alexander Kanavin wrote: > > This needs to be applied to python3-native/python3, not just to the > > nativepython3 link to it. You can use 'create_wrapper' helper that was > > written exactly for the purpose (see meta/ for examples). > > > > Also, can the lookup in ~ be simply disabled at python3-native build time? > > > > Alex > > > > On Mon, 22 Aug 2022 at 21:57, Konrad Weihmann <[email protected]> wrote: > >> > >> which makes sure to set PYTHONNOUSERSITE to prevent > >> dynamically loading site packages from the host sided > >> package dirs. > >> In before when a module was using pluggy and/or > >> importlib_metadata the host sided path ~./local/... was still > >> part of the sys.path search tree and had priority over the > >> recipe-sysroot-native, leading to host/workspace contamination > >> > >> Signed-off-by: Konrad Weihmann <[email protected]> > >> --- > >> meta/recipes-devtools/python/python3/nativepython3 | 2 ++ > >> meta/recipes-devtools/python/python3_3.10.6.bb | 9 ++++----- > >> 2 files changed, 6 insertions(+), 5 deletions(-) > >> create mode 100644 meta/recipes-devtools/python/python3/nativepython3 > >> > >> diff --git a/meta/recipes-devtools/python/python3/nativepython3 > >> b/meta/recipes-devtools/python/python3/nativepython3 > >> new file mode 100644 > >> index 0000000000..0413e44e32 > >> --- /dev/null > >> +++ b/meta/recipes-devtools/python/python3/nativepython3 > >> @@ -0,0 +1,2 @@ > >> +#!/bin/sh > >> +PYTHONNOUSERSITE=1 python3 $@ > >> \ No newline at end of file > >> diff --git a/meta/recipes-devtools/python/python3_3.10.6.bb > >> b/meta/recipes-devtools/python/python3_3.10.6.bb > >> index f19cd50273..1121c17887 100644 > >> --- a/meta/recipes-devtools/python/python3_3.10.6.bb > >> +++ b/meta/recipes-devtools/python/python3_3.10.6.bb > >> @@ -43,6 +43,7 @@ SRC_URI:append:class-native = " \ > >> > >> file://0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch \ > >> file://12-distutils-prefix-is-inside-staging-area.patch \ > >> file://0001-Don-t-search-system-for-headers-libraries.patch \ > >> + file://nativepython3 \ > >> " > >> SRC_URI[sha256sum] = > >> "f795ff87d11d4b0c7c33bc8851b0c28648d8a4583aa2100a98c22b4326b6d3f3" > >> > >> @@ -153,11 +154,9 @@ do_install:append:class-native() { > >> for PYTHSCRIPT in `grep -rIl ${bindir}/${PN}/python > >> ${D}${bindir}/${PN}`; do > >> sed -i -e '1s|^#!.*|#!/usr/bin/env python3|' $PYTHSCRIPT > >> done > >> - # Add a symlink to the native Python so that scripts can just > >> invoke > >> - # "nativepython" and get the right one without needing absolute > >> paths > >> - # (these often end up too long for the #! parser in the kernel as > >> the > >> - # buffer is 128 bytes long). > >> - ln -s python3-native/python3 ${D}${bindir}/nativepython3 > >> + # Create a wrapper for python3 in native environment > >> + # make sure that no host sided modules are inherited > >> + install -m 755 ${WORKDIR}/nativepython3 > >> ${D}${bindir}/nativepython3 > >> > >> # Remove the opt-1.pyc and opt-2.pyc files. There are over 3,000 > >> of them > >> # and the overhead in each recipe-sysroot-native isn't worth it, > >> particularly > >> -- > >> 2.34.1 > >> > >> > >> > >>
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#169696): https://lists.openembedded.org/g/openembedded-core/message/169696 Mute This Topic: https://lists.openembedded.org/mt/93189857/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
