Skip to content
This repository has been archived by the owner on Feb 9, 2022. It is now read-only.

Commit

Permalink
python3-setuptools: _distutils/sysconfig fix
Browse files Browse the repository at this point in the history
Add patch to append STAGING_LIBDIR python-sysconfigdata to sys.path so
that packages which set SETUPTOOLS_USE_DISUTILS='local' cross-compile
properly with python3-setuptools-native.

Fixes:
ModuleNotFoundError: No module named '_sysconfigdata'

References:
https://setuptools.pypa.io/en/latest/deprecated/distutils-legacy.html#porting-from-distutils

(From OE-Core rev: f6fb99c53f779966fc902a629d0a8bbd9f84c6be)

Signed-off-by: Tim Orling <timothy.t.orling@intel.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
  • Loading branch information
moto-timo authored and rpurdie committed Oct 23, 2021
1 parent 00372aa commit aa600e7
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 1 deletion.
@@ -0,0 +1,34 @@
From 44349672cbff8945693c8d2821c82e9f04bfc8b5 Mon Sep 17 00:00:00 2001
From: Tim Orling <timothy.t.orling@intel.com>
Date: Wed, 20 Oct 2021 17:38:10 +0000
Subject: [PATCH] _distutils/sysconfig: append
STAGING_LIBDIR/python-sysconfigdata to sys.path

When python modules set SETUPTOOLS_USE_DISTULS='local', this uses the
vendored _distutils in setuptools rather than distutils in the Standard
Library. This is needed so that target configuration can be used with
python3-setuptools-native.

Based on python3/0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch
from Alex Kanavin <alex.kanavin@gmail.com>

Upstream-Status: Inappropriate [oe-specific]

Signed-off-by: Tim Orling <timothy.t.orling@intel.com>
---
setuptools/_distutils/sysconfig.py | 2 ++
1 file changed, 2 insertions(+)

diff --git a/setuptools/_distutils/sysconfig.py b/setuptools/_distutils/sysconfig.py
index 8832b3e..bbc7c08 100644
--- a/setuptools/_distutils/sysconfig.py
+++ b/setuptools/_distutils/sysconfig.py
@@ -461,6 +461,8 @@ def _init_posix():
platform=sys.platform,
multiarch=getattr(sys.implementation, '_multiarch', ''),
))
+ if 'STAGING_LIBDIR' in os.environ:
+ sys.path.append(os.environ['STAGING_LIBDIR']+'/python-sysconfigdata')
try:
_temp = __import__(name, globals(), locals(), ['build_time_vars'], 0)
except ImportError:
5 changes: 4 additions & 1 deletion meta/recipes-devtools/python/python3-setuptools_58.2.0.bb
Expand Up @@ -8,7 +8,10 @@ inherit pypi setuptools3

SRC_URI:append:class-native = " file://0001-conditionally-do-not-fetch-code-by-easy_install.patch"

SRC_URI += "file://0001-change-shebang-to-python3.patch"
SRC_URI += "\
file://0001-change-shebang-to-python3.patch \
file://0001-_distutils-sysconfig-append-STAGING_LIBDIR-python-sy.patch \
"

SRC_URI[sha256sum] = "2c55bdb85d5bb460bd2e3b12052b677879cffcf46c0c688f2e5bf51d36001145"

Expand Down

0 comments on commit aa600e7

Please sign in to comment.