python3targetconfig.bbclass: use PYTHONPATH to point to the target config

There is no need to patch native python so that it looks in the target
sysroot; the same can be achieved with just an environment variable.

(From OE-Core rev: c9617c03bceee54dc540318cada392799b137bd5)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Alexander Kanavin
2022-11-09 21:21:10 +01:00
committed by Richard Purdie
parent 990af746c2
commit af4284d39d
4 changed files with 2 additions and 30 deletions

View File

@@ -12,6 +12,7 @@ DEPENDS:append = " ${EXTRA_PYTHON_DEPENDS}"
setup_target_config() {
export _PYTHON_SYSCONFIGDATA_NAME="_sysconfigdata"
export PYTHONPATH=${STAGING_LIBDIR}/python-sysconfigdata
export PATH=${STAGING_EXECPREFIXDIR}/python-target-config/:$PATH
}

View File

@@ -49,7 +49,7 @@ setuptools3_legacy_do_install() {
install -d ${D}${PYTHON_SITEPACKAGES_DIR}
STAGING_INCDIR=${STAGING_INCDIR} \
STAGING_LIBDIR=${STAGING_LIBDIR} \
PYTHONPATH=${D}${PYTHON_SITEPACKAGES_DIR} \
PYTHONPATH=${D}${PYTHON_SITEPACKAGES_DIR}:$PYTHONPATH \
${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py \
build --build-base=${B} install --skip-build ${SETUPTOOLS_INSTALL_ARGS} || \
bbfatal_log "'${PYTHON_PN} setup.py install ${SETUPTOOLS_INSTALL_ARGS}' execution failed."

View File

@@ -1,28 +0,0 @@
From 9c6b9f46179c8f9c9391767e2b02f268a1ee7a9c Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Thu, 31 Jan 2019 16:46:30 +0100
Subject: [PATCH] distutils/sysconfig: append
STAGING_LIBDIR/python-sysconfigdata to sys.path
So that target configuration can be used when running native python
Upstream-Status: Inappropriate [oe-core specific]
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
Lib/sysconfig.py | 2 ++
1 file changed, 2 insertions(+)
diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py
index ff399e2..95844cf 100644
--- a/Lib/sysconfig.py
+++ b/Lib/sysconfig.py
@@ -528,6 +528,8 @@ def _init_posix(vars):
"""Initialize the module as appropriate for POSIX systems."""
# _sysconfigdata is generated at build time, see _generate_posix_vars()
name = _get_sysconfigdata_name()
+ if 'STAGING_LIBDIR' in os.environ:
+ sys.path.append(os.environ['STAGING_LIBDIR']+'/python-sysconfigdata')
_temp = __import__(name, globals(), locals(), ['build_time_vars'], 0)
build_time_vars = _temp.build_time_vars
vars.update(build_time_vars)

View File

@@ -38,7 +38,6 @@ SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \
SRC_URI:append:class-native = " \
file://0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch \
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 \
"