From 0862df262d7bd4b016a3fcb8a2f2fff7e0cd957b Mon Sep 17 00:00:00 2001 From: Li Zhou Date: Sat, 27 May 2017 17:46:15 +0800 Subject: python3: Use _sysconfigdata.py to initialize distutils.sysconfig Porting patch from to use _sysconfigdata.py to initialize distutils.sysconfig. This patch makes that distutils.sysconfig doesn't need config-*/Makefile in libdir any more. Next we can move it from python3-misc to python3-dev package. (From OE-Core rev: 659a80afc5894658f8b82fcd62ebe3562b441db9) Signed-off-by: Li Zhou Signed-off-by: Richard Purdie --- ...-Use-_sysconfigdata.py-to-initialize-dist.patch | 66 ++++++++++++++++++++++ meta/recipes-devtools/python/python3_3.5.3.bb | 1 + 2 files changed, 67 insertions(+) create mode 100644 meta/recipes-devtools/python/python3/0001-Issue-21272-Use-_sysconfigdata.py-to-initialize-dist.patch (limited to 'meta/recipes-devtools/python') diff --git a/meta/recipes-devtools/python/python3/0001-Issue-21272-Use-_sysconfigdata.py-to-initialize-dist.patch b/meta/recipes-devtools/python/python3/0001-Issue-21272-Use-_sysconfigdata.py-to-initialize-dist.patch new file mode 100644 index 0000000000..d1c92e9eed --- /dev/null +++ b/meta/recipes-devtools/python/python3/0001-Issue-21272-Use-_sysconfigdata.py-to-initialize-dist.patch @@ -0,0 +1,66 @@ +From bcddbf40c7f1b80336268cdddacc17369fb0ccea Mon Sep 17 00:00:00 2001 +From: Libin Dang +Date: Tue, 11 Apr 2017 14:12:15 +0800 +Subject: [PATCH] Issue #21272: Use _sysconfigdata.py to initialize + distutils.sysconfig + +Backport upstream commit +https://github.com/python/cpython/commit/409482251b06fe75c4ee56e85ffbb4b23d934159 + +Upstream-Status: Backport + +Signed-off-by: Li Zhou +--- + Lib/distutils/sysconfig.py | 35 ++++------------------------------- + 1 file changed, 4 insertions(+), 31 deletions(-) + +diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py +index 6d5cfd0..9925d24 100644 +--- a/Lib/distutils/sysconfig.py ++++ b/Lib/distutils/sysconfig.py +@@ -424,38 +424,11 @@ _config_vars = None + + def _init_posix(): + """Initialize the module as appropriate for POSIX systems.""" +- g = {} +- # load the installed Makefile: +- try: +- filename = get_makefile_filename() +- parse_makefile(filename, g) +- except OSError as msg: +- my_msg = "invalid Python installation: unable to open %s" % filename +- if hasattr(msg, "strerror"): +- my_msg = my_msg + " (%s)" % msg.strerror +- +- raise DistutilsPlatformError(my_msg) +- +- # load the installed pyconfig.h: +- try: +- filename = get_config_h_filename() +- with open(filename) as file: +- parse_config_h(file, g) +- except OSError as msg: +- my_msg = "invalid Python installation: unable to open %s" % filename +- if hasattr(msg, "strerror"): +- my_msg = my_msg + " (%s)" % msg.strerror +- +- raise DistutilsPlatformError(my_msg) +- +- # On AIX, there are wrong paths to the linker scripts in the Makefile +- # -- these paths are relative to the Python source, but when installed +- # the scripts are in another directory. +- if python_build: +- g['LDSHARED'] = g['BLDSHARED'] +- ++ # _sysconfigdata is generated at build time, see the sysconfig module ++ from _sysconfigdata import build_time_vars + global _config_vars +- _config_vars = g ++ _config_vars = {} ++ _config_vars.update(build_time_vars) + + + def _init_nt(): +-- +1.8.3.1 + diff --git a/meta/recipes-devtools/python/python3_3.5.3.bb b/meta/recipes-devtools/python/python3_3.5.3.bb index 3b3cfebbf4..d7c29f2f7d 100644 --- a/meta/recipes-devtools/python/python3_3.5.3.bb +++ b/meta/recipes-devtools/python/python3_3.5.3.bb @@ -36,6 +36,7 @@ SRC_URI += "\ file://setup.py-find-libraries-in-staging-dirs.patch \ file://configure.ac-fix-LIBPL.patch \ file://upstream-random-fixes.patch \ + file://0001-Issue-21272-Use-_sysconfigdata.py-to-initialize-dist.patch \ " SRC_URI[md5sum] = "57d1f8bfbabf4f2500273fb0706e6f21" SRC_URI[sha256sum] = "eefe2ad6575855423ab630f5b51a8ef6e5556f774584c06beab4926f930ddbb0" -- cgit v1.2.3-54-g00ecf