diff --git a/lang/python/python3-version.mk b/lang/python/python3-version.mk index 6d25f29cb..a047f4c69 100644 --- a/lang/python/python3-version.mk +++ b/lang/python/python3-version.mk @@ -8,12 +8,12 @@ # Note: keep in sync with setuptools & pip PYTHON3_VERSION_MAJOR:=3 PYTHON3_VERSION_MINOR:=7 -PYTHON3_VERSION_MICRO:=7 +PYTHON3_VERSION_MICRO:=8 PYTHON3_VERSION:=$(PYTHON3_VERSION_MAJOR).$(PYTHON3_VERSION_MINOR) -PYTHON3_SETUPTOOLS_PKG_RELEASE:=2 -PYTHON3_PIP_PKG_RELEASE:=2 +PYTHON3_SETUPTOOLS_PKG_RELEASE:=1 +PYTHON3_PIP_PKG_RELEASE:=1 -PYTHON3_SETUPTOOLS_VERSION:=41.2.0 -PYTHON3_PIP_VERSION:=19.2.3 +PYTHON3_SETUPTOOLS_VERSION:=47.1.0 +PYTHON3_PIP_VERSION:=20.1.1 diff --git a/lang/python/python3/Makefile b/lang/python/python3/Makefile index 6923fc448..96d0686a5 100644 --- a/lang/python/python3/Makefile +++ b/lang/python/python3/Makefile @@ -14,12 +14,12 @@ PYTHON_VERSION:=$(PYTHON3_VERSION) PYTHON_VERSION_MICRO:=$(PYTHON3_VERSION_MICRO) PKG_NAME:=python3 -PKG_RELEASE:=3 +PKG_RELEASE:=1 PKG_VERSION:=$(PYTHON_VERSION).$(PYTHON_VERSION_MICRO) PKG_SOURCE:=Python-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=https://www.python.org/ftp/python/$(PKG_VERSION) -PKG_HASH:=06a0a9f1bf0d8cd1e4121194d666c4e28ddae4dd54346de6c343206599f02136 +PKG_HASH:=43a543404b363f0037f89df8478f19db2dbc0d6f3ffee310bc2997fa71854a63 PKG_MAINTAINER:=Alexandru Ardelean , Jeffery To PKG_LICENSE:=Python/2.0 @@ -192,7 +192,7 @@ define Build/Compile/python3-setuptools --ignore-installed \ --root=$(PKG_BUILD_DIR)/install-setuptools \ --prefix=/usr \ - $(PKG_BUILD_DIR)/Lib/ensurepip/_bundled/setuptools-$(PYTHON3_SETUPTOOLS_VERSION)-py2.py3-none-any.whl + $(PKG_BUILD_DIR)/Lib/ensurepip/_bundled/setuptools-$(PYTHON3_SETUPTOOLS_VERSION)-py3-none-any.whl $(call PatchDir,$(PKG_BUILD_DIR)/install-setuptools/usr/lib/python$(PYTHON3_VERSION)/site-packages,./patches-setuptools,) endef endif # CONFIG_PACKAGE_python3-setuptools diff --git a/lang/python/python3/patches-pip/001-pep517-pyc-fix.patch b/lang/python/python3/patches-pip/001-pep517-pyc-fix.patch index c284f0111..b07cdd19e 100644 --- a/lang/python/python3/patches-pip/001-pep517-pyc-fix.patch +++ b/lang/python/python3/patches-pip/001-pep517-pyc-fix.patch @@ -1,13 +1,22 @@ diff -Nurp a/pip/_vendor/pep517/wrappers.py b/pip/_vendor/pep517/wrappers.py ---- a/pip/_vendor/pep517/wrappers.py 2019-07-30 20:02:13.000000000 +0800 -+++ b/pip/_vendor/pep517/wrappers.py 2020-04-24 17:23:35.764905235 +0800 -@@ -10,6 +10,9 @@ from . import compat +--- a/pip/_vendor/pep517/wrappers.py 2020-05-19 10:39:38.000000000 +0800 ++++ b/pip/_vendor/pep517/wrappers.py 2020-06-30 20:19:05.495033208 +0800 +@@ -14,11 +14,16 @@ try: + import importlib.resources as resources - _in_proc_script = pjoin(dirname(abspath(__file__)), '_in_process.py') + def _in_proc_script_path(): +- return resources.path(__package__, '_in_process.py') ++ if resources.is_resource(__package__, '_in_process.py'): ++ return resources.path(__package__, '_in_process.py') ++ return resources.path(__package__, '_in_process.pyc') + except ImportError: + @contextmanager + def _in_proc_script_path(): +- yield pjoin(dirname(abspath(__file__)), '_in_process.py') ++ _in_proc_script = pjoin(dirname(abspath(__file__)), '_in_process.py') ++ if not os.path.isfile(_in_proc_script): ++ _in_proc_script = pjoin(dirname(abspath(__file__)), '_in_process.pyc') ++ yield _in_proc_script -+if not os.path.isfile(_in_proc_script): -+ _in_proc_script = pjoin(dirname(abspath(__file__)), '_in_process.pyc') -+ @contextmanager - def tempdir(): diff --git a/lang/python/python3/patches-setuptools/001-reproducible.patch b/lang/python/python3/patches-setuptools/001-reproducible.patch index 32edc568d..a4e80103f 100644 --- a/lang/python/python3/patches-setuptools/001-reproducible.patch +++ b/lang/python/python3/patches-setuptools/001-reproducible.patch @@ -5,7 +5,7 @@ Index: b/setuptools/command/easy_install.py =================================================================== --- a/setuptools/command/easy_install.py +++ b/setuptools/command/easy_install.py -@@ -436,7 +436,7 @@ consider to install to another location, +@@ -423,7 +423,7 @@ class easy_install(Command): for spec in self.args: self.easy_install(spec, not self.no_deps) if self.record: diff --git a/lang/python/python3/patches-setuptools/002-sorted-requires.patch b/lang/python/python3/patches-setuptools/002-sorted-requires.patch index 2ad4795b3..9e48f523e 100644 --- a/lang/python/python3/patches-setuptools/002-sorted-requires.patch +++ b/lang/python/python3/patches-setuptools/002-sorted-requires.patch @@ -5,10 +5,10 @@ Index: b/setuptools/command/egg_info.py =================================================================== --- a/setuptools/command/egg_info.py +++ b/setuptools/command/egg_info.py -@@ -621,7 +621,7 @@ def warn_depends_obsolete(cmd, basename, - def _write_requirements(stream, reqs): - lines = yield_lines(reqs or ()) - append_cr = lambda line: line + '\n' +@@ -641,7 +641,7 @@ def _write_requirements(stream, reqs): + + def append_cr(line): + return line + '\n' - lines = map(append_cr, lines) + lines = map(append_cr, sorted(lines)) stream.writelines(lines) diff --git a/lang/python/python3/patches-setuptools/003-PKG-INFO-output-reproducible.patch b/lang/python/python3/patches-setuptools/003-PKG-INFO-output-reproducible.patch index 15f34dcdb..f1b6ca169 100644 --- a/lang/python/python3/patches-setuptools/003-PKG-INFO-output-reproducible.patch +++ b/lang/python/python3/patches-setuptools/003-PKG-INFO-output-reproducible.patch @@ -3,7 +3,7 @@ https://sources.debian.org/patches/python-setuptools/40.8.0-1/PKG-INFO-output-re --- a/setuptools/dist.py +++ b/setuptools/dist.py -@@ -191,7 +191,7 @@ def write_pkg_file(self, file): +@@ -193,7 +193,7 @@ def write_pkg_file(self, file): self.long_description_content_type ) if self.provides_extras: diff --git a/lang/python/python3/patches-setuptools/004-site-patch.patch b/lang/python/python3/patches-setuptools/004-site-patch.patch index 39b8c9026..279c35284 100644 --- a/lang/python/python3/patches-setuptools/004-site-patch.patch +++ b/lang/python/python3/patches-setuptools/004-site-patch.patch @@ -1,6 +1,6 @@ --- a/setuptools/command/easy_install.py +++ b/setuptools/command/easy_install.py -@@ -1315,7 +1315,10 @@ class easy_install(Command): +@@ -1324,7 +1324,10 @@ class easy_install(Command): return # already did it, or don't need to sitepy = os.path.join(self.install_dir, "site.py") diff --git a/lang/python/python3/patches/014-remove-platform-so-suffix.patch b/lang/python/python3/patches/014-remove-platform-so-suffix.patch index 321be4ec7..488ce4990 100644 --- a/lang/python/python3/patches/014-remove-platform-so-suffix.patch +++ b/lang/python/python3/patches/014-remove-platform-so-suffix.patch @@ -1,6 +1,6 @@ --- a/configure +++ b/configure -@@ -15246,7 +15246,7 @@ $as_echo_n "checking ABIFLAGS... " >&6; +@@ -15272,7 +15272,7 @@ $as_echo_n "checking ABIFLAGS... " >&6; $as_echo "$ABIFLAGS" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking SOABI" >&5 $as_echo_n "checking SOABI... " >&6; } @@ -11,7 +11,7 @@ --- a/configure.ac +++ b/configure.ac -@@ -4739,7 +4739,7 @@ AC_SUBST(SOABI) +@@ -4754,7 +4754,7 @@ AC_SUBST(SOABI) AC_MSG_CHECKING(ABIFLAGS) AC_MSG_RESULT($ABIFLAGS) AC_MSG_CHECKING(SOABI) diff --git a/lang/python/python3/patches/016-adjust-config-paths.patch b/lang/python/python3/patches/016-adjust-config-paths.patch index 3b9131546..eb6f2e6a9 100644 --- a/lang/python/python3/patches/016-adjust-config-paths.patch +++ b/lang/python/python3/patches/016-adjust-config-paths.patch @@ -40,7 +40,7 @@ # Here are a couple of targets for MacOSX again, to install a full --- a/configure +++ b/configure -@@ -15265,7 +15265,7 @@ LDVERSION='$(VERSION)$(ABIFLAGS)' +@@ -15291,7 +15291,7 @@ LDVERSION='$(VERSION)$(ABIFLAGS)' $as_echo "$LDVERSION" >&6; } @@ -51,7 +51,7 @@ LIBPL='$(prefix)'"/lib/python${VERSION}/config-${LDVERSION}-${PLATFORM_TRIPLET}" --- a/configure.ac +++ b/configure.ac -@@ -4756,7 +4756,7 @@ AC_MSG_RESULT($LDVERSION) +@@ -4771,7 +4771,7 @@ AC_MSG_RESULT($LDVERSION) dnl define LIBPL after ABIFLAGS and LDVERSION is defined. AC_SUBST(PY_ENABLE_SHARED) diff --git a/lang/python/python3/patches/025-bpo-34585-Dont-do-runtime-test-to-get-float-byte-order-GH-9085.patch b/lang/python/python3/patches/025-bpo-34585-Dont-do-runtime-test-to-get-float-byte-order-GH-9085.patch index c72748d05..3a03372b3 100644 --- a/lang/python/python3/patches/025-bpo-34585-Dont-do-runtime-test-to-get-float-byte-order-GH-9085.patch +++ b/lang/python/python3/patches/025-bpo-34585-Dont-do-runtime-test-to-get-float-byte-order-GH-9085.patch @@ -17,20 +17,15 @@ RFC because this doesn't yet handle the weird ancient ARMv4 OABI 'mixed-endian' create mode 100644 Misc/NEWS.d/next/Build/2018-09-18-16-28-31.bpo-34585.CGMu0h.rst create mode 100644 m4/ax_c_float_words_bigendian.m4 -diff --git a/Misc/NEWS.d/next/Build/2018-09-18-16-28-31.bpo-34585.CGMu0h.rst b/Misc/NEWS.d/next/Build/2018-09-18-16-28-31.bpo-34585.CGMu0h.rst -new file mode 100644 -index 0000000000000..01318e6e46a32 --- /dev/null +++ b/Misc/NEWS.d/next/Build/2018-09-18-16-28-31.bpo-34585.CGMu0h.rst @@ -0,0 +1,3 @@ +Check for floating-point byte order in configure.ac using compilation tests +instead of executing code, so that these checks work in cross-compiled +builds. -diff --git a/configure.ac b/configure.ac -index 03638f8ae9bc7..96331ec221be2 100644 --- a/configure.ac +++ b/configure.ac -@@ -4206,74 +4206,24 @@ fi +@@ -4362,74 +4362,24 @@ fi # * Check for various properties of floating point * # ************************************************** @@ -118,9 +113,6 @@ index 03638f8ae9bc7..96331ec221be2 100644 AC_DEFINE(DOUBLE_IS_ARM_MIXED_ENDIAN_IEEE754, 1, [Define if C doubles are 64-bit IEEE 754 binary format, stored in ARM mixed-endian order (byte order 45670123)]) -diff --git a/m4/ax_c_float_words_bigendian.m4 b/m4/ax_c_float_words_bigendian.m4 -new file mode 100644 -index 0000000000000..216b90d803187 --- /dev/null +++ b/m4/ax_c_float_words_bigendian.m4 @@ -0,0 +1,83 @@ diff --git a/lang/python/python3/patches/026-bpo-34585-run-autoconf-GH-9411.patch b/lang/python/python3/patches/026-bpo-34585-run-autoconf-GH-9411.patch index ddef81fae..6a79ff5a7 100644 --- a/lang/python/python3/patches/026-bpo-34585-run-autoconf-GH-9411.patch +++ b/lang/python/python3/patches/026-bpo-34585-run-autoconf-GH-9411.patch @@ -10,8 +10,6 @@ Follow up to 2a9c3805ddedf282881ef7811a561c70b74f80b1 (bpo-34585). pyconfig.h.in | 4 ++ 3 files changed, 51 insertions(+), 100 deletions(-) -diff --git a/aclocal.m4 b/aclocal.m4 -index 6a24d8e6b9c00..030e6877de9f7 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -288,4 +288,5 @@ AS_VAR_COPY([$1], [pkg_cv_][$1]) @@ -20,11 +18,9 @@ index 6a24d8e6b9c00..030e6877de9f7 100644 +m4_include([m4/ax_c_float_words_bigendian.m4]) m4_include([m4/ax_check_openssl.m4]) -diff --git a/configure b/configure -index 7b0c734b5e25e..38546d6ca7b40 100755 --- a/configure +++ b/configure -@@ -13853,131 +13853,77 @@ fi +@@ -14232,131 +14232,77 @@ fi # * Check for various properties of floating point * # ************************************************** @@ -202,8 +198,6 @@ index 7b0c734b5e25e..38546d6ca7b40 100755 $as_echo "#define DOUBLE_IS_ARM_MIXED_ENDIAN_IEEE754 1" >>confdefs.h -diff --git a/pyconfig.h.in b/pyconfig.h.in -index 360f79994fafe..41e0479cad2e3 100644 --- a/pyconfig.h.in +++ b/pyconfig.h.in @@ -30,6 +30,10 @@