mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-28 13:16:41 +00:00
Merge pull request #7072 from heitbaum/Python3
Python3 update to 3.11.0
This commit is contained in:
commit
f3f89e87a7
@ -3,8 +3,8 @@
|
|||||||
|
|
||||||
PKG_NAME="Python3"
|
PKG_NAME="Python3"
|
||||||
# When changing PKG_VERSION remember to sync PKG_PYTHON_VERSION!
|
# When changing PKG_VERSION remember to sync PKG_PYTHON_VERSION!
|
||||||
PKG_VERSION="3.9.15"
|
PKG_VERSION="3.11.0"
|
||||||
PKG_SHA256="12daff6809528d9f6154216950423c9e30f0e47336cb57c6aa0b4387dd5eb4b2"
|
PKG_SHA256="a57dc82d77358617ba65b9841cee1e3b441f386c3789ddc0676eca077f2951c3"
|
||||||
PKG_LICENSE="OSS"
|
PKG_LICENSE="OSS"
|
||||||
PKG_SITE="https://www.python.org/"
|
PKG_SITE="https://www.python.org/"
|
||||||
PKG_URL="https://www.python.org/ftp/python/${PKG_VERSION}/${PKG_NAME::-1}-${PKG_VERSION}.tar.xz"
|
PKG_URL="https://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_LONGDESC="Python3 is an interpreted object-oriented programming language."
|
||||||
PKG_TOOLCHAIN="autotools"
|
PKG_TOOLCHAIN="autotools"
|
||||||
|
|
||||||
PKG_PYTHON_VERSION="python3.9"
|
PKG_PYTHON_VERSION="python3.11"
|
||||||
|
|
||||||
PKG_PY_DISABLED_MODULES="_tkinter nis gdbm bsddb ossaudiodev"
|
PKG_PY_DISABLED_MODULES="_tkinter nis gdbm bsddb ossaudiodev"
|
||||||
|
|
||||||
@ -34,7 +34,7 @@ PKG_CONFIGURE_OPTS_HOST="ac_cv_prog_HAS_HG=/bin/false
|
|||||||
--disable-curses
|
--disable-curses
|
||||||
--disable-pydoc
|
--disable-pydoc
|
||||||
--disable-test-modules
|
--disable-test-modules
|
||||||
--enable-lib2to3
|
--disable-lib2to3
|
||||||
--disable-idle3
|
--disable-idle3
|
||||||
--without-cxx-main
|
--without-cxx-main
|
||||||
--with-expat=builtin
|
--with-expat=builtin
|
||||||
@ -72,7 +72,7 @@ PKG_CONFIGURE_OPTS_TARGET="ac_cv_prog_HAS_HG=/bin/false
|
|||||||
--enable-curses
|
--enable-curses
|
||||||
--disable-pydoc
|
--disable-pydoc
|
||||||
--disable-test-modules
|
--disable-test-modules
|
||||||
--enable-lib2to3
|
--disable-lib2to3
|
||||||
--disable-idle3
|
--disable-idle3
|
||||||
--without-cxx-main
|
--without-cxx-main
|
||||||
--with-expat=system
|
--with-expat=system
|
||||||
@ -82,6 +82,7 @@ PKG_CONFIGURE_OPTS_TARGET="ac_cv_prog_HAS_HG=/bin/false
|
|||||||
--without-pymalloc
|
--without-pymalloc
|
||||||
--without-ensurepip
|
--without-ensurepip
|
||||||
--enable-ipv6
|
--enable-ipv6
|
||||||
|
--with-build-python=${TOOLCHAIN}/bin/python
|
||||||
"
|
"
|
||||||
|
|
||||||
pre_configure_host() {
|
pre_configure_host() {
|
||||||
|
@ -0,0 +1,56 @@
|
|||||||
|
From 322724e166d7ec0393aec577c12fdf6ef2b61e1d Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Date: Wed, 22 Feb 2017 16:21:31 -0800
|
||||||
|
Subject: [PATCH] Make the build of pyc files conditional
|
||||||
|
|
||||||
|
This commit adds a new configure option --disable-pyc-build to disable
|
||||||
|
the compilation of pyc.
|
||||||
|
|
||||||
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
[ Andrey Smrinov: ported to Python 3.6 ]
|
||||||
|
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
|
||||||
|
---
|
||||||
|
Makefile.pre.in | 2 ++
|
||||||
|
configure.ac | 6 ++++++
|
||||||
|
2 files changed, 8 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/Makefile.pre.in b/Makefile.pre.in
|
||||||
|
index 77f91e72b1..0c809f3d8a 100644
|
||||||
|
--- a/Makefile.pre.in
|
||||||
|
+++ b/Makefile.pre.in
|
||||||
|
@@ -1600,6 +1600,7 @@ libinstall: build_all $(srcdir)/Modules/xxmodule.c
|
||||||
|
$(INSTALL_DATA) $(srcdir)/Modules/xxmodule.c \
|
||||||
|
$(DESTDIR)$(LIBDEST)/distutils/tests ; \
|
||||||
|
fi
|
||||||
|
+ifeq (@PYC_BUILD@,yes)
|
||||||
|
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
||||||
|
$(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \
|
||||||
|
-j0 -d $(LIBDEST) -f \
|
||||||
|
@@ -1627,6 +1628,7 @@ libinstall: build_all $(srcdir)/Modules/xxmodule.c
|
||||||
|
$(PYTHON_FOR_BUILD) -Wi -OO $(DESTDIR)$(LIBDEST)/compileall.py \
|
||||||
|
-j0 -d $(LIBDEST)/site-packages -f \
|
||||||
|
-x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
|
||||||
|
+endif
|
||||||
|
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
||||||
|
$(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/Grammar.txt
|
||||||
|
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index d60f05251a..1ee5a09588 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -1110,6 +1110,12 @@ fi
|
||||||
|
|
||||||
|
AC_MSG_CHECKING(LDLIBRARY)
|
||||||
|
|
||||||
|
+AC_SUBST(PYC_BUILD)
|
||||||
|
+
|
||||||
|
+AC_ARG_ENABLE(pyc-build,
|
||||||
|
+ AS_HELP_STRING([--disable-pyc-build], [disable build of pyc files]),
|
||||||
|
+ [ PYC_BUILD="${enableval}" ], [ PYC_BUILD=yes ])
|
||||||
|
+
|
||||||
|
# MacOSX framework builds need more magic. LDLIBRARY is the dynamic
|
||||||
|
# library that we build, but we do not want to link against it (we
|
||||||
|
# will find it with a -framework option). For this reason there is an
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
@ -0,0 +1,27 @@
|
|||||||
|
From 72e20220f3a592b3ab9f440fbe74efa9f9e82d49 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Vanya Sergeev <vsergeev@gmail.com>
|
||||||
|
Date: Wed, 23 Dec 2015 11:30:33 +0100
|
||||||
|
Subject: [PATCH] Disable buggy_getaddrinfo configure test when cross-compiling
|
||||||
|
with IPv6 support
|
||||||
|
|
||||||
|
Signed-off-by: Vanya Sergeev <vsergeev@gmail.com>
|
||||||
|
---
|
||||||
|
configure.ac | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index 1ee5a09588..c2445edc88 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -5086,7 +5086,7 @@ fi
|
||||||
|
dnl if ac_cv_func_getaddrinfo
|
||||||
|
])
|
||||||
|
|
||||||
|
-if test "$ac_cv_func_getaddrinfo" = no -o "$ac_cv_buggy_getaddrinfo" = yes
|
||||||
|
+if test "$ac_cv_func_getaddrinfo" = no || test "$cross_compiling" != "yes" -a "$ac_cv_buggy_getaddrinfo" = yes
|
||||||
|
then
|
||||||
|
AS_VAR_IF([ipv6], [yes], [
|
||||||
|
AC_MSG_ERROR([m4_normalize([
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
@ -0,0 +1,108 @@
|
|||||||
|
From df7c95b4ceecf390b961d843a556c470ac9080b2 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Date: Wed, 22 Feb 2017 16:33:22 -0800
|
||||||
|
Subject: [PATCH] Add infrastructure to disable the build of certain extensions
|
||||||
|
|
||||||
|
Some of the extensions part of the Python core have dependencies on
|
||||||
|
external libraries (sqlite, tk, etc.) or are relatively big and not
|
||||||
|
necessarly always useful (CJK codecs for example). By extensions, we
|
||||||
|
mean part of Python modules that are written in C and therefore
|
||||||
|
compiled to binary code.
|
||||||
|
|
||||||
|
Therefore, we introduce a small infrastructure that allows to disable
|
||||||
|
some of those extensions. This can be done inside the configure.ac by
|
||||||
|
adding values to the DISABLED_EXTENSIONS variable (which is a
|
||||||
|
word-separated list of extensions).
|
||||||
|
|
||||||
|
The implementation works as follow :
|
||||||
|
|
||||||
|
* configure.ac defines a DISABLED_EXTENSIONS variable, which is
|
||||||
|
substituted (so that when Makefile.pre is generated from
|
||||||
|
Makefile.pre.in, the value of the variable is substituted). For
|
||||||
|
now, this DISABLED_EXTENSIONS variable is empty, later patches will
|
||||||
|
use it.
|
||||||
|
|
||||||
|
* Makefile.pre.in passes the DISABLED_EXTENSIONS value down to the
|
||||||
|
variables passed in the environment when calling the setup.py
|
||||||
|
script that actually builds and installs those extensions.
|
||||||
|
|
||||||
|
* setup.py is modified so that the existing "disabled_module_list" is
|
||||||
|
filled with those pre-disabled extensions listed in
|
||||||
|
DISABLED_EXTENSIONS.
|
||||||
|
|
||||||
|
Patch ported to python2.7 by Maxime Ripard <ripard@archos.com>, and
|
||||||
|
then extended by Thomas Petazzoni
|
||||||
|
<thomas.petazzoni@free-electrons.com>.
|
||||||
|
|
||||||
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
[ Andrey Smirnov: ported to Python 3.6 ]
|
||||||
|
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
|
||||||
|
---
|
||||||
|
Makefile.pre.in | 6 +++++-
|
||||||
|
configure.ac | 2 ++
|
||||||
|
setup.py | 5 ++++-
|
||||||
|
3 files changed, 11 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/Makefile.pre.in b/Makefile.pre.in
|
||||||
|
index 0c809f3d8a..7c3dde8dd4 100644
|
||||||
|
--- a/Makefile.pre.in
|
||||||
|
+++ b/Makefile.pre.in
|
||||||
|
@@ -239,6 +239,8 @@ FILEMODE= 644
|
||||||
|
# configure script arguments
|
||||||
|
CONFIG_ARGS= @CONFIG_ARGS@
|
||||||
|
|
||||||
|
+# disabled extensions
|
||||||
|
+DISABLED_EXTENSIONS= @DISABLED_EXTENSIONS@
|
||||||
|
|
||||||
|
# Subdirectories with code
|
||||||
|
SRCDIRS= @SRCDIRS@
|
||||||
|
@@ -739,6 +741,7 @@ sharedmods: $(BUILDPYTHON) pybuilddir.txt Modules/_math.o
|
||||||
|
*) quiet="";; \
|
||||||
|
esac; \
|
||||||
|
echo "$(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
|
||||||
|
+ DISABLED_EXTENSIONS="$(DISABLED_EXTENSIONS)" \
|
||||||
|
$(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build"; \
|
||||||
|
$(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)'
|
||||||
|
|
||||||
|
@@ -2228,7 +2231,8 @@ libainstall: @DEF_MAKE_RULE@ python-config
|
||||||
|
# Install the dynamically loadable modules
|
||||||
|
# This goes into $(exec_prefix)
|
||||||
|
sharedinstall: all
|
||||||
|
- $(RUNSHARED) $(PYTHON_FOR_BUILD) $(srcdir)/setup.py install \
|
||||||
|
+ $(RUNSHARED) DISABLED_EXTENSIONS="$(DISABLED_EXTENSIONS)" \
|
||||||
|
+ $(PYTHON_FOR_BUILD) $(srcdir)/setup.py install \
|
||||||
|
--prefix=$(prefix) \
|
||||||
|
--install-scripts=$(BINDIR) \
|
||||||
|
--install-platlib=$(DESTSHARED) \
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index c2445edc88..73d66167de 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -3091,6 +3091,8 @@ LIBS="$withval $LIBS"
|
||||||
|
|
||||||
|
PKG_PROG_PKG_CONFIG
|
||||||
|
|
||||||
|
+AC_SUBST(DISABLED_EXTENSIONS)
|
||||||
|
+
|
||||||
|
# Check for use of the system expat library
|
||||||
|
AC_MSG_CHECKING(for --with-system-expat)
|
||||||
|
AC_ARG_WITH(system_expat,
|
||||||
|
diff --git a/setup.py b/setup.py
|
||||||
|
index 770866bca7..b6c829b3a5 100644
|
||||||
|
--- a/setup.py
|
||||||
|
+++ b/setup.py
|
||||||
|
@@ -58,7 +58,10 @@ with warnings.catch_warnings():
|
||||||
|
TEST_EXTENSIONS = (sysconfig.get_config_var('TEST_MODULES') == 'yes')
|
||||||
|
|
||||||
|
# This global variable is used to hold the list of modules to be disabled.
|
||||||
|
-DISABLED_MODULE_LIST = []
|
||||||
|
+try:
|
||||||
|
+ DISABLED_MODULE_LIST = sysconfig.get_config_var("DISABLED_EXTENSIONS").split(" ")
|
||||||
|
+except KeyError:
|
||||||
|
+ DISABLED_MODULE_LIST = list()
|
||||||
|
|
||||||
|
# --list-module-names option used by Tools/scripts/generate_module_names.py
|
||||||
|
LIST_MODULE_NAMES = False
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
@ -0,0 +1,69 @@
|
|||||||
|
From 61af65485f1dade4aa08d0cf2b24082aeda24c51 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Date: Wed, 23 Dec 2015 11:33:14 +0100
|
||||||
|
Subject: [PATCH] Adjust library/header paths for cross-compilation
|
||||||
|
|
||||||
|
When cross-compiling third-party extensions, the get_python_inc() or
|
||||||
|
get_python_lib() can be called, to return the path to headers or
|
||||||
|
libraries. However, they use the sys.prefix of the host Python, which
|
||||||
|
returns incorrect paths when cross-compiling (paths pointing to host
|
||||||
|
headers and libraries).
|
||||||
|
|
||||||
|
In order to fix this, we introduce the _python_sysroot, _python_prefix
|
||||||
|
and _python_exec_prefix variables, that allow to override these
|
||||||
|
values, and get correct header/library paths when cross-compiling
|
||||||
|
third-party Python modules.
|
||||||
|
|
||||||
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Signed-off-by: Adam Duskett <aduskett@gmail.com>
|
||||||
|
Refresh for 3.10.0
|
||||||
|
---
|
||||||
|
Lib/distutils/command/build_ext.py | 5 ++++-
|
||||||
|
Lib/sysconfig.py | 15 +++++++++++----
|
||||||
|
2 files changed, 15 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/Lib/distutils/command/build_ext.py b/Lib/distutils/command/build_ext.py
|
||||||
|
index 1a9bd12..3cf7d67 100644
|
||||||
|
--- a/Lib/distutils/command/build_ext.py
|
||||||
|
+++ b/Lib/distutils/command/build_ext.py
|
||||||
|
@@ -234,7 +234,10 @@ class build_ext(Command):
|
||||||
|
if (sysconfig.get_config_var('Py_ENABLE_SHARED')):
|
||||||
|
if not sysconfig.python_build:
|
||||||
|
# building third party extensions
|
||||||
|
- self.library_dirs.append(sysconfig.get_config_var('LIBDIR'))
|
||||||
|
+ libdir = sysconfig.get_config_var('LIBDIR')
|
||||||
|
+ if "_python_sysroot" in os.environ:
|
||||||
|
+ libdir = os.environ.get("_python_sysroot") + libdir
|
||||||
|
+ self.library_dirs.append(libdir)
|
||||||
|
else:
|
||||||
|
# building python standard extensions
|
||||||
|
self.library_dirs.append('.')
|
||||||
|
diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py
|
||||||
|
index 95b48f6..9fb1956 100644
|
||||||
|
--- a/Lib/sysconfig.py
|
||||||
|
+++ b/Lib/sysconfig.py
|
||||||
|
@@ -123,10 +123,17 @@ _SCHEME_KEYS = ('stdlib', 'platstdlib', 'purelib', 'platlib', 'include',
|
||||||
|
_PY_VERSION = sys.version.split()[0]
|
||||||
|
_PY_VERSION_SHORT = f'{sys.version_info[0]}.{sys.version_info[1]}'
|
||||||
|
_PY_VERSION_SHORT_NO_DOT = f'{sys.version_info[0]}{sys.version_info[1]}'
|
||||||
|
-_PREFIX = os.path.normpath(sys.prefix)
|
||||||
|
-_BASE_PREFIX = os.path.normpath(sys.base_prefix)
|
||||||
|
-_EXEC_PREFIX = os.path.normpath(sys.exec_prefix)
|
||||||
|
-_BASE_EXEC_PREFIX = os.path.normpath(sys.base_exec_prefix)
|
||||||
|
+if "_python_sysroot" in os.environ:
|
||||||
|
+ _sysroot=os.environ.get('_python_sysroot')
|
||||||
|
+ _PREFIX = os.path.normpath(_sysroot + os.environ.get('_python_prefix'))
|
||||||
|
+ _EXEC_PREFIX = os.path.normpath(_sysroot + os.environ.get('_python_exec_prefix'))
|
||||||
|
+ _BASE_PREFIX = _PREFIX
|
||||||
|
+ _BASE_EXEC_PREFIX = _EXEC_PREFIX
|
||||||
|
+else:
|
||||||
|
+ _PREFIX = os.path.normpath(sys.prefix)
|
||||||
|
+ _EXEC_PREFIX = os.path.normpath(sys.exec_prefix)
|
||||||
|
+ _BASE_PREFIX = os.path.normpath(sys.base_prefix)
|
||||||
|
+ _BASE_EXEC_PREFIX = os.path.normpath(sys.base_exec_prefix)
|
||||||
|
_CONFIG_VARS = None
|
||||||
|
_USER_BASE = None
|
||||||
|
|
||||||
|
--
|
||||||
|
2.30.2
|
||||||
|
|
@ -0,0 +1,31 @@
|
|||||||
|
From 60d71e37d167ea89445250be436170a6cfee84e7 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Date: Wed, 23 Dec 2015 11:36:00 +0100
|
||||||
|
Subject: [PATCH] Don't look in /usr/lib/termcap for libraries
|
||||||
|
|
||||||
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
---
|
||||||
|
setup.py | 5 +----
|
||||||
|
1 file changed, 1 insertion(+), 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/setup.py b/setup.py
|
||||||
|
index 66d372a..e632b6f 100644
|
||||||
|
--- a/setup.py
|
||||||
|
+++ b/setup.py
|
||||||
|
@@ -1147,12 +1147,9 @@ class PyBuildExt(build_ext):
|
||||||
|
pass # Issue 7384: Already linked against curses or tinfo.
|
||||||
|
elif curses_library:
|
||||||
|
readline_libs.append(curses_library)
|
||||||
|
- elif self.compiler.find_library_file(self.lib_dirs +
|
||||||
|
- ['/usr/lib/termcap'],
|
||||||
|
- 'termcap'):
|
||||||
|
+ elif self.compiler.find_library_file(self.lib_dirs, 'termcap'):
|
||||||
|
readline_libs.append('termcap')
|
||||||
|
self.add(Extension('readline', ['readline.c'],
|
||||||
|
- library_dirs=['/usr/lib/termcap'],
|
||||||
|
libraries=readline_libs))
|
||||||
|
else:
|
||||||
|
self.missing.append('readline')
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
@ -0,0 +1,37 @@
|
|||||||
|
From f5933b8f973cd11698b52d535a10d0474e49f5a5 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Date: Wed, 23 Dec 2015 11:36:27 +0100
|
||||||
|
Subject: [PATCH] Don't add multiarch paths
|
||||||
|
|
||||||
|
The add_multiarch_paths() function leads, in certain build
|
||||||
|
environments, to the addition of host header paths to the CFLAGS,
|
||||||
|
which is not appropriate for cross-compilation. This patch fixes that
|
||||||
|
by simply removing the call to add_multiarch_paths() when we're
|
||||||
|
cross-compiling.
|
||||||
|
|
||||||
|
Investigation done by David <buildroot-2014@inbox.com>.
|
||||||
|
|
||||||
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
---
|
||||||
|
setup.py | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/setup.py b/setup.py
|
||||||
|
index ec3ba60607..e27620035c 100644
|
||||||
|
--- a/setup.py
|
||||||
|
+++ b/setup.py
|
||||||
|
@@ -830,10 +830,10 @@ class PyBuildExt(build_ext):
|
||||||
|
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')
|
||||||
|
+ self.add_multiarch_paths()
|
||||||
|
# only change this for cross builds for 3.3, issues on Mageia
|
||||||
|
if CROSS_COMPILING:
|
||||||
|
self.add_cross_compiling_paths()
|
||||||
|
- self.add_multiarch_paths()
|
||||||
|
self.add_ldflags_cppflags()
|
||||||
|
|
||||||
|
def init_inc_lib_dirs(self):
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
@ -0,0 +1,30 @@
|
|||||||
|
From 188c0ebfdb71f5252fa7701013b8d1209f28aef7 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Date: Wed, 23 Dec 2015 11:43:24 +0100
|
||||||
|
Subject: [PATCH] Abort on failed module build
|
||||||
|
|
||||||
|
When building a Python module fails, the setup.py script currently
|
||||||
|
doesn't exit with an error, and simply continues. This is not a really
|
||||||
|
nice behavior, so this patch changes setup.py to abort with an error,
|
||||||
|
so that the build issue is clearly noticeable.
|
||||||
|
|
||||||
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
---
|
||||||
|
setup.py | 1 +
|
||||||
|
1 file changed, 1 insertion(+)
|
||||||
|
|
||||||
|
diff --git a/setup.py b/setup.py
|
||||||
|
index e27620035c..d3f0e663f2 100644
|
||||||
|
--- a/setup.py
|
||||||
|
+++ b/setup.py
|
||||||
|
@@ -561,6 +561,7 @@ class PyBuildExt(build_ext):
|
||||||
|
print("Failed to build these modules:")
|
||||||
|
print_three_column(failed)
|
||||||
|
print()
|
||||||
|
+ sys.exit(1)
|
||||||
|
|
||||||
|
if self.failed_on_import:
|
||||||
|
failed = self.failed_on_import[:]
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
@ -0,0 +1,33 @@
|
|||||||
|
From 9e6211b0d6d4610e5fb7d2c7e1152eb7c64d968b Mon Sep 17 00:00:00 2001
|
||||||
|
From: Baruch Siach <baruch@tkos.co.il>
|
||||||
|
Date: Wed, 23 Dec 2015 11:44:02 +0100
|
||||||
|
Subject: [PATCH] Serial ioctl() workaround
|
||||||
|
|
||||||
|
The ioctls.h of some architectures (notably xtensa) references structs from
|
||||||
|
linux/serial.h. Make sure to include this header as well.
|
||||||
|
|
||||||
|
Also, undef TIOCTTYGSTRUCT that require reference to internal kernel tty_struct,
|
||||||
|
but isn't actually referenced in modern kernels.
|
||||||
|
|
||||||
|
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
|
||||||
|
---
|
||||||
|
Modules/termios.c | 2 ++
|
||||||
|
1 file changed, 2 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/Modules/termios.c b/Modules/termios.c
|
||||||
|
index 75e5e52320..eefbddfe69 100644
|
||||||
|
--- a/Modules/termios.c
|
||||||
|
+++ b/Modules/termios.c
|
||||||
|
@@ -15,7 +15,9 @@
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <termios.h>
|
||||||
|
+#include <linux/serial.h>
|
||||||
|
#include <sys/ioctl.h>
|
||||||
|
+#undef TIOCTTYGSTRUCT
|
||||||
|
|
||||||
|
/* HP-UX requires that this be included to pick up MDCD, MCTS, MDSR,
|
||||||
|
* MDTR, MRI, and MRTS (apparently used internally by some things
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
@ -0,0 +1,35 @@
|
|||||||
|
From cb595a591c71e0bf7c63a3706b0be45ac6a642e3 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Christophe Vu-Brugier <cvubrugier@fastmail.fm>
|
||||||
|
Date: Wed, 23 Dec 2015 11:44:30 +0100
|
||||||
|
Subject: [PATCH] Do not adjust the shebang of Python scripts for
|
||||||
|
cross-compilation
|
||||||
|
|
||||||
|
The copy_scripts() method in distutils copies the scripts listed in
|
||||||
|
the setup file and adjusts the first line to refer to the current
|
||||||
|
Python interpreter. When cross-compiling, this means that the adjusted
|
||||||
|
shebang refers to the host Python interpreter.
|
||||||
|
|
||||||
|
This patch modifies copy_scripts() to preserve the shebang when
|
||||||
|
cross-compilation is detected.
|
||||||
|
|
||||||
|
Signed-off-by: Christophe Vu-Brugier <cvubrugier@fastmail.fm>
|
||||||
|
---
|
||||||
|
Lib/distutils/command/build_scripts.py | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/Lib/distutils/command/build_scripts.py b/Lib/distutils/command/build_scripts.py
|
||||||
|
index ccc70e6465..d6d54195c1 100644
|
||||||
|
--- a/Lib/distutils/command/build_scripts.py
|
||||||
|
+++ b/Lib/distutils/command/build_scripts.py
|
||||||
|
@@ -91,7 +91,7 @@ class build_scripts(Command):
|
||||||
|
adjust = True
|
||||||
|
post_interp = match.group(1) or b''
|
||||||
|
|
||||||
|
- if adjust:
|
||||||
|
+ if adjust and not '_python_sysroot' in os.environ:
|
||||||
|
log.info("copying and adjusting %s -> %s", script,
|
||||||
|
self.build_dir)
|
||||||
|
updated_files.append(outfile)
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
@ -0,0 +1,67 @@
|
|||||||
|
From eb51497e4b5799f8ab0277426d3e54414acb9d4b Mon Sep 17 00:00:00 2001
|
||||||
|
From: Peter Korsgaard <peter@korsgaard.com>
|
||||||
|
Date: Thu, 20 Nov 2014 13:24:59 +0100
|
||||||
|
Subject: [PATCH] Misc/python-config.sh.in: ensure sed invocations only match
|
||||||
|
beginning of strings
|
||||||
|
|
||||||
|
The build/real prefix handling using sed breaks if build != real and the
|
||||||
|
standard include / lib directories are used ($prefix/include and $prefix/lib).
|
||||||
|
|
||||||
|
E.G.
|
||||||
|
|
||||||
|
prefix_build="/usr", libdir="$prefix/lib", includedir="$prefix/include".
|
||||||
|
|
||||||
|
If this gets installed with make DESTDIR="/foo" install, then we end up with
|
||||||
|
prefix_real = prefix = "/foo/usr" as expected, but
|
||||||
|
includedir="/foo/foo/usr/include" and libdir="/foo/foo/usr/lib" because of
|
||||||
|
the double sed invocation (prefix is already expanded). Work around it by
|
||||||
|
ensuring we only match the beginning of the string.
|
||||||
|
|
||||||
|
Submitted upstream: http://bugs.python.org/issue22907
|
||||||
|
|
||||||
|
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
|
||||||
|
---
|
||||||
|
Misc/python-config.sh.in | 13 +++++++------
|
||||||
|
1 file changed, 7 insertions(+), 6 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/Misc/python-config.sh.in b/Misc/python-config.sh.in
|
||||||
|
index 2602fe24c0..a1bc3cd5f7 100644
|
||||||
|
--- a/Misc/python-config.sh.in
|
||||||
|
+++ b/Misc/python-config.sh.in
|
||||||
|
@@ -24,18 +24,19 @@ installed_prefix ()
|
||||||
|
echo $RESULT
|
||||||
|
}
|
||||||
|
|
||||||
|
+prefix_build="@prefix@"
|
||||||
|
prefix_real=$(installed_prefix "$0")
|
||||||
|
|
||||||
|
# Use sed to fix paths from their built-to locations to their installed-to
|
||||||
|
# locations. Keep prefix & exec_prefix using their original values in case
|
||||||
|
# they are referenced in other configure variables, to prevent double
|
||||||
|
# substitution, issue #22140.
|
||||||
|
-prefix="@prefix@"
|
||||||
|
-exec_prefix="@exec_prefix@"
|
||||||
|
+prefix=$(echo "$prefix_build" | sed "s#^$prefix_build#$prefix_real#")
|
||||||
|
+exec_prefix=$(echo "$exec_prefix_build" | sed "s#^$exec_prefix_build#$prefix_real#")
|
||||||
|
exec_prefix_real=${prefix_real}
|
||||||
|
-includedir=$(echo "@includedir@" | sed "s#$prefix#$prefix_real#")
|
||||||
|
-libdir=$(echo "@libdir@" | sed "s#$prefix#$prefix_real#")
|
||||||
|
-CFLAGS=$(echo "@CFLAGS@" | sed "s#$prefix#$prefix_real#")
|
||||||
|
+includedir=$(echo "@includedir@" | sed "s#^$prefix_build#$prefix_real#")
|
||||||
|
+libdir=$(echo "@libdir@" | sed "s#^$prefix_build#$prefix_real#")
|
||||||
|
+CFLAGS=$(echo "@CFLAGS@" | sed "s#^$prefix_build#$prefix_real#")
|
||||||
|
VERSION="@VERSION@"
|
||||||
|
LIBM="@LIBM@"
|
||||||
|
LIBC="@LIBC@"
|
||||||
|
@@ -49,7 +50,7 @@ OPT="@OPT@"
|
||||||
|
PY_ENABLE_SHARED="@PY_ENABLE_SHARED@"
|
||||||
|
LDVERSION="@LDVERSION@"
|
||||||
|
LIBDEST=${prefix_real}/lib/python${VERSION}
|
||||||
|
-LIBPL=$(echo "@LIBPL@" | sed "s#$prefix#$prefix_real#")
|
||||||
|
+LIBPL=$(echo "@LIBPL@" | sed "s#^$prefix_build#$prefix_real#")
|
||||||
|
SO="@EXT_SUFFIX@"
|
||||||
|
PYTHONFRAMEWORK="@PYTHONFRAMEWORK@"
|
||||||
|
INCDIR="-I$includedir/python${VERSION}${ABIFLAGS}"
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
@ -0,0 +1,100 @@
|
|||||||
|
From a65e5d3caf8e076d531191164c23c6240461f675 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Date: Wed, 22 Feb 2017 17:07:56 -0800
|
||||||
|
Subject: [PATCH] Add an option to disable pydoc
|
||||||
|
|
||||||
|
It removes 0.5 MB of data from the target plus the pydoc script
|
||||||
|
itself.
|
||||||
|
|
||||||
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
|
||||||
|
[ Andrey Smirnov: ported to Python 3.6 ]
|
||||||
|
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
|
||||||
|
[ Adam Duskett: ported to Python 3.10.0 ]
|
||||||
|
Signed-off-by: Adam Duskett <aduskett@gmail.com>
|
||||||
|
---
|
||||||
|
Makefile.pre.in | 7 ++++++-
|
||||||
|
configure.ac | 6 ++++++
|
||||||
|
setup.py | 9 +++++++--
|
||||||
|
3 files changed, 19 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/Makefile.pre.in b/Makefile.pre.in
|
||||||
|
index c0d5511..32b3df7 100644
|
||||||
|
--- a/Makefile.pre.in
|
||||||
|
+++ b/Makefile.pre.in
|
||||||
|
@@ -1391,7 +1391,9 @@ bininstall: altbininstall
|
||||||
|
-rm -f $(DESTDIR)$(BINDIR)/idle3
|
||||||
|
(cd $(DESTDIR)$(BINDIR); $(LN) -s idle$(VERSION) idle3)
|
||||||
|
-rm -f $(DESTDIR)$(BINDIR)/pydoc3
|
||||||
|
+ifeq (@PYDOC@,yes)
|
||||||
|
(cd $(DESTDIR)$(BINDIR); $(LN) -s pydoc$(VERSION) pydoc3)
|
||||||
|
+endif
|
||||||
|
-rm -f $(DESTDIR)$(BINDIR)/2to3
|
||||||
|
(cd $(DESTDIR)$(BINDIR); $(LN) -s 2to3-$(VERSION) 2to3)
|
||||||
|
if test "x$(LIPO_32BIT_FLAGS)" != "x" ; then \
|
||||||
|
@@ -1442,7 +1444,6 @@ LIBSUBDIRS= asyncio \
|
||||||
|
json \
|
||||||
|
logging \
|
||||||
|
multiprocessing multiprocessing/dummy \
|
||||||
|
- pydoc_data \
|
||||||
|
re \
|
||||||
|
site-packages \
|
||||||
|
tkinter \
|
||||||
|
@@ -1530,6 +1531,10 @@ TESTSUBDIRS= ctypes/test \
|
||||||
|
tkinter/test/test_ttk \
|
||||||
|
unittest/test unittest/test/testmock
|
||||||
|
|
||||||
|
+ifeq (@PYDOC@,yes)
|
||||||
|
+LIBSUBDIRS += pydoc_data
|
||||||
|
+endif
|
||||||
|
+
|
||||||
|
TEST_MODULES=@TEST_MODULES@
|
||||||
|
libinstall: build_all $(srcdir)/Modules/xxmodule.c
|
||||||
|
@for i in $(SCRIPTDIR) $(LIBDEST); \
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index 083a12d..9079531 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -3373,6 +3373,12 @@ if test "$posix_threads" = "yes"; then
|
||||||
|
AC_CHECK_FUNCS(pthread_getcpuclockid)
|
||||||
|
fi
|
||||||
|
|
||||||
|
+AC_SUBST(PYDOC)
|
||||||
|
+
|
||||||
|
+AC_ARG_ENABLE(pydoc,
|
||||||
|
+ AS_HELP_STRING([--disable-pydoc], [disable pydoc]),
|
||||||
|
+ [ PYDOC="${enableval}" ], [ PYDOC=yes ])
|
||||||
|
+
|
||||||
|
|
||||||
|
# Check for enable-ipv6
|
||||||
|
AH_TEMPLATE(ENABLE_IPV6, [Define if --enable-ipv6 is specified])
|
||||||
|
diff --git a/setup.py b/setup.py
|
||||||
|
index d00d389..d23f148 100644
|
||||||
|
--- a/setup.py
|
||||||
|
+++ b/setup.py
|
||||||
|
@@ -2721,6 +2721,12 @@ def main():
|
||||||
|
# turn off warnings when deprecated modules are imported
|
||||||
|
import warnings
|
||||||
|
warnings.filterwarnings("ignore",category=DeprecationWarning)
|
||||||
|
+
|
||||||
|
+ scripts = ['Tools/scripts/idle3', 'Tools/scripts/2to3',
|
||||||
|
+ 'Lib/smtpd.py']
|
||||||
|
+ if not '--disable-pydoc' in sysconfig.get_config_var("CONFIG_ARGS"):
|
||||||
|
+ scripts += [ 'Tools/scripts/pydoc3' ]
|
||||||
|
+
|
||||||
|
setup(# PyPI Metadata (PEP 301)
|
||||||
|
name = "Python",
|
||||||
|
version = sys.version.split()[0],
|
||||||
|
@@ -2746,8 +2752,7 @@ def main():
|
||||||
|
# If you change the scripts installed here, you also need to
|
||||||
|
# check the PyBuildScripts command above, and change the links
|
||||||
|
# created by the bininstall target in Makefile.pre.in
|
||||||
|
- scripts = ["Tools/scripts/pydoc3", "Tools/scripts/idle3",
|
||||||
|
- "Tools/scripts/2to3"]
|
||||||
|
+ scripts = scripts
|
||||||
|
)
|
||||||
|
|
||||||
|
# --install-platlib
|
||||||
|
--
|
||||||
|
2.30.2
|
||||||
|
|
@ -0,0 +1,119 @@
|
|||||||
|
From f034b1b0f33a7bd4dde23f0bc1fa8e00e3518c9d Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Date: Wed, 22 Feb 2017 17:15:31 -0800
|
||||||
|
Subject: [PATCH] Add an option to disable lib2to3
|
||||||
|
|
||||||
|
lib2to3 is a library to convert Python 2.x code to Python 3.x. As
|
||||||
|
such, it is probably not very useful on embedded system targets.
|
||||||
|
|
||||||
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
|
||||||
|
[ Andrey Smirnov: ported to Python 3.6 ]
|
||||||
|
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
|
||||||
|
[ Adam Duskett: ported to Python 3.10.0 ]
|
||||||
|
Signed-off-by: Adam Duskett <aduskett@gmail.com>
|
||||||
|
---
|
||||||
|
Makefile.pre.in | 17 ++++++++++++-----
|
||||||
|
configure.ac | 5 +++++
|
||||||
|
setup.py | 6 +++---
|
||||||
|
3 files changed, 20 insertions(+), 8 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/Makefile.pre.in b/Makefile.pre.in
|
||||||
|
index 28cf88e..63fa9fb 100644
|
||||||
|
--- a/Makefile.pre.in
|
||||||
|
+++ b/Makefile.pre.in
|
||||||
|
@@ -1395,7 +1395,9 @@ ifeq (@PYDOC@,yes)
|
||||||
|
(cd $(DESTDIR)$(BINDIR); $(LN) -s pydoc$(VERSION) pydoc3)
|
||||||
|
endif
|
||||||
|
-rm -f $(DESTDIR)$(BINDIR)/2to3
|
||||||
|
+ifeq (@LIB2TO3@,yes)
|
||||||
|
(cd $(DESTDIR)$(BINDIR); $(LN) -s 2to3-$(VERSION) 2to3)
|
||||||
|
+endif
|
||||||
|
if test "x$(LIPO_32BIT_FLAGS)" != "x" ; then \
|
||||||
|
rm -f $(DESTDIR)$(BINDIR)/python3-32$(EXE); \
|
||||||
|
(cd $(DESTDIR)$(BINDIR); $(LN) -s python$(VERSION)-32$(EXE) python3-32$(EXE)) \
|
||||||
|
@@ -1441,7 +1443,6 @@ LIBSUBDIRS= asyncio \
|
||||||
|
idlelib idlelib/Icons \
|
||||||
|
importlib importlib/resources importlib/metadata \
|
||||||
|
json \
|
||||||
|
- lib2to3 lib2to3/fixes lib2to3/pgen2 \
|
||||||
|
logging \
|
||||||
|
multiprocessing multiprocessing/dummy \
|
||||||
|
re \
|
||||||
|
@@ -1458,10 +1459,6 @@ LIBSUBDIRS= asyncio \
|
||||||
|
TESTSUBDIRS= ctypes/test \
|
||||||
|
distutils/tests \
|
||||||
|
idlelib/idle_test \
|
||||||
|
- lib2to3/tests \
|
||||||
|
- lib2to3/tests/data \
|
||||||
|
- lib2to3/tests/data/fixers \
|
||||||
|
- lib2to3/tests/data/fixers/myfixes \
|
||||||
|
test test/audiodata \
|
||||||
|
test/capath test/cjkencodings \
|
||||||
|
test/data test/decimaltestdata \
|
||||||
|
@@ -1535,6 +1532,14 @@ ifeq (@PYDOC@,yes)
|
||||||
|
LIBSUBDIRS += pydoc_data
|
||||||
|
endif
|
||||||
|
|
||||||
|
+ifeq (@LIB2TO3@,yes)
|
||||||
|
+LIBSUBDIRS += lib2to3 lib2to3/fixes lib2to3/pgen2
|
||||||
|
+TESTSUBDIRS += lib2to3/tests \
|
||||||
|
+ lib2to3/tests/data \
|
||||||
|
+ lib2to3/tests/data/fixers \
|
||||||
|
+ lib2to3/tests/data/fixers/myfixes
|
||||||
|
+endif
|
||||||
|
+
|
||||||
|
TEST_MODULES=@TEST_MODULES@
|
||||||
|
libinstall: build_all $(srcdir)/Modules/xxmodule.c
|
||||||
|
@for i in $(SCRIPTDIR) $(LIBDEST); \
|
||||||
|
@@ -1637,10 +1642,12 @@ ifeq (@PYC_BUILD@,yes)
|
||||||
|
-j0 -d $(LIBDEST)/site-packages -f \
|
||||||
|
-x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
|
||||||
|
endif
|
||||||
|
+ifeq (@LIB2TO3@,yes)
|
||||||
|
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
||||||
|
$(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/Grammar.txt
|
||||||
|
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
||||||
|
$(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/PatternGrammar.txt
|
||||||
|
+endif
|
||||||
|
|
||||||
|
# bpo-21536: Misc/python-config.sh is generated in the build directory
|
||||||
|
# from $(srcdir)Misc/python-config.sh.in.
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index 9079531..34c2ba9 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -6014,6 +6014,11 @@ else
|
||||||
|
fi
|
||||||
|
AC_SUBST(TEST_MODULES)
|
||||||
|
|
||||||
|
+AC_SUBST(LIB2TO3)
|
||||||
|
+
|
||||||
|
+AC_ARG_ENABLE(lib2to3,
|
||||||
|
+ AS_HELP_STRING([--disable-lib2to3], [disable lib2to3]),
|
||||||
|
+ [ LIB2TO3="${enableval}" ], [ LIB2TO3=yes ])
|
||||||
|
|
||||||
|
# generate output files
|
||||||
|
AC_CONFIG_FILES(Makefile.pre Misc/python.pc Misc/python-embed.pc Misc/python-config.sh)
|
||||||
|
diff --git a/setup.py b/setup.py
|
||||||
|
index d23f148..663fd44 100644
|
||||||
|
--- a/setup.py
|
||||||
|
+++ b/setup.py
|
||||||
|
@@ -2722,11 +2722,11 @@ def main():
|
||||||
|
import warnings
|
||||||
|
warnings.filterwarnings("ignore",category=DeprecationWarning)
|
||||||
|
|
||||||
|
- scripts = ['Tools/scripts/idle3', 'Tools/scripts/2to3',
|
||||||
|
- 'Lib/smtpd.py']
|
||||||
|
+ scripts = ['Tools/scripts/idle3', 'Lib/smtpd.py']
|
||||||
|
if not '--disable-pydoc' in sysconfig.get_config_var("CONFIG_ARGS"):
|
||||||
|
scripts += [ 'Tools/scripts/pydoc3' ]
|
||||||
|
-
|
||||||
|
+ if not '--disable-lib2to3' in sysconfig.get_config_var("CONFIG_ARGS"):
|
||||||
|
+ scripts += [ 'Tools/scripts/2to3' ]
|
||||||
|
setup(# PyPI Metadata (PEP 301)
|
||||||
|
name = "Python",
|
||||||
|
version = sys.version.split()[0],
|
||||||
|
--
|
||||||
|
2.30.2
|
||||||
|
|
@ -0,0 +1,63 @@
|
|||||||
|
From dd2722dec08eb9c72c36313e93661eeca3ad64d8 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Date: Wed, 22 Feb 2017 17:20:45 -0800
|
||||||
|
Subject: [PATCH] Add option to disable the sqlite3 module
|
||||||
|
|
||||||
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
|
||||||
|
[ Andrey Smirnov: ported to Python 3.6 ]
|
||||||
|
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
|
||||||
|
[ Adam Duskett: ported to Python 3.10.0 ]
|
||||||
|
Signed-off-by: Adam Duskett <aduskett@gmail.com>
|
||||||
|
---
|
||||||
|
Makefile.pre.in | 7 +++++--
|
||||||
|
configure.ac | 9 +++++++++
|
||||||
|
2 files changed, 14 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/Makefile.pre.in b/Makefile.pre.in
|
||||||
|
index 5847029..5628860 100644
|
||||||
|
--- a/Makefile.pre.in
|
||||||
|
+++ b/Makefile.pre.in
|
||||||
|
@@ -1920,7 +1920,6 @@ LIBSUBDIRS= asyncio \
|
||||||
|
logging \
|
||||||
|
multiprocessing multiprocessing/dummy \
|
||||||
|
site-packages \
|
||||||
|
- sqlite3 \
|
||||||
|
tkinter \
|
||||||
|
turtledemo \
|
||||||
|
unittest \
|
||||||
|
@@ -2021,6 +2020,11 @@ TESTSUBDIRS += lib2to3/tests \
|
||||||
|
lib2to3/tests/data/fixers/myfixes
|
||||||
|
endif
|
||||||
|
|
||||||
|
+ifeq (@SQLITE3@,yes)
|
||||||
|
+LIBSUBDIRS += sqlite3
|
||||||
|
+TESTSUBDIRS += sqlite3/test
|
||||||
|
+endif
|
||||||
|
+
|
||||||
|
TEST_MODULES=@TEST_MODULES@
|
||||||
|
libinstall: build_all $(srcdir)/Modules/xxmodule.c
|
||||||
|
@for i in $(SCRIPTDIR) $(LIBDEST); \
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index 34c2ba9..dfee472 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -3373,6 +3373,15 @@ if test "$posix_threads" = "yes"; then
|
||||||
|
AC_CHECK_FUNCS(pthread_getcpuclockid)
|
||||||
|
fi
|
||||||
|
|
||||||
|
+AC_SUBST(SQLITE3)
|
||||||
|
+AC_ARG_ENABLE(sqlite3,
|
||||||
|
+ AS_HELP_STRING([--disable-sqlite3], [disable sqlite3]),
|
||||||
|
+ [ SQLITE3="${enableval}" ], [ SQLITE3=yes ])
|
||||||
|
+
|
||||||
|
+if test "$SQLITE3" = "no" ; then
|
||||||
|
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _sqlite3"
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
AC_SUBST(PYDOC)
|
||||||
|
|
||||||
|
AC_ARG_ENABLE(pydoc,
|
||||||
|
--
|
||||||
|
2.30.2
|
||||||
|
|
@ -0,0 +1,74 @@
|
|||||||
|
From ad6b66b34f71ff6b60b3be5f6fd3e781cdeecd59 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Date: Wed, 22 Feb 2017 17:23:42 -0800
|
||||||
|
Subject: [PATCH] Add an option to disable the tk module
|
||||||
|
|
||||||
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
|
||||||
|
[ Andrey Smirnov: ported to Python 3.6 ]
|
||||||
|
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
|
||||||
|
[ Adam Duskett: ported to Python 3.10.0 ]
|
||||||
|
Signed-off-by: Adam Duskett <aduskett@gmail.com>
|
||||||
|
---
|
||||||
|
Makefile.pre.in | 10 +++++++---
|
||||||
|
configure.ac | 9 +++++++++
|
||||||
|
2 files changed, 16 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/Makefile.pre.in b/Makefile.pre.in
|
||||||
|
index 5628860..c968113 100644
|
||||||
|
--- a/Makefile.pre.in
|
||||||
|
+++ b/Makefile.pre.in
|
||||||
|
@@ -1446,7 +1446,6 @@ LIBSUBDIRS= asyncio \
|
||||||
|
multiprocessing multiprocessing/dummy \
|
||||||
|
re \
|
||||||
|
site-packages \
|
||||||
|
- tkinter \
|
||||||
|
tomllib \
|
||||||
|
turtledemo \
|
||||||
|
unittest \
|
||||||
|
@@ -1522,8 +1521,6 @@ TESTSUBDIRS= ctypes/test \
|
||||||
|
test/tracedmodules \
|
||||||
|
test/xmltestdata test/xmltestdata/c14n-20 \
|
||||||
|
test/ziptestdata \
|
||||||
|
- tkinter/test tkinter/test/test_tkinter \
|
||||||
|
- tkinter/test/test_ttk \
|
||||||
|
unittest/test unittest/test/testmock
|
||||||
|
|
||||||
|
ifeq (@PYDOC@,yes)
|
||||||
|
@@ -1543,6 +1540,13 @@ LIBSUBDIRS += sqlite3
|
||||||
|
TESTSUBDIRS += sqlite3/test
|
||||||
|
endif
|
||||||
|
|
||||||
|
+ifeq (@TK@,yes)
|
||||||
|
+LIBSUBDIRS += tkinter
|
||||||
|
+TESTSUBDIRS += tkinter/test tkinter/test/test_tkinter \
|
||||||
|
+ tkinter/test/test_ttk
|
||||||
|
+endif
|
||||||
|
+
|
||||||
|
+
|
||||||
|
TEST_MODULES=@TEST_MODULES@
|
||||||
|
libinstall: build_all $(srcdir)/Modules/xxmodule.c
|
||||||
|
@for i in $(SCRIPTDIR) $(LIBDEST); \
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index dfee472..dc76dff 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -3382,6 +3382,15 @@ if test "$SQLITE3" = "no" ; then
|
||||||
|
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _sqlite3"
|
||||||
|
fi
|
||||||
|
|
||||||
|
+AC_SUBST(TK)
|
||||||
|
+AC_ARG_ENABLE(tk,
|
||||||
|
+ AS_HELP_STRING([--disable-tk], [disable tk]),
|
||||||
|
+ [ TK="${enableval}" ], [ TK=yes ])
|
||||||
|
+
|
||||||
|
+if test "$TK" = "no"; then
|
||||||
|
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _tkinter"
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
AC_SUBST(PYDOC)
|
||||||
|
|
||||||
|
AC_ARG_ENABLE(pydoc,
|
||||||
|
--
|
||||||
|
2.30.2
|
||||||
|
|
@ -0,0 +1,61 @@
|
|||||||
|
From 962deb43f5f340a8472d432ae8e6d61186f9040e Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Date: Wed, 22 Feb 2017 17:31:51 -0800
|
||||||
|
Subject: [PATCH] Add an option to disable the curses module
|
||||||
|
|
||||||
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
|
||||||
|
[ Andrey Smirnov: ported to Python 3.6 ]
|
||||||
|
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
|
||||||
|
[ Adam Duskett: ported to Python 3.10.0 ]
|
||||||
|
Signed-off-by: Adam Duskett <aduskett@gmail.com>
|
||||||
|
---
|
||||||
|
Makefile.pre.in | 4 +++-
|
||||||
|
configure.ac | 9 +++++++++
|
||||||
|
2 files changed, 12 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/Makefile.pre.in b/Makefile.pre.in
|
||||||
|
index c968113..f89f155 100644
|
||||||
|
--- a/Makefile.pre.in
|
||||||
|
+++ b/Makefile.pre.in
|
||||||
|
@@ -1432,7 +1432,6 @@ LIBSUBDIRS= asyncio \
|
||||||
|
concurrent concurrent/futures \
|
||||||
|
csv \
|
||||||
|
ctypes ctypes/macholib \
|
||||||
|
- curses \
|
||||||
|
dbm \
|
||||||
|
distutils distutils/command \
|
||||||
|
email email/mime \
|
||||||
|
@@ -1546,6 +1545,9 @@ TESTSUBDIRS += tkinter/test tkinter/test/test_tkinter \
|
||||||
|
tkinter/test/test_ttk
|
||||||
|
endif
|
||||||
|
|
||||||
|
+ifeq (@CURSES@,yes)
|
||||||
|
+LIBSUBDIRS += curses
|
||||||
|
+endif
|
||||||
|
|
||||||
|
TEST_MODULES=@TEST_MODULES@
|
||||||
|
libinstall: build_all $(srcdir)/Modules/xxmodule.c
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index dc76dff..4f1cda5 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -3391,6 +3391,15 @@ if test "$TK" = "no"; then
|
||||||
|
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _tkinter"
|
||||||
|
fi
|
||||||
|
|
||||||
|
+AC_SUBST(CURSES)
|
||||||
|
+AC_ARG_ENABLE(curses,
|
||||||
|
+ AS_HELP_STRING([--disable-curses], [disable curses]),
|
||||||
|
+ [ CURSES="${enableval}" ], [ CURSES=yes ])
|
||||||
|
+
|
||||||
|
+if test "$CURSES" = "no"; then
|
||||||
|
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _curses _curses_panel"
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
AC_SUBST(PYDOC)
|
||||||
|
|
||||||
|
AC_ARG_ENABLE(pydoc,
|
||||||
|
--
|
||||||
|
2.30.2
|
||||||
|
|
@ -0,0 +1,79 @@
|
|||||||
|
From 7e0e7dc25f50acd6922493ae620ee5cbf107a79a Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Date: Wed, 22 Feb 2017 17:40:45 -0800
|
||||||
|
Subject: [PATCH] Add an option to disable expat
|
||||||
|
|
||||||
|
This patch replaces the existing --with-system-expat option with a
|
||||||
|
--with-expat={system,builtin,none} option, which allows to tell Python
|
||||||
|
whether we want to use the system expat (already installed), the expat
|
||||||
|
builtin the Python sources, or no expat at all (which disables the
|
||||||
|
installation of XML modules).
|
||||||
|
|
||||||
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
|
||||||
|
[ Andrey Smirnov: ported to Python 3.6 ]
|
||||||
|
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
|
||||||
|
[ Adam Duskett: ported to Python 3.10.0 ]
|
||||||
|
Signed-off-by: Adam Duskett <aduskett@gmail.com>
|
||||||
|
---
|
||||||
|
Makefile.pre.in | 5 ++++-
|
||||||
|
configure.ac | 18 +++++++++++++-----
|
||||||
|
setup.py | 2 +-
|
||||||
|
3 files changed, 18 insertions(+), 7 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/Makefile.pre.in b/Makefile.pre.in
|
||||||
|
index f89f155..08c5e8a 100644
|
||||||
|
--- a/Makefile.pre.in
|
||||||
|
+++ b/Makefile.pre.in
|
||||||
|
@@ -1450,7 +1450,6 @@ LIBSUBDIRS= asyncio \
|
||||||
|
urllib \
|
||||||
|
venv venv/scripts venv/scripts/common venv/scripts/posix \
|
||||||
|
wsgiref \
|
||||||
|
- $(XMLLIBSUBDIRS) \
|
||||||
|
xmlrpc \
|
||||||
|
zoneinfo
|
||||||
|
TESTSUBDIRS= ctypes/test \
|
||||||
|
@@ -1549,6 +1548,10 @@ ifeq (@CURSES@,yes)
|
||||||
|
LIBSUBDIRS += curses
|
||||||
|
endif
|
||||||
|
|
||||||
|
+ifeq (@EXPAT@,yes)
|
||||||
|
+LIBSUBDIRS += $(XMLLIBSUBDIRS)
|
||||||
|
+endif
|
||||||
|
+
|
||||||
|
TEST_MODULES=@TEST_MODULES@
|
||||||
|
libinstall: build_all $(srcdir)/Modules/xxmodule.c
|
||||||
|
@for i in $(SCRIPTDIR) $(LIBDEST); \
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index 4f1cda5..e99a174 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -3094,13 +3094,21 @@ PKG_PROG_PKG_CONFIG
|
||||||
|
AC_SUBST(DISABLED_EXTENSIONS)
|
||||||
|
|
||||||
|
# Check for use of the system expat library
|
||||||
|
-AC_MSG_CHECKING(for --with-system-expat)
|
||||||
|
-AC_ARG_WITH(system_expat,
|
||||||
|
- AS_HELP_STRING([--with-system-expat], [build pyexpat module using an installed expat library, see Doc/library/pyexpat.rst (default is no)]),
|
||||||
|
+AC_MSG_CHECKING(for --with-expat)
|
||||||
|
+AC_ARG_WITH(expat,
|
||||||
|
+ AS_HELP_STRING([--with-expat], [select which expat version to use: system, builtin, none]),
|
||||||
|
[],
|
||||||
|
- [with_system_expat="no"])
|
||||||
|
+ [with_expat="builtin"])
|
||||||
|
|
||||||
|
-AC_MSG_RESULT($with_system_expat)
|
||||||
|
+AC_MSG_RESULT($with_expat)
|
||||||
|
+
|
||||||
|
+if test "$with_expat" != "none"; then
|
||||||
|
+ EXPAT=yes
|
||||||
|
+else
|
||||||
|
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} pyexpat"
|
||||||
|
+ EXPAT=no
|
||||||
|
+fi
|
||||||
|
+AC_SUBST(EXPAT)
|
||||||
|
|
||||||
|
# Check for use of the system libffi library
|
||||||
|
AC_MSG_CHECKING(for --with-system-ffi)
|
||||||
|
--
|
||||||
|
2.30.2
|
@ -0,0 +1,30 @@
|
|||||||
|
From 2c0d31bb91fc7f94283c3ab632925fbbe24e94d6 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Date: Wed, 23 Dec 2015 11:49:55 +0100
|
||||||
|
Subject: [PATCH] Add an option to disable CJK codecs
|
||||||
|
|
||||||
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
---
|
||||||
|
configure.ac | 6 ++++++
|
||||||
|
1 file changed, 6 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index 9ef0ecd42f..18e6fd70a0 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -3390,6 +3390,12 @@ if test "$SQLITE3" = "no" ; then
|
||||||
|
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _sqlite3"
|
||||||
|
fi
|
||||||
|
|
||||||
|
+AC_ARG_ENABLE(codecs-cjk,
|
||||||
|
+ AS_HELP_STRING([--disable-codecs-cjk], [disable CJK codecs]),
|
||||||
|
+ [ if test "$enableval" = "no"; then
|
||||||
|
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _codecs_kr _codecs_jp _codecs_cn _codecs_tw _codecs_hk _codecs_iso2022"
|
||||||
|
+ fi])
|
||||||
|
+
|
||||||
|
AC_SUBST(TK)
|
||||||
|
AC_ARG_ENABLE(tk,
|
||||||
|
AS_HELP_STRING([--disable-tk], [disable tk]),
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
@ -0,0 +1,33 @@
|
|||||||
|
From 2041d0c8dba87991edaf088b16e37b5189a3466d Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Date: Wed, 23 Dec 2015 11:50:11 +0100
|
||||||
|
Subject: [PATCH] Add an option to disable NIS
|
||||||
|
|
||||||
|
NIS is not necessarily available in uClibc, so we need an option to
|
||||||
|
not compile support for it.
|
||||||
|
|
||||||
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
---
|
||||||
|
configure.ac | 6 ++++++
|
||||||
|
1 file changed, 6 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index 18e6fd70a0..46d2a8131e 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -3396,6 +3396,12 @@ AC_ARG_ENABLE(codecs-cjk,
|
||||||
|
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _codecs_kr _codecs_jp _codecs_cn _codecs_tw _codecs_hk _codecs_iso2022"
|
||||||
|
fi])
|
||||||
|
|
||||||
|
+AC_ARG_ENABLE(nis,
|
||||||
|
+ AS_HELP_STRING([--disable-nis], [disable NIS]),
|
||||||
|
+ [ if test "$enableval" = "no"; then
|
||||||
|
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} nis"
|
||||||
|
+ fi])
|
||||||
|
+
|
||||||
|
AC_SUBST(TK)
|
||||||
|
AC_ARG_ENABLE(tk,
|
||||||
|
AS_HELP_STRING([--disable-tk], [disable tk]),
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
@ -0,0 +1,30 @@
|
|||||||
|
From dd82a401ff6ba4ba116bf4d520e981a1808ed443 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Date: Wed, 23 Dec 2015 11:50:27 +0100
|
||||||
|
Subject: [PATCH] Add an option to disable unicodedata
|
||||||
|
|
||||||
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
---
|
||||||
|
configure.ac | 6 ++++++
|
||||||
|
1 file changed, 6 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index 46d2a8131e..5844e3b73f 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -3402,6 +3402,12 @@ AC_ARG_ENABLE(nis,
|
||||||
|
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} nis"
|
||||||
|
fi])
|
||||||
|
|
||||||
|
+AC_ARG_ENABLE(unicodedata,
|
||||||
|
+ AS_HELP_STRING([--disable-unicodedata], [disable unicodedata]),
|
||||||
|
+ [ if test "$enableval" = "no"; then
|
||||||
|
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} unicodedata"
|
||||||
|
+ fi])
|
||||||
|
+
|
||||||
|
AC_SUBST(TK)
|
||||||
|
AC_ARG_ENABLE(tk,
|
||||||
|
AS_HELP_STRING([--disable-tk], [disable tk]),
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
@ -0,0 +1,92 @@
|
|||||||
|
From f1b15834045d0641c43014b970721df066fa71f7 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Maxime Ripard <maxime.ripard@free-electrons.com>
|
||||||
|
Date: Wed, 22 Feb 2017 17:45:14 -0800
|
||||||
|
Subject: [PATCH] Add an option to disable IDLE
|
||||||
|
|
||||||
|
IDLE is an IDE embedded into python, written using Tk, so it doesn't make
|
||||||
|
much sense to have it into our build.
|
||||||
|
|
||||||
|
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
|
||||||
|
[ Andrey Smirnov: ported to Python 3.6 ]
|
||||||
|
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
|
||||||
|
[ Adam Duskett: ported to Python 3.10.0 ]
|
||||||
|
Signed-off-by: Adam Duskett <aduskett@gmail.com>
|
||||||
|
---
|
||||||
|
Makefile.pre.in | 7 ++++++-
|
||||||
|
configure.ac | 6 ++++++
|
||||||
|
setup.py | 5 ++++-
|
||||||
|
3 files changed, 16 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/Makefile.pre.in b/Makefile.pre.in
|
||||||
|
index 08c5e8a..461c5e3 100644
|
||||||
|
--- a/Makefile.pre.in
|
||||||
|
+++ b/Makefile.pre.in
|
||||||
|
@@ -1389,7 +1389,9 @@ bininstall: altbininstall
|
||||||
|
-rm -f $(DESTDIR)$(LIBPC)/python3-embed.pc
|
||||||
|
(cd $(DESTDIR)$(LIBPC); $(LN) -s python-$(VERSION)-embed.pc python3-embed.pc)
|
||||||
|
-rm -f $(DESTDIR)$(BINDIR)/idle3
|
||||||
|
+ifeq (@IDLE@,yes)
|
||||||
|
(cd $(DESTDIR)$(BINDIR); $(LN) -s idle$(VERSION) idle3)
|
||||||
|
+endif
|
||||||
|
-rm -f $(DESTDIR)$(BINDIR)/pydoc3
|
||||||
|
ifeq (@PYDOC@,yes)
|
||||||
|
(cd $(DESTDIR)$(BINDIR); $(LN) -s pydoc$(VERSION) pydoc3)
|
||||||
|
@@ -1439,7 +1441,6 @@ LIBSUBDIRS= asyncio \
|
||||||
|
ensurepip ensurepip/_bundled \
|
||||||
|
html \
|
||||||
|
http \
|
||||||
|
- idlelib idlelib/Icons \
|
||||||
|
importlib importlib/resources importlib/metadata \
|
||||||
|
json \
|
||||||
|
logging \
|
||||||
|
@@ -1552,6 +1553,10 @@ ifeq (@EXPAT@,yes)
|
||||||
|
LIBSUBDIRS += $(XMLLIBSUBDIRS)
|
||||||
|
endif
|
||||||
|
|
||||||
|
+ifeq (@IDLE@,yes)
|
||||||
|
+LIBSUBDIRS += idlelib idlelib/Icons
|
||||||
|
+endif
|
||||||
|
+
|
||||||
|
TEST_MODULES=@TEST_MODULES@
|
||||||
|
libinstall: build_all $(srcdir)/Modules/xxmodule.c
|
||||||
|
@for i in $(SCRIPTDIR) $(LIBDEST); \
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index e99a174..baaa743 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -6073,6 +6073,12 @@ AC_ARG_ENABLE(lib2to3,
|
||||||
|
AS_HELP_STRING([--disable-lib2to3], [disable lib2to3]),
|
||||||
|
[ LIB2TO3="${enableval}" ], [ LIB2TO3=yes ])
|
||||||
|
|
||||||
|
+AC_SUBST(IDLE)
|
||||||
|
+
|
||||||
|
+AC_ARG_ENABLE(idle3,
|
||||||
|
+ AS_HELP_STRING([--disable-idle3], [disable idle3 IDE]),
|
||||||
|
+ [ IDLE="${enableval}" ], [ IDLE=yes ])
|
||||||
|
+
|
||||||
|
# generate output files
|
||||||
|
AC_CONFIG_FILES(Makefile.pre Misc/python.pc Misc/python-embed.pc Misc/python-config.sh)
|
||||||
|
AC_CONFIG_FILES([Modules/ld_so_aix], [chmod +x Modules/ld_so_aix])
|
||||||
|
diff --git a/setup.py b/setup.py
|
||||||
|
index e30ed52..4dff249 100644
|
||||||
|
--- a/setup.py
|
||||||
|
+++ b/setup.py
|
||||||
|
@@ -2722,11 +2722,14 @@ def main():
|
||||||
|
import warnings
|
||||||
|
warnings.filterwarnings("ignore",category=DeprecationWarning)
|
||||||
|
|
||||||
|
- scripts = ['Tools/scripts/idle3', 'Lib/smtpd.py']
|
||||||
|
+ scripts = [ 'Lib/smtpd.py']
|
||||||
|
if not '--disable-pydoc' in sysconfig.get_config_var("CONFIG_ARGS"):
|
||||||
|
scripts += [ 'Tools/scripts/pydoc3' ]
|
||||||
|
if not '--disable-lib2to3' in sysconfig.get_config_var("CONFIG_ARGS"):
|
||||||
|
scripts += [ 'Tools/scripts/2to3' ]
|
||||||
|
+ if not '--disable-idle3' in sysconfig.get_config_var("CONFIG_ARGS"):
|
||||||
|
+ scripts += [ 'Tools/scripts/idle3' ]
|
||||||
|
+
|
||||||
|
setup(# PyPI Metadata (PEP 301)
|
||||||
|
name = "Python",
|
||||||
|
version = sys.version.split()[0],
|
||||||
|
--
|
||||||
|
2.30.2
|
||||||
|
|
@ -0,0 +1,52 @@
|
|||||||
|
From d5fe81cbd51da2a84ed89d1e4c80d921d4efce26 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Date: Wed, 23 Dec 2015 11:51:31 +0100
|
||||||
|
Subject: [PATCH] Add an option to disable decimal
|
||||||
|
|
||||||
|
This patch replaces the existing --with-system-libmpdec option with a
|
||||||
|
--with-libmpdec={system,builtin,none} option, which allows to tell
|
||||||
|
Python whether we want to use the system libmpdec (already installed),
|
||||||
|
the libmpdec builtin the Python sources, or no libmpdec at all.
|
||||||
|
|
||||||
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
[aduskett@gmail.com: Update for python 3.7.0]
|
||||||
|
Signed-off-by: Adam Duskett <aduskett@gmail.com>
|
||||||
|
[james.hilliard1@gmail.com: adapt to python 3.9]
|
||||||
|
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
|
||||||
|
---
|
||||||
|
configure.ac | 17 ++++++++++++-----
|
||||||
|
setup.py | 2 +-
|
||||||
|
2 files changed, 13 insertions(+), 6 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index 7bd4623ccd..e513ef6a20 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -3145,12 +3145,19 @@ fi
|
||||||
|
AC_SUBST(LIBFFI_INCLUDEDIR)
|
||||||
|
|
||||||
|
# Check for use of the system libmpdec library
|
||||||
|
-AC_MSG_CHECKING(for --with-system-libmpdec)
|
||||||
|
-AC_ARG_WITH(system_libmpdec,
|
||||||
|
- AS_HELP_STRING([--with-system-libmpdec], [build _decimal module using an installed libmpdec library, see Doc/library/decimal.rst (default is no)]),
|
||||||
|
+AC_MSG_CHECKING(for --with-libmpdec)
|
||||||
|
+AC_ARG_WITH(libmpdec,
|
||||||
|
+ AS_HELP_STRING([--with-libmpdec], [select which libmpdec version to use: system, builtin, none]),
|
||||||
|
[],
|
||||||
|
- [with_system_libmpdec="no"])
|
||||||
|
+ [with_libmpdec="builtin"])
|
||||||
|
-AC_MSG_RESULT($with_system_libmpdec)
|
||||||
|
+AC_MSG_RESULT($with_libmpdec)
|
||||||
|
+if test "$with_libmpdec" != "none"; then
|
||||||
|
+ MPDEC=yes
|
||||||
|
+else
|
||||||
|
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _decimal"
|
||||||
|
+ MPDEC=no
|
||||||
|
+fi
|
||||||
|
+AC_SUBST(MPDEC)
|
||||||
|
|
||||||
|
AS_VAR_IF([with_system_libmpdec], [yes], [
|
||||||
|
LIBMPDEC_CFLAGS=${LIBMPDEC_CFLAGS-""}
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
@ -0,0 +1,30 @@
|
|||||||
|
From 9bedc56d2a4b8856162650a11c1fcb6ec38f160b Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Date: Wed, 23 Dec 2015 11:51:58 +0100
|
||||||
|
Subject: [PATCH] Add an option to disable the ossaudiodev module
|
||||||
|
|
||||||
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
---
|
||||||
|
configure.ac | 6 ++++++
|
||||||
|
1 file changed, 6 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index e513ef6a20..c07505e89e 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -3175,6 +3175,12 @@ fi
|
||||||
|
|
||||||
|
AC_MSG_RESULT($with_decimal_contextvar)
|
||||||
|
|
||||||
|
+AC_ARG_ENABLE(ossaudiodev,
|
||||||
|
+ AS_HELP_STRING([--disable-ossaudiodev], [disable OSSAUDIODEV]),
|
||||||
|
+ [ if test "$enableval" = "no"; then
|
||||||
|
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} ossaudiodev"
|
||||||
|
+ fi])
|
||||||
|
+
|
||||||
|
# Check for libmpdec machine flavor
|
||||||
|
AC_MSG_CHECKING(for decimal libmpdec machine)
|
||||||
|
AS_CASE([$ac_sys_system],
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
@ -0,0 +1,30 @@
|
|||||||
|
From 90ed5c692b8b5596ca0b3ae1436276c8181251d8 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Nicolas Cavallari <nicolas.cavallari@green-communications.fr>
|
||||||
|
Date: Wed, 22 Feb 2017 17:55:59 -0800
|
||||||
|
Subject: [PATCH] Add an option to disable openssl support.
|
||||||
|
|
||||||
|
Signed-off-by: Nicolas Cavallari <nicolas.cavallari@green-communications.fr>
|
||||||
|
---
|
||||||
|
configure.ac | 6 ++++++
|
||||||
|
1 file changed, 6 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index 08c148c..a81a24c 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -3421,6 +3421,12 @@ AC_ARG_ENABLE(unicodedata,
|
||||||
|
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} unicodedata"
|
||||||
|
fi])
|
||||||
|
|
||||||
|
+AC_ARG_ENABLE(openssl,
|
||||||
|
+ AS_HELP_STRING([--disable-openssl], [disable openssl support]),
|
||||||
|
+ [ if test "$enableval" = "no"; then
|
||||||
|
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} ssl _ssl _hashlib"
|
||||||
|
+ fi])
|
||||||
|
+
|
||||||
|
AC_SUBST(TK)
|
||||||
|
AC_ARG_ENABLE(tk,
|
||||||
|
AS_HELP_STRING([--disable-tk], [disable tk]),
|
||||||
|
--
|
||||||
|
2.30.2
|
||||||
|
|
@ -0,0 +1,30 @@
|
|||||||
|
From 049e7a51e1ffd0d28d6608c707ab4b54e816d338 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Date: Tue, 7 Mar 2017 23:29:05 +0100
|
||||||
|
Subject: [PATCH] Add an option to disable the readline module
|
||||||
|
|
||||||
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
---
|
||||||
|
configure.ac | 6 ++++++
|
||||||
|
1 file changed, 6 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index a81a24c..41a21ff 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -3427,6 +3427,12 @@ AC_ARG_ENABLE(openssl,
|
||||||
|
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} ssl _ssl _hashlib"
|
||||||
|
fi])
|
||||||
|
|
||||||
|
+AC_ARG_ENABLE(readline,
|
||||||
|
+ AS_HELP_STRING([--disable-readline], [disable readline]),
|
||||||
|
+ [ if test "$enableval" = "no"; then
|
||||||
|
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} readline"
|
||||||
|
+ fi])
|
||||||
|
+
|
||||||
|
AC_SUBST(TK)
|
||||||
|
AC_ARG_ENABLE(tk,
|
||||||
|
AS_HELP_STRING([--disable-tk], [disable tk]),
|
||||||
|
--
|
||||||
|
2.30.2
|
||||||
|
|
@ -0,0 +1,42 @@
|
|||||||
|
From 146730a04dfe98e3d7971ebf5410801ceae88e11 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
Date: Tue, 7 Mar 2017 23:31:11 +0100
|
||||||
|
Subject: [PATCH] Add options to disable zlib, bzip2 and xz modules
|
||||||
|
|
||||||
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||||
|
---
|
||||||
|
configure.ac | 18 ++++++++++++++++++
|
||||||
|
1 file changed, 18 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index 41a21ff..fa81bc7 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -3433,6 +3433,24 @@ AC_ARG_ENABLE(readline,
|
||||||
|
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} readline"
|
||||||
|
fi])
|
||||||
|
|
||||||
|
+AC_ARG_ENABLE(bzip2,
|
||||||
|
+ AS_HELP_STRING([--disable-bzip2], [disable bzip2]),
|
||||||
|
+ [ if test "$enableval" = "no"; then
|
||||||
|
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _bz2"
|
||||||
|
+ fi])
|
||||||
|
+
|
||||||
|
+AC_ARG_ENABLE(zlib,
|
||||||
|
+ AS_HELP_STRING([--disable-zlib], [disable zlib]),
|
||||||
|
+ [ if test "$enableval" = "no"; then
|
||||||
|
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} zlib"
|
||||||
|
+ fi])
|
||||||
|
+
|
||||||
|
+AC_ARG_ENABLE(xz,
|
||||||
|
+ AS_HELP_STRING([--disable-xz], [disable xz]),
|
||||||
|
+ [ if test "$enableval" = "no"; then
|
||||||
|
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _lzma"
|
||||||
|
+ fi])
|
||||||
|
+
|
||||||
|
AC_SUBST(TK)
|
||||||
|
AC_ARG_ENABLE(tk,
|
||||||
|
AS_HELP_STRING([--disable-tk], [disable tk]),
|
||||||
|
--
|
||||||
|
2.30.2
|
||||||
|
|
@ -0,0 +1,53 @@
|
|||||||
|
From 106d9378c61e7fa9cad0a63ba068668d54cd11b8 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Matt Weber <matthew.weber@rockwellcollins.com>
|
||||||
|
Date: Fri, 6 Oct 2017 09:54:15 -0500
|
||||||
|
Subject: [PATCH] python-config.sh: don't reassign ${prefix}
|
||||||
|
|
||||||
|
When prefix is set to a path like /usr during crossbuild
|
||||||
|
the sed operations end up executing twice, once for the prefix
|
||||||
|
reassignment and another for includedir if it is set as a string
|
||||||
|
including the ${prefix} variable. This results in an issue
|
||||||
|
when the build directory is under /usr.
|
||||||
|
|
||||||
|
This patch updates the remaining location which uses the prefix
|
||||||
|
variable to also sed and update to use the real path.
|
||||||
|
|
||||||
|
Upstream bug report:
|
||||||
|
https://bugs.python.org/issue31713
|
||||||
|
|
||||||
|
Buildroot bug:
|
||||||
|
https://bugs.busybox.net/show_bug.cgi?id=10361
|
||||||
|
|
||||||
|
Fixes failures like the following:
|
||||||
|
dbus-python-1.2.4 | NOK | http://autobuild.buildroot.net/results/758858efa97b6273c1b470513f5492258a6d8853
|
||||||
|
|
||||||
|
Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
|
||||||
|
---
|
||||||
|
Misc/python-config.sh.in | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/Misc/python-config.sh.in b/Misc/python-config.sh.in
|
||||||
|
index a1bc3cd..164d2d3 100644
|
||||||
|
--- a/Misc/python-config.sh.in
|
||||||
|
+++ b/Misc/python-config.sh.in
|
||||||
|
@@ -31,7 +31,7 @@ prefix_real=$(installed_prefix "$0")
|
||||||
|
# locations. Keep prefix & exec_prefix using their original values in case
|
||||||
|
# they are referenced in other configure variables, to prevent double
|
||||||
|
# substitution, issue #22140.
|
||||||
|
-prefix=$(echo "$prefix_build" | sed "s#^$prefix_build#$prefix_real#")
|
||||||
|
+prefix=$prefix_build
|
||||||
|
exec_prefix=$(echo "$exec_prefix_build" | sed "s#^$exec_prefix_build#$prefix_real#")
|
||||||
|
exec_prefix_real=${prefix_real}
|
||||||
|
includedir=$(echo "@includedir@" | sed "s#^$prefix_build#$prefix_real#")
|
||||||
|
@@ -49,7 +49,7 @@ LDLIBRARY="@LDLIBRARY@"
|
||||||
|
OPT="@OPT@"
|
||||||
|
PY_ENABLE_SHARED="@PY_ENABLE_SHARED@"
|
||||||
|
LDVERSION="@LDVERSION@"
|
||||||
|
-LIBDEST=${prefix_real}/lib/python${VERSION}
|
||||||
|
+LIBDEST=$( echo "${prefix}/lib/python${VERSION}" | sed "s#^$prefix_build#$prefix_real#")
|
||||||
|
LIBPL=$(echo "@LIBPL@" | sed "s#^$prefix_build#$prefix_real#")
|
||||||
|
SO="@EXT_SUFFIX@"
|
||||||
|
PYTHONFRAMEWORK="@PYTHONFRAMEWORK@"
|
||||||
|
--
|
||||||
|
2.30.2
|
||||||
|
|
@ -0,0 +1,33 @@
|
|||||||
|
From 3bb693408eda77dda145ec5fecee56ea73031e9f Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||||
|
Date: Sat, 18 Aug 2018 10:54:56 +0200
|
||||||
|
Subject: [PATCH] Add an option to disable uuid module
|
||||||
|
|
||||||
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||||
|
---
|
||||||
|
configure.ac | 9 +++++++++
|
||||||
|
1 file changed, 9 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index fa81bc7..4e733f6 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -3469,6 +3469,15 @@ if test "$CURSES" = "no"; then
|
||||||
|
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _curses _curses_panel"
|
||||||
|
fi
|
||||||
|
|
||||||
|
+AC_SUBST(UUID)
|
||||||
|
+AC_ARG_ENABLE(uuid,
|
||||||
|
+ AS_HELP_STRING([--disable-uuid], [disable uuid]),
|
||||||
|
+ [ UUID="${enableval}" ], [ UUID=yes ])
|
||||||
|
+
|
||||||
|
+if test "$UUID" = "no"; then
|
||||||
|
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _uuid"
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
AC_SUBST(PYDOC)
|
||||||
|
|
||||||
|
AC_ARG_ENABLE(pydoc,
|
||||||
|
--
|
||||||
|
2.30.2
|
||||||
|
|
@ -0,0 +1,51 @@
|
|||||||
|
From d009b0142f77881dd75ff760fec728dbc8581a03 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Peter Korsgaard <peter@korsgaard.com>
|
||||||
|
Date: Fri, 2 Aug 2019 15:53:16 +0200
|
||||||
|
Subject: [PATCH] configure.ac: fixup $CC --print-multiarch output for
|
||||||
|
musl/uclibc GCC 8+ toolchains
|
||||||
|
|
||||||
|
GCC commit 6834b83784dcf0364eb820e8 (multiarch support for non-glibc linux
|
||||||
|
systems), which is part of GCC 8+, changed the multiarch logic to use
|
||||||
|
$arch-linux-musl / $arch-linux-uclibc rather than $arch-linux-gnu.
|
||||||
|
|
||||||
|
This then causes the python3 configure script to error out:
|
||||||
|
|
||||||
|
checking for the platform triplet based on compiler characteristics... powerpc-linux-gnu
|
||||||
|
configure: error: internal configure error for the platform triplet, please file a bug report
|
||||||
|
|
||||||
|
http://autobuild.buildroot.net/results/cb4/cb49c539501342e45cbe5ade82e588fcdf51f05b
|
||||||
|
|
||||||
|
As it requires that the --print-multiarch output (if not empty) matches the
|
||||||
|
deduced triplet (which always uses -linux-gnu).
|
||||||
|
|
||||||
|
It isn't quite clear why --print-multiarch returns something for a
|
||||||
|
non-multiarch toolchain on some architectures (E.G. PowerPC), but as a
|
||||||
|
workaround, rewrite the --print-multiarch output to match older GCC versions
|
||||||
|
to keep the configure script happy.
|
||||||
|
|
||||||
|
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
|
||||||
|
[Peter: updated for 3.10.2]
|
||||||
|
---
|
||||||
|
configure.ac | 6 +++++-
|
||||||
|
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index 913051c276..aba03f3779 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -876,7 +876,11 @@ AC_MSG_CHECKING([for multiarch])
|
||||||
|
AS_CASE([$ac_sys_system],
|
||||||
|
[Darwin*], [MULTIARCH=""],
|
||||||
|
[FreeBSD*], [MULTIARCH=""],
|
||||||
|
- [MULTIARCH=$($CC --print-multiarch 2>/dev/null)]
|
||||||
|
+ [
|
||||||
|
+ # GCC 8+ returns $arch-linux-{musl,uclibc} for musl/uClibc based
|
||||||
|
+ # toolchains confusing python. Fix that up
|
||||||
|
+ MULTIARCH=$($CC --print-multiarch 2>/dev/null | sed -E 's/-linux-(musl|uclibc)*$/-linux-gnu/')
|
||||||
|
+ ]
|
||||||
|
)
|
||||||
|
AC_SUBST([MULTIARCH])
|
||||||
|
AC_MSG_RESULT([$MULTIARCH])
|
||||||
|
--
|
||||||
|
2.20.1
|
||||||
|
|
@ -0,0 +1,30 @@
|
|||||||
|
From cf4d7fd9f7cb6c1ced32ee323b2b5755640051b7 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Bernd Kuhls <bernd.kuhls@t-online.de>
|
||||||
|
Date: Sat, 11 Apr 2020 22:01:40 +0200
|
||||||
|
Subject: [PATCH] Add an option to disable the berkeleydb module
|
||||||
|
|
||||||
|
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
|
||||||
|
---
|
||||||
|
configure.ac | 6 ++++++
|
||||||
|
1 file changed, 6 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index 4e733f6..1e52f30 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -3480,6 +3480,12 @@ if test "$UUID" = "no"; then
|
||||||
|
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _uuid"
|
||||||
|
fi
|
||||||
|
|
||||||
|
+AC_ARG_ENABLE(berkeleydb,
|
||||||
|
+ AS_HELP_STRING([--disable-berkeleydb], [disable berkeleydb]),
|
||||||
|
+ [ if test "$enableval" = "no"; then
|
||||||
|
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _dbm"
|
||||||
|
+ fi])
|
||||||
|
+
|
||||||
|
AC_SUBST(PYDOC)
|
||||||
|
|
||||||
|
AC_ARG_ENABLE(pydoc,
|
||||||
|
--
|
||||||
|
2.30.2
|
||||||
|
|
@ -0,0 +1,42 @@
|
|||||||
|
From 3c83eedcc2df3ecf6c4a17953ca24dff60c1378e Mon Sep 17 00:00:00 2001
|
||||||
|
From: Romain Naour <romain.naour@gmail.com>
|
||||||
|
Date: Thu, 12 Nov 2020 00:16:18 +0100
|
||||||
|
Subject: [PATCH] lib/crypt: uClibc-ng doesn't set errno when encryption method
|
||||||
|
is not available
|
||||||
|
|
||||||
|
Since commit [1] in cpython, an exception is raised when an encryption method
|
||||||
|
is not available. This eception is handled only if errno is set to EINVAL by
|
||||||
|
crypt() but uClibc-ng doesn't set errno in crypt() [2].
|
||||||
|
|
||||||
|
Fixes:
|
||||||
|
https://gitlab.com/buildroot.org/buildroot/-/jobs/830981961
|
||||||
|
https://gitlab.com/buildroot.org/buildroot/-/jobs/830981979
|
||||||
|
|
||||||
|
[1] https://github.com/python/cpython/commit/0d3fe8ae4961bf551e7d5e42559e2ede1a08fd7c
|
||||||
|
[2] https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/tree/libcrypt/crypt.c?h=v1.0.36#n29
|
||||||
|
|
||||||
|
Signed-off-by: Romain Naour <romain.naour@gmail.com>
|
||||||
|
[Daniel: updated for 3.10.7]
|
||||||
|
Signed-off-by: Daniel Lang <d.lang@abatec.at>
|
||||||
|
---
|
||||||
|
Lib/crypt.py | 4 +++-
|
||||||
|
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/Lib/crypt.py b/Lib/crypt.py
|
||||||
|
index 33dbc46bb3..4692a5270c 100644
|
||||||
|
--- a/Lib/crypt.py
|
||||||
|
+++ b/Lib/crypt.py
|
||||||
|
@@ -94,7 +94,9 @@ def _add_method(name, *args, rounds=None):
|
||||||
|
result = crypt('', salt)
|
||||||
|
except OSError as e:
|
||||||
|
# Not all libc libraries support all encryption methods.
|
||||||
|
- if e.errno in {errno.EINVAL, errno.EPERM, errno.ENOSYS}:
|
||||||
|
+ # Not all libc libraries set errno when encryption method is not
|
||||||
|
+ # available.
|
||||||
|
+ if e.errno in {errno.EINVAL, errno.EPERM, errno.ENOSYS} or e.errno == 0:
|
||||||
|
return False
|
||||||
|
raise
|
||||||
|
if result and len(result) == method.total_size:
|
||||||
|
--
|
||||||
|
2.25.4
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
@ -1,14 +1,13 @@
|
|||||||
--- a/Makefile.pre.in
|
--- a/Makefile.pre.in
|
||||||
+++ b/Makefile.pre.in
|
+++ b/Makefile.pre.in
|
||||||
@@ -633,10 +633,12 @@ sharedmods: $(BUILDPYTHON) pybuilddir.tx
|
@@ -633,9 +633,11 @@ sharedmods: $(BUILDPYTHON) pybuilddir.tx
|
||||||
|
*) quiet="";; \
|
||||||
esac; \
|
esac; \
|
||||||
echo "$(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
|
echo "$(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
|
||||||
_TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \
|
|
||||||
+ PYTHONXCPREFIX='$(DESTDIR)$(prefix)' \
|
+ PYTHONXCPREFIX='$(DESTDIR)$(prefix)' \
|
||||||
DISABLED_EXTENSIONS="$(DISABLED_EXTENSIONS)" \
|
DISABLED_EXTENSIONS="$(DISABLED_EXTENSIONS)" \
|
||||||
$(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build"; \
|
$(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build"; \
|
||||||
$(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
|
$(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
|
||||||
_TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \
|
|
||||||
+ PYTHONXCPREFIX='$(DESTDIR)$(prefix)' \
|
+ PYTHONXCPREFIX='$(DESTDIR)$(prefix)' \
|
||||||
$(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build
|
$(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build
|
||||||
|
|
||||||
@ -16,7 +15,7 @@
|
|||||||
@@ -1750,8 +1752,10 @@ libainstall: @DEF_MAKE_RULE@ python-conf
|
@@ -1750,8 +1752,10 @@ libainstall: @DEF_MAKE_RULE@ python-conf
|
||||||
# Install the dynamically loadable modules
|
# Install the dynamically loadable modules
|
||||||
# This goes into $(exec_prefix)
|
# This goes into $(exec_prefix)
|
||||||
sharedinstall: sharedmods
|
sharedinstall: all
|
||||||
+ CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
|
+ CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
|
||||||
$(RUNSHARED) DISABLED_EXTENSIONS="$(DISABLED_EXTENSIONS)" \
|
$(RUNSHARED) DISABLED_EXTENSIONS="$(DISABLED_EXTENSIONS)" \
|
||||||
$(PYTHON_FOR_BUILD) $(srcdir)/setup.py install \
|
$(PYTHON_FOR_BUILD) $(srcdir)/setup.py install \
|
||||||
|
@ -0,0 +1,62 @@
|
|||||||
|
From 27763ef6ac5ad9d70dba68bf9c2c910ef1ddcded Mon Sep 17 00:00:00 2001
|
||||||
|
From: Brandt Bucher <brandtbucher@microsoft.com>
|
||||||
|
Date: Wed, 9 Nov 2022 13:55:20 -0800
|
||||||
|
Subject: [PATCH] GH-99205: Mark new interpreters and threads as non-static
|
||||||
|
(GH-99268) (cherry picked from commit
|
||||||
|
283ab0e1c002f2d7459d581df6b4b8599e7d1a4d)
|
||||||
|
|
||||||
|
Co-authored-by: Brandt Bucher <brandtbucher@microsoft.com>
|
||||||
|
---
|
||||||
|
.../2022-11-08-16-35-25.gh-issue-99205.2YOoFT.rst | 2 ++
|
||||||
|
Python/pystate.c | 8 ++++++++
|
||||||
|
2 files changed, 10 insertions(+)
|
||||||
|
create mode 100644 Misc/NEWS.d/next/Core and Builtins/2022-11-08-16-35-25.gh-issue-99205.2YOoFT.rst
|
||||||
|
|
||||||
|
diff --git a/Misc/NEWS.d/next/Core and Builtins/2022-11-08-16-35-25.gh-issue-99205.2YOoFT.rst b/Misc/NEWS.d/next/Core and Builtins/2022-11-08-16-35-25.gh-issue-99205.2YOoFT.rst
|
||||||
|
new file mode 100644
|
||||||
|
index 000000000000..8ad0e147c203
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/Misc/NEWS.d/next/Core and Builtins/2022-11-08-16-35-25.gh-issue-99205.2YOoFT.rst
|
||||||
|
@@ -0,0 +1,2 @@
|
||||||
|
+Fix an issue that prevented :c:type:`PyThreadState` and
|
||||||
|
+:c:type:`PyInterpreterState` memory from being freed properly.
|
||||||
|
diff --git a/Python/pystate.c b/Python/pystate.c
|
||||||
|
index 425065322ebd..c0d161f894c9 100644
|
||||||
|
--- a/Python/pystate.c
|
||||||
|
+++ b/Python/pystate.c
|
||||||
|
@@ -341,6 +341,7 @@ PyInterpreterState_New(void)
|
||||||
|
interp = &runtime->_main_interpreter;
|
||||||
|
assert(interp->id == 0);
|
||||||
|
assert(interp->next == NULL);
|
||||||
|
+ assert(interp->_static);
|
||||||
|
|
||||||
|
interpreters->main = interp;
|
||||||
|
}
|
||||||
|
@@ -355,6 +356,9 @@ PyInterpreterState_New(void)
|
||||||
|
// Set to _PyInterpreterState_INIT.
|
||||||
|
memcpy(interp, &initial._main_interpreter,
|
||||||
|
sizeof(*interp));
|
||||||
|
+ // We need to adjust any fields that are different from the initial
|
||||||
|
+ // interpreter (as defined in _PyInterpreterState_INIT):
|
||||||
|
+ interp->_static = false;
|
||||||
|
|
||||||
|
if (id < 0) {
|
||||||
|
/* overflow or Py_Initialize() not called yet! */
|
||||||
|
@@ -817,6 +821,7 @@ new_threadstate(PyInterpreterState *interp)
|
||||||
|
assert(id == 1);
|
||||||
|
used_newtstate = 0;
|
||||||
|
tstate = &interp->_initial_thread;
|
||||||
|
+ assert(tstate->_static);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
// Every valid interpreter must have at least one thread.
|
||||||
|
@@ -828,6 +833,9 @@ new_threadstate(PyInterpreterState *interp)
|
||||||
|
memcpy(tstate,
|
||||||
|
&initial._main_interpreter._initial_thread,
|
||||||
|
sizeof(*tstate));
|
||||||
|
+ // We need to adjust any fields that are different from the initial
|
||||||
|
+ // thread (as defined in _PyThreadState_INIT):
|
||||||
|
+ tstate->_static = false;
|
||||||
|
}
|
||||||
|
interp->threads.head = tstate;
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user