Python3: update to 3.8.5

Signed-off-by: Ian Leonard <antonlacon@gmail.com>
This commit is contained in:
Ian Leonard 2020-08-08 07:29:04 +00:00
parent 63dfb3b7f2
commit 373bbc0d12
5 changed files with 330 additions and 399 deletions

View File

@ -3,8 +3,8 @@
PKG_NAME="Python3"
# When changing PKG_VERSION remember to sync PKG_PYTHON_VERSION!
PKG_VERSION="3.7.8"
PKG_SHA256="43a543404b363f0037f89df8478f19db2dbc0d6f3ffee310bc2997fa71854a63"
PKG_VERSION="3.8.5"
PKG_SHA256="e3003ed57db17e617acb382b0cade29a248c6026b1bd8aad1f976e9af66a83b0"
PKG_LICENSE="OSS"
PKG_SITE="http://www.python.org/"
PKG_URL="http://www.python.org/ftp/python/$PKG_VERSION/${PKG_NAME::-1}-$PKG_VERSION.tar.xz"
@ -13,7 +13,7 @@ PKG_DEPENDS_TARGET="toolchain Python3:host sqlite expat zlib bzip2 xz openssl li
PKG_LONGDESC="Python3 is an interpreted object-oriented programming language."
PKG_TOOLCHAIN="autotools"
PKG_PYTHON_VERSION="python3.7"
PKG_PYTHON_VERSION="python3.8"
PKG_PY_DISABLED_MODULES="_tkinter nis gdbm bsddb ossaudiodev"

View File

@ -1,21 +1,14 @@
From 34116c8ab386aa1fb29f1819ee44b4e89260a1f1 Mon Sep 17 00:00:00 2001
From: MilhouseVH <milhouseVH.github@nmacleod.com>
Date: Thu, 17 Oct 2019 00:18:30 +0100
Subject: [PATCH] Enable optimization by default
Refreshed MilhouseVH patch from Python3.7. Original message:
Do *not* enable Py_OptimizeFlag=2 (or higher) as this will stop
__doc__ output from being generated which will prevent the qemu
package for Generic from building.
---
Python/pylifecycle.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Python/pylifecycle.c b/Python/pylifecycle.c
index 55d1ba5..fe6e082 100644
--- a/Python/pylifecycle.c
+++ b/Python/pylifecycle.c
@@ -115,7 +115,7 @@ int Py_VerboseFlag = 0; /* Needed by import.c */
diff -aur a/Python/initconfig.c b/Python/initconfig.c
--- a/Python/initconfig.c 2020-07-20 09:01:32.000000000 -0400
+++ b/Python/initconfig.c 2020-08-08 03:24:02.796189739 -0400
@@ -147,7 +147,7 @@
int Py_QuietFlag = 0; /* Needed by sysmodule.c */
int Py_InteractiveFlag = 0; /* Needed by Py_FdIsInteractive() below */
int Py_InspectFlag = 0; /* Needed to determine whether to exit at SystemExit */
@ -24,6 +17,3 @@ index 55d1ba5..fe6e082 100644
int Py_NoSiteFlag = 0; /* Suppress 'import site' */
int Py_BytesWarningFlag = 0; /* Warn on str(bytes) and str(buffer) */
int Py_FrozenFlag = 0; /* Needed by getpath.c */
--
2.7.4

View File

@ -1,18 +1,7 @@
From 3f91ffafa84bccf04ac0cfecb37f96bbcee6173e Mon Sep 17 00:00:00 2001
From: MilhouseVH <milhouseVH.github@nmacleod.com>
Date: Wed, 16 Oct 2019 23:11:57 +0100
Subject: [PATCH] 001-xcompile.patch
---
Makefile.pre.in | 4 ++++
setup.py | 9 ++++++++-
2 files changed, 12 insertions(+), 1 deletion(-)
diff --git a/Makefile.pre.in b/Makefile.pre.in
index 31dc7c3..db3a9f6 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -622,10 +622,12 @@ sharedmods: $(BUILDPYTHON) pybuilddir.txt Modules/_math.o
diff -aur a/Makefile.pre.in b/Makefile.pre.in
--- a/Makefile.pre.in 2020-08-08 14:28:01.691542199 -0400
+++ b/Makefile.pre.in 2020-08-08 14:17:51.908512177 -0400
@@ -607,10 +607,12 @@
esac; \
echo "$(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
_TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \
@ -25,7 +14,7 @@ index 31dc7c3..db3a9f6 100644
$(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build
@@ -1592,8 +1594,10 @@ libainstall: @DEF_MAKE_RULE@ python-config
@@ -1656,8 +1658,10 @@
# Install the dynamically loadable modules
# This goes into $(exec_prefix)
sharedinstall: sharedmods
@ -36,33 +25,29 @@ index 31dc7c3..db3a9f6 100644
--prefix=$(prefix) \
--install-scripts=$(BINDIR) \
--install-platlib=$(DESTSHARED) \
diff --git a/setup.py b/setup.py
index 94a327b..8a1279d 100644
--- a/setup.py
+++ b/setup.py
@@ -16,7 +16,7 @@ from distutils.command.install_lib import install_lib
from distutils.command.build_scripts import build_scripts
from distutils.spawn import find_executable
diff -aur a/setup.py b/setup.py
--- a/setup.py 2020-08-08 14:28:01.695542200 -0400
+++ b/setup.py 2020-08-08 14:28:36.931543934 -0400
@@ -41,7 +41,7 @@
return sys.platform
-cross_compiling = "_PYTHON_HOST_PLATFORM" in os.environ
+cross_compiling = ("_PYTHON_HOST_PLATFORM" in os.environ) or ('PYTHONXCPREFIX' in os.environ)
# Set common compiler and linker flags derived from the Makefile,
# reserved for building the interpreter and the stdlib modules.
@@ -445,6 +445,13 @@ class PyBuildExt(build_ext):
-CROSS_COMPILING = ("_PYTHON_HOST_PLATFORM" in os.environ)
+CROSS_COMPILING = ("_PYTHON_HOST_PLATFORM" in os.environ) or ('PYTHONXCPREFIX' in os.environ)
HOST_PLATFORM = get_platform()
MS_WINDOWS = (HOST_PLATFORM == 'win32')
CYGWIN = (HOST_PLATFORM == 'cygwin')
@@ -487,6 +487,13 @@
ext.name, level=1)
return
+ # Inport check will not work when cross-compiling.
+ # Import check will not work when cross-compiling.
+ if 'PYTHONXCPREFIX' in os.environ:
+ self.announce(
+ 'WARNING: skipping inport check for cross-compiled: "%s"' %
+ 'WARNING: skipping import check for cross-compiled: "%s"' %
+ ext.name)
+ return
+
# Workaround for Mac OS X: The Carbon-based modules cannot be
# reliably imported into a command-line Python
if 'Carbon' in ext.extra_link_args:
--
2.7.4

View File

@ -1,24 +1,14 @@
From 3a68797fe5615ed12797597b28dd2cbf4dbcf2af Mon Sep 17 00:00:00 2001
From: MilhouseVH <milhouseVH.github@nmacleod.com>
Date: Thu, 17 Oct 2019 12:53:04 +0100
Subject: [PATCH] 002-xcompile.patch
---
setup.py | 33 ++++++++++++---------------------
1 file changed, 12 insertions(+), 21 deletions(-)
diff --git a/setup.py b/setup.py
index 8a1279d..8e2b536 100644
--- a/setup.py
+++ b/setup.py
@@ -593,16 +593,19 @@ class PyBuildExt(build_ext):
os.unlink(tmpfile)
diff -aur a/setup.py b/setup.py
--- a/setup.py 2020-08-08 14:18:41.978514642 -0400
+++ b/setup.py 2020-08-08 14:26:09.612536681 -0400
@@ -656,31 +656,23 @@
add_dir_to_list(dir_list, directory)
def detect_modules(self):
def configure_compiler(self):
- # Ensure that /usr/local is always used, but the local build
- # directories (i.e. '.' and 'Include') must be first. See issue
- # 10520.
- if not cross_compiling:
- if not CROSS_COMPILING:
- add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
- add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
+ try:
@ -31,20 +21,17 @@ index 8a1279d..8e2b536 100644
+ modules_lib_dirs = ['/usr/lib']
self.add_multiarch_paths()
- # only change this for cross builds for 3.3, issues on Mageia
- if cross_compiling:
- self.add_gcc_paths()
- if CROSS_COMPILING:
- self.add_cross_compiling_paths()
+ for dir in modules_include_dirs:
+ add_dir_to_list(self.compiler.include_dirs, dir)
+ for dir in modules_lib_dirs:
+ add_dir_to_list(self.compiler.library_dirs, dir)
+
self.add_ldflags_cppflags()
# Add paths specified in the environment variables LDFLAGS and
# CPPFLAGS for header and library files.
@@ -638,18 +641,6 @@ class PyBuildExt(build_ext):
for directory in reversed(options.dirs):
add_dir_to_list(dir_list, directory)
- if (not cross_compiling and
def init_inc_lib_dirs(self):
- if (not CROSS_COMPILING and
- os.path.normpath(sys.base_prefix) != '/usr' and
- not sysconfig.get_config_var('PYTHONFRAMEWORK')):
- # OSX note: Don't add LIBDIR and INCLUDEDIR to building a framework
@ -59,6 +46,3 @@ index 8a1279d..8e2b536 100644
system_lib_dirs = ['/lib64', '/usr/lib64', '/lib', '/usr/lib']
system_include_dirs = ['/usr/include']
# lib_dirs and inc_dirs are used to search for files;
--
2.7.4