mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-24 11:16:51 +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"
|
||||
# When changing PKG_VERSION remember to sync PKG_PYTHON_VERSION!
|
||||
PKG_VERSION="3.9.15"
|
||||
PKG_SHA256="12daff6809528d9f6154216950423c9e30f0e47336cb57c6aa0b4387dd5eb4b2"
|
||||
PKG_VERSION="3.11.0"
|
||||
PKG_SHA256="a57dc82d77358617ba65b9841cee1e3b441f386c3789ddc0676eca077f2951c3"
|
||||
PKG_LICENSE="OSS"
|
||||
PKG_SITE="https://www.python.org/"
|
||||
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_TOOLCHAIN="autotools"
|
||||
|
||||
PKG_PYTHON_VERSION="python3.9"
|
||||
PKG_PYTHON_VERSION="python3.11"
|
||||
|
||||
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-pydoc
|
||||
--disable-test-modules
|
||||
--enable-lib2to3
|
||||
--disable-lib2to3
|
||||
--disable-idle3
|
||||
--without-cxx-main
|
||||
--with-expat=builtin
|
||||
@ -72,7 +72,7 @@ PKG_CONFIGURE_OPTS_TARGET="ac_cv_prog_HAS_HG=/bin/false
|
||||
--enable-curses
|
||||
--disable-pydoc
|
||||
--disable-test-modules
|
||||
--enable-lib2to3
|
||||
--disable-lib2to3
|
||||
--disable-idle3
|
||||
--without-cxx-main
|
||||
--with-expat=system
|
||||
@ -82,6 +82,7 @@ PKG_CONFIGURE_OPTS_TARGET="ac_cv_prog_HAS_HG=/bin/false
|
||||
--without-pymalloc
|
||||
--without-ensurepip
|
||||
--enable-ipv6
|
||||
--with-build-python=${TOOLCHAIN}/bin/python
|
||||
"
|
||||
|
||||
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
|
||||
+++ b/Makefile.pre.in
|
||||
@@ -633,10 +633,12 @@ sharedmods: $(BUILDPYTHON) pybuilddir.tx
|
||||
@@ -633,9 +633,11 @@ sharedmods: $(BUILDPYTHON) pybuilddir.tx
|
||||
*) quiet="";; \
|
||||
esac; \
|
||||
echo "$(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
|
||||
_TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \
|
||||
+ PYTHONXCPREFIX='$(DESTDIR)$(prefix)' \
|
||||
DISABLED_EXTENSIONS="$(DISABLED_EXTENSIONS)" \
|
||||
$(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build"; \
|
||||
$(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
|
||||
_TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \
|
||||
+ PYTHONXCPREFIX='$(DESTDIR)$(prefix)' \
|
||||
$(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build
|
||||
|
||||
@ -16,7 +15,7 @@
|
||||
@@ -1750,8 +1752,10 @@ libainstall: @DEF_MAKE_RULE@ python-conf
|
||||
# Install the dynamically loadable modules
|
||||
# This goes into $(exec_prefix)
|
||||
sharedinstall: sharedmods
|
||||
sharedinstall: all
|
||||
+ CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
|
||||
$(RUNSHARED) DISABLED_EXTENSIONS="$(DISABLED_EXTENSIONS)" \
|
||||
$(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