diff options
Diffstat (limited to 'lang/python38/files')
-rw-r--r-- | lang/python38/files/patch-Lib_distutils_command_install__lib.py | 41 | ||||
-rw-r--r-- | lang/python38/files/patch-Lib_distutils_tests_test__install__lib.py | 33 | ||||
-rw-r--r-- | lang/python38/files/patch-Makefile.pre.in | 65 | ||||
-rw-r--r-- | lang/python38/files/patch-Misc__python-config.sh.in | 11 | ||||
-rw-r--r-- | lang/python38/files/patch-Modules___decimal___decimal.c | 20 | ||||
-rw-r--r-- | lang/python38/files/patch-Modules__socketmodule.c | 29 | ||||
-rw-r--r-- | lang/python38/files/patch-configure | 11 | ||||
-rw-r--r-- | lang/python38/files/patch-freebsd-12 | 107 | ||||
-rw-r--r-- | lang/python38/files/patch-issue40422_issue40423 | 199 | ||||
-rw-r--r-- | lang/python38/files/patch-libressl | 13 | ||||
-rw-r--r-- | lang/python38/files/patch-setup.py | 11 | ||||
-rw-r--r-- | lang/python38/files/pkg-message.in | 12 |
12 files changed, 0 insertions, 552 deletions
diff --git a/lang/python38/files/patch-Lib_distutils_command_install__lib.py b/lang/python38/files/patch-Lib_distutils_command_install__lib.py deleted file mode 100644 index 6e925311e57d..000000000000 --- a/lang/python38/files/patch-Lib_distutils_command_install__lib.py +++ /dev/null @@ -1,41 +0,0 @@ -From 9934ce31b8447667f71c211e559a8de71e8263db Mon Sep 17 00:00:00 2001 -From: Brendan Molloy <brendan@bbqsrc.net> -Date: Mon, 4 Jan 2016 23:14:06 +1100 -Subject: [PATCH] Check bytecode file actually exists and tests - -Should solve issue 20397, where using the --record argument results -in files that failed to generate bytecode files are added to the -record file nonetheless. ---- - Lib/distutils/command/install_lib.py | 17 +++++++++++++---- - Lib/distutils/tests/test_install_lib.py | 8 ++++++-- - 2 files changed, 19 insertions(+), 6 deletions(-) - ---- Lib/distutils/command/install_lib.py.orig 2015-12-07 01:39:07 UTC -+++ Lib/distutils/command/install_lib.py -@@ -164,12 +164,21 @@ class install_lib(Command): - ext = os.path.splitext(os.path.normcase(py_file))[1] - if ext != PYTHON_SOURCE_EXTENSION: - continue -+ - if self.compile: -- bytecode_files.append(importlib.util.cache_from_source( -- py_file, optimization='')) -+ candidate = importlib.util.cache_from_source( -+ py_file, optimization='') -+ -+ if os.path.isfile(candidate): -+ bytecode_files.append(candidate) -+ - if self.optimize > 0: -- bytecode_files.append(importlib.util.cache_from_source( -- py_file, optimization=self.optimize)) -+ candidate = importlib.util.cache_from_source( -+ py_file, optimization=self.optimize) -+ -+ if os.path.isfile(candidate): -+ bytecode_files.append(candidate) -+ - - return bytecode_files - diff --git a/lang/python38/files/patch-Lib_distutils_tests_test__install__lib.py b/lang/python38/files/patch-Lib_distutils_tests_test__install__lib.py deleted file mode 100644 index c5531b92ee92..000000000000 --- a/lang/python38/files/patch-Lib_distutils_tests_test__install__lib.py +++ /dev/null @@ -1,33 +0,0 @@ -From 9934ce31b8447667f71c211e559a8de71e8263db Mon Sep 17 00:00:00 2001 -From: Brendan Molloy <brendan@bbqsrc.net> -Date: Mon, 4 Jan 2016 23:14:06 +1100 -Subject: [PATCH] Check bytecode file actually exists and tests - -Should solve issue 20397, where using the --record argument results -in files that failed to generate bytecode files are added to the -record file nonetheless. ---- - Lib/distutils/command/install_lib.py | 17 +++++++++++++---- - Lib/distutils/tests/test_install_lib.py | 8 ++++++-- - 2 files changed, 19 insertions(+), 6 deletions(-) - ---- Lib/distutils/tests/test_install_lib.py.orig 2015-12-07 01:39:07 UTC -+++ Lib/distutils/tests/test_install_lib.py -@@ -64,11 +64,15 @@ class InstallLibTestCase(support.Tempdir - cmd.distribution.ext_modules = [Extension('foo', ['xxx'])] - cmd.distribution.packages = ['spam'] - cmd.distribution.script_name = 'setup.py' -+ -+ # Create rubbish, uncompilable file -+ f = os.path.join(project_dir, 'spam', 'rubbish.py') -+ self.write_file(f, 'rubbish()') - - # get_outputs should return 4 elements: spam/__init__.py and .pyc, -- # foo.import-tag-abiflags.so / foo.pyd -+ # foo.import-tag-abiflags.so / foo.pyd and rubbish.py (no .pyc) - outputs = cmd.get_outputs() -- self.assertEqual(len(outputs), 4, outputs) -+ self.assertEqual(len(outputs), 5, outputs) - - def test_get_inputs(self): - project_dir, dist = self.create_dist() diff --git a/lang/python38/files/patch-Makefile.pre.in b/lang/python38/files/patch-Makefile.pre.in deleted file mode 100644 index 1262d9f1aea6..000000000000 --- a/lang/python38/files/patch-Makefile.pre.in +++ /dev/null @@ -1,65 +0,0 @@ -# Description: Remove duplicate CFLAGS, CPPFLAGS, LDFLAGS by stripping CONFIGURE_* -# Submitted by: koobs (r326729) -# TODO: Upstream ---- Makefile.pre.in.orig 2019-11-04 01:16:37 UTC -+++ Makefile.pre.in -@@ -80,7 +80,6 @@ MAKESETUP= $(srcdir)/Modules/makesetup - OPT= @OPT@ - BASECFLAGS= @BASECFLAGS@ - BASECPPFLAGS= @BASECPPFLAGS@ --CONFIGURE_CFLAGS= @CFLAGS@ - # CFLAGS_NODIST is used for building the interpreter and stdlib C extensions. - # Use it when a compiler flag should _not_ be part of the distutils CFLAGS - # once Python is installed (Issue #21121). -@@ -89,18 +88,16 @@ CONFIGURE_CFLAGS_NODIST=@CFLAGS_NODIST@ - # Use it when a linker flag should _not_ be part of the distutils LDFLAGS - # once Python is installed (bpo-35257) - CONFIGURE_LDFLAGS_NODIST=@LDFLAGS_NODIST@ --CONFIGURE_CPPFLAGS= @CPPFLAGS@ --CONFIGURE_LDFLAGS= @LDFLAGS@ - # Avoid assigning CFLAGS, LDFLAGS, etc. so users can use them on the - # command line to append to these values without stomping the pre-set - # values. --PY_CFLAGS= $(BASECFLAGS) $(OPT) $(CONFIGURE_CFLAGS) $(CFLAGS) $(EXTRA_CFLAGS) -+PY_CFLAGS= $(BASECFLAGS) $(OPT) $(CFLAGS) $(EXTRA_CFLAGS) - PY_CFLAGS_NODIST=$(CONFIGURE_CFLAGS_NODIST) $(CFLAGS_NODIST) -I$(srcdir)/Include/internal - # Both CPPFLAGS and LDFLAGS need to contain the shell's value for setup.py to - # be able to build extension modules using the directories specified in the - # environment variables --PY_CPPFLAGS= $(BASECPPFLAGS) -I. -I$(srcdir)/Include $(CONFIGURE_CPPFLAGS) $(CPPFLAGS) --PY_LDFLAGS= $(CONFIGURE_LDFLAGS) $(LDFLAGS) -+PY_CPPFLAGS= $(BASECPPFLAGS) -I. -I$(srcdir)/Include $(CPPFLAGS) -+PY_LDFLAGS= $(LDFLAGS) - PY_LDFLAGS_NODIST=$(CONFIGURE_LDFLAGS_NODIST) $(LDFLAGS_NODIST) - NO_AS_NEEDED= @NO_AS_NEEDED@ - SGI_ABI= @SGI_ABI@ -@@ -1269,14 +1266,6 @@ bininstall: altbininstall - else true; \ - fi - (cd $(DESTDIR)$(BINDIR); $(LN) -s python$(VERSION)$(EXE) python3$(EXE)) -- -if test "$(VERSION)" != "$(LDVERSION)"; then \ -- rm -f $(DESTDIR)$(BINDIR)/python$(VERSION)-config; \ -- (cd $(DESTDIR)$(BINDIR); $(LN) -s python$(LDVERSION)-config python$(VERSION)-config); \ -- rm -f $(DESTDIR)$(LIBPC)/python-$(LDVERSION).pc; \ -- (cd $(DESTDIR)$(LIBPC); $(LN) -s python-$(VERSION).pc python-$(LDVERSION).pc); \ -- rm -f $(DESTDIR)$(LIBPC)/python-$(LDVERSION)-embed.pc; \ -- (cd $(DESTDIR)$(LIBPC); $(LN) -s python-$(VERSION)-embed.pc python-$(LDVERSION)-embed.pc); \ -- fi - -rm -f $(DESTDIR)$(BINDIR)/python3-config - (cd $(DESTDIR)$(BINDIR); $(LN) -s python$(VERSION)-config python3-config) - -rm -f $(DESTDIR)$(LIBPC)/python3.pc -@@ -1580,6 +1569,14 @@ libainstall: @DEF_MAKE_RULE@ python-config - $(INSTALL_SCRIPT) $(srcdir)/install-sh $(DESTDIR)$(LIBPL)/install-sh - $(INSTALL_SCRIPT) python-config.py $(DESTDIR)$(LIBPL)/python-config.py - $(INSTALL_SCRIPT) python-config $(DESTDIR)$(BINDIR)/python$(LDVERSION)-config -+ -if test "$(VERSION)" != "$(LDVERSION)"; then \ -+ rm -f $(DESTDIR)$(BINDIR)/python$(VERSION)-config; \ -+ (cd $(DESTDIR)$(BINDIR); $(LN) -s python$(LDVERSION)-config python$(VERSION)-config); \ -+ rm -f $(DESTDIR)$(LIBPC)/python-$(LDVERSION).pc; \ -+ (cd $(DESTDIR)$(LIBPC); $(LN) -s python-$(VERSION).pc python-$(LDVERSION).pc); \ -+ rm -f $(DESTDIR)$(LIBPC)/python-$(LDVERSION)-embed.pc; \ -+ (cd $(DESTDIR)$(LIBPC); $(LN) -s python-$(VERSION)-embed.pc python-$(LDVERSION)-embed.pc); \ -+ fi - @if [ -s Modules/python.exp -a \ - "`echo $(MACHDEP) | sed 's/^\(...\).*/\1/'`" = "aix" ]; then \ - echo; echo "Installing support files for building shared extension modules on AIX:"; \ diff --git a/lang/python38/files/patch-Misc__python-config.sh.in b/lang/python38/files/patch-Misc__python-config.sh.in deleted file mode 100644 index ebb0c6a51f6d..000000000000 --- a/lang/python38/files/patch-Misc__python-config.sh.in +++ /dev/null @@ -1,11 +0,0 @@ ---- Misc/python-config.sh.in.orig 2018-07-13 21:07:16 UTC -+++ Misc/python-config.sh.in -@@ -15,7 +15,7 @@ fi - # Returns the actual prefix where this script was installed to. - installed_prefix () - { -- RESULT=$(dirname $(cd $(dirname "$1") && pwd -P)) -+ RESULT=$(dirname $(cd $(dirname $(realpath "$1")) && pwd -P)) - if which readlink >/dev/null 2>&1 ; then - if readlink -f "$RESULT" >/dev/null 2>&1; then - RESULT=$(readlink -f "$RESULT") diff --git a/lang/python38/files/patch-Modules___decimal___decimal.c b/lang/python38/files/patch-Modules___decimal___decimal.c deleted file mode 100644 index 4ea7b4f1b4ee..000000000000 --- a/lang/python38/files/patch-Modules___decimal___decimal.c +++ /dev/null @@ -1,20 +0,0 @@ ---- Modules/_decimal/_decimal.c.orig 2021-02-17 20:39:05 UTC -+++ Modules/_decimal/_decimal.c -@@ -3284,7 +3284,7 @@ dec_format(PyObject *dec, PyObject *args) - } - else { - size_t n = strlen(spec.dot); -- if (n > 1 || (n == 1 && !isascii((uchar)spec.dot[0]))) { -+ if (n > 1 || (n == 1 && !isascii((unsigned char)spec.dot[0]))) { - /* fix locale dependent non-ascii characters */ - dot = dotsep_as_utf8(spec.dot); - if (dot == NULL) { -@@ -3293,7 +3293,7 @@ dec_format(PyObject *dec, PyObject *args) - spec.dot = PyBytes_AS_STRING(dot); - } - n = strlen(spec.sep); -- if (n > 1 || (n == 1 && !isascii((uchar)spec.sep[0]))) { -+ if (n > 1 || (n == 1 && !isascii((unsigned char)spec.sep[0]))) { - /* fix locale dependent non-ascii characters */ - sep = dotsep_as_utf8(spec.sep); - if (sep == NULL) { diff --git a/lang/python38/files/patch-Modules__socketmodule.c b/lang/python38/files/patch-Modules__socketmodule.c deleted file mode 100644 index 93ef3b785ab9..000000000000 --- a/lang/python38/files/patch-Modules__socketmodule.c +++ /dev/null @@ -1,29 +0,0 @@ ---- Modules/socketmodule.c -+++ Modules/socketmodule.c -@@ -1850,6 +1850,11 @@ getsockaddrarg(PySocketSockObject *s, PyObject *args, - /* RDS sockets use sockaddr_in: fall-through */ - #endif /* AF_RDS */ - -+#ifdef AF_DIVERT -+ case AF_DIVERT: -+ /* FreeBSD divert(4) sockets use sockaddr_in: fall-through */ -+#endif /* AF_DIVERT */ -+ - case AF_INET: - { - struct maybe_idna host = {NULL, NULL}; -@@ -7628,6 +7633,14 @@ PyInit__socket(void) - PyModule_AddIntMacro(m, AF_SYSTEM); - #endif - -+/* FreeBSD divert(4) */ -+#ifdef PF_DIVERT -+ PyModule_AddIntMacro(m, PF_DIVERT); -+#endif -+#ifdef AF_DIVERT -+ PyModule_AddIntMacro(m, AF_DIVERT); -+#endif -+ - #ifdef AF_PACKET - PyModule_AddIntMacro(m, AF_PACKET); - #endif diff --git a/lang/python38/files/patch-configure b/lang/python38/files/patch-configure deleted file mode 100644 index c78047439605..000000000000 --- a/lang/python38/files/patch-configure +++ /dev/null @@ -1,11 +0,0 @@ ---- configure.orig 2022-02-23 19:52:00 UTC -+++ configure -@@ -6625,7 +6625,7 @@ fi - - if test "$Py_LTO" = 'true' ; then - case $CC in -- *clang*) -+ *clang*|cc) - - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}llvm-ar", so it can be a program name with args. diff --git a/lang/python38/files/patch-freebsd-12 b/lang/python38/files/patch-freebsd-12 deleted file mode 100644 index eb10e947872e..000000000000 --- a/lang/python38/files/patch-freebsd-12 +++ /dev/null @@ -1,107 +0,0 @@ -From 9fa60bf7361d3244c19ed273fd4f1df7dd9698b0 Mon Sep 17 00:00:00 2001 -From: Yasuhiro Kimura <yasu@utahime.org> -Date: Tue, 11 May 2021 04:17:33 +0900 -Subject: [PATCH] Revert "[3.8] bpo-43799: OpenSSL 3.0.0: declare - OPENSSL_API_COMPAT 1.1.1 (GH-25329) (GH-25383)" - -This reverts commit b71aaa0df0f3a9640b034b4774651cd8c54d2fb9. ---- - Modules/_hashopenssl.c | 9 +-------- - Modules/_ssl.c | 33 +++++++++++++++++++-------------- - 2 files changed, 20 insertions(+), 22 deletions(-) - -diff --git Modules/_hashopenssl.c Modules/_hashopenssl.c -index 93bf25fee3..edadbcb393 100644 ---- Modules/_hashopenssl.c -+++ Modules/_hashopenssl.c -@@ -11,13 +11,6 @@ - * - */ - --/* Don't warn about deprecated functions, */ --#ifndef OPENSSL_API_COMPAT -- // 0x10101000L == 1.1.1, 30000 == 3.0.0 -- #define OPENSSL_API_COMPAT 0x10101000L --#endif --#define OPENSSL_NO_DEPRECATED 1 -- - #define PY_SSIZE_T_CLEAN - - #include "Python.h" -@@ -31,7 +24,7 @@ - #include <openssl/hmac.h> - /* We use the object interface to discover what hashes OpenSSL supports. */ - #include <openssl/objects.h> --#include <openssl/err.h> -+#include "openssl/err.h" - - #ifndef OPENSSL_THREADS - # error "OPENSSL_THREADS is not defined, Python requires thread-safe OpenSSL" -diff --git Modules/_ssl.c Modules/_ssl.c -index d6a2fb814a..5cbc2b65be 100644 ---- Modules/_ssl.c -+++ Modules/_ssl.c -@@ -14,13 +14,6 @@ - http://bugs.python.org/issue8108#msg102867 ? - */ - --/* Don't warn about deprecated functions, */ --#ifndef OPENSSL_API_COMPAT -- // 0x10101000L == 1.1.1, 30000 == 3.0.0 -- #define OPENSSL_API_COMPAT 0x10101000L --#endif --#define OPENSSL_NO_DEPRECATED 1 -- - #define PY_SSIZE_T_CLEAN - - #include "Python.h" -@@ -52,6 +45,14 @@ static PySocketModule_APIObject PySocketModule; - #include <sys/poll.h> - #endif - -+/* Don't warn about deprecated functions */ -+#ifdef __GNUC__ -+#pragma GCC diagnostic ignored "-Wdeprecated-declarations" -+#endif -+#ifdef __clang__ -+#pragma clang diagnostic ignored "-Wdeprecated-declarations" -+#endif -+ - /* Include OpenSSL header files */ - #include "openssl/rsa.h" - #include "openssl/crypto.h" -@@ -149,20 +150,24 @@ static void _PySSLFixErrno(void) { - # define PY_OPENSSL_1_1_API 1 - #endif - --/* OpenSSL API 1.1.0+ does not include version methods. Define the methods -- * unless OpenSSL is compiled without the methods. It's the easiest way to -- * make 1.0.2, 1.1.0, 1.1.1, and 3.0.0 happy without deprecation warnings. -- */ -+/* OpenSSL API compat */ -+#ifdef OPENSSL_API_COMPAT -+#if OPENSSL_API_COMPAT >= 0x10100000L -+ -+/* OpenSSL API 1.1.0+ does not include version methods */ - #ifndef OPENSSL_NO_TLS1_METHOD --extern const SSL_METHOD *TLSv1_method(void); -+#define OPENSSL_NO_TLS1_METHOD 1 - #endif - #ifndef OPENSSL_NO_TLS1_1_METHOD --extern const SSL_METHOD *TLSv1_1_method(void); -+#define OPENSSL_NO_TLS1_1_METHOD 1 - #endif - #ifndef OPENSSL_NO_TLS1_2_METHOD --extern const SSL_METHOD *TLSv1_2_method(void); -+#define OPENSSL_NO_TLS1_2_METHOD 1 - #endif - -+#endif /* >= 1.1.0 compcat */ -+#endif /* OPENSSL_API_COMPAT */ -+ - /* LibreSSL 2.7.0 provides necessary OpenSSL 1.1.0 APIs */ - #if defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER >= 0x2070000fL - # define PY_OPENSSL_1_1_API 1 --- -2.31.1 - diff --git a/lang/python38/files/patch-issue40422_issue40423 b/lang/python38/files/patch-issue40422_issue40423 deleted file mode 100644 index 0c49d0b3a752..000000000000 --- a/lang/python38/files/patch-issue40422_issue40423 +++ /dev/null @@ -1,199 +0,0 @@ -diff --git a/Modules/_posixsubprocess.c b/Modules/_posixsubprocess.c -index e693e53206..a26ef96e91 100644 ---- Modules/_posixsubprocess.c -+++ Modules/_posixsubprocess.c -@@ -21,6 +21,8 @@ - #include <dirent.h> - #endif - -+#include "posixmodule.h" -+ - #ifdef _Py_MEMORY_SANITIZER - # include <sanitizer/msan_interface.h> - #endif -@@ -222,7 +222,6 @@ _close_fds_by_brute_force(long start_fd, PyObject *py_fds_to_keep) - long end_fd = safe_get_max_fd(); - Py_ssize_t num_fds_to_keep = PyTuple_GET_SIZE(py_fds_to_keep); - Py_ssize_t keep_seq_idx; -- int fd_num; - /* As py_fds_to_keep is sorted we can loop through the list closing - * fds in between any in the keep list falling within our range. */ - for (keep_seq_idx = 0; keep_seq_idx < num_fds_to_keep; ++keep_seq_idx) { -@@ -230,15 +229,11 @@ _close_fds_by_brute_force(long start_fd, PyObject *py_fds_to_keep) - int keep_fd = PyLong_AsLong(py_keep_fd); - if (keep_fd < start_fd) - continue; -- for (fd_num = start_fd; fd_num < keep_fd; ++fd_num) { -- close(fd_num); -- } -+ _Py_closerange(start_fd, keep_fd - 1); - start_fd = keep_fd + 1; - } - if (start_fd <= end_fd) { -- for (fd_num = start_fd; fd_num < end_fd; ++fd_num) { -- close(fd_num); -- } -+ _Py_closerange(start_fd, end_fd); - } - } - -diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c -index 726e3723f9..7ef2dbc854 100644 ---- Modules/posixmodule.c -+++ Modules/posixmodule.c -@@ -8555,8 +8555,26 @@ os_close_impl(PyObject *module, int fd) - Py_RETURN_NONE; - } - -+/* Our selection logic for which function to use is as follows: -+ * 1. If close_range(2) is available, always prefer that; it's better for -+ * contiguous ranges like this than fdwalk(3) which entails iterating over -+ * the entire fd space and simply doing nothing for those outside the range. -+ * 2. If closefrom(2) is available, we'll attempt to use that next if we're -+ * closing up to sysconf(_SC_OPEN_MAX). -+ * 2a. Fallback to fdwalk(3) if we're not closing up to sysconf(_SC_OPEN_MAX), -+ * as that will be more performant if the range happens to have any chunk of -+ * non-opened fd in the middle. -+ * 2b. If fdwalk(3) isn't available, just do a plain close(2) loop. -+ */ -+#ifdef __FreeBSD__ -+#define USE_CLOSEFROM -+#endif /* __FreeBSD__ */ - - #ifdef HAVE_FDWALK -+#define USE_FDWALK -+#endif /* HAVE_FDWALK */ -+ -+#ifdef USE_FDWALK - static int - _fdwalk_close_func(void *lohi, int fd) - { -@@ -8569,7 +8587,46 @@ _fdwalk_close_func(void *lohi, int fd) - close(fd); - return 0; - } --#endif /* HAVE_FDWALK */ -+#endif /* USE_FDWALK */ -+ -+/* Closes all file descriptors in [first, last], ignoring errors. */ -+void -+_Py_closerange(int first, int last) -+{ -+ first = Py_MAX(first, 0); -+ _Py_BEGIN_SUPPRESS_IPH -+#ifdef HAVE_CLOSE_RANGE -+ if (close_range(first, last, 0) == 0 || errno != ENOSYS) { -+ /* Any errors encountered while closing file descriptors are ignored; -+ * ENOSYS means no kernel support, though, -+ * so we'll fallback to the other methods. */ -+ } -+ else -+#endif /* HAVE_CLOSE_RANGE */ -+#ifdef USE_CLOSEFROM -+ if (last >= sysconf(_SC_OPEN_MAX)) { -+ /* Any errors encountered while closing file descriptors are ignored */ -+ closefrom(first); -+ } -+ else -+#endif /* USE_CLOSEFROM */ -+#ifdef USE_FDWALK -+ { -+ int lohi[2]; -+ lohi[0] = first; -+ lohi[1] = last + 1; -+ fdwalk(_fdwalk_close_func, lohi); -+ } -+#else -+ { -+ for (int i = first; i <= last; i++) { -+ /* Ignore errors */ -+ (void)close(i); -+ } -+ } -+#endif /* USE_FDWALK */ -+ _Py_END_SUPPRESS_IPH -+} - - /*[clinic input] - os.closerange -@@ -8585,22 +8642,8 @@ static PyObject * - os_closerange_impl(PyObject *module, int fd_low, int fd_high) - /*[clinic end generated code: output=0ce5c20fcda681c2 input=5855a3d053ebd4ec]*/ - { --#ifdef HAVE_FDWALK -- int lohi[2]; --#else -- int i; --#endif - Py_BEGIN_ALLOW_THREADS -- _Py_BEGIN_SUPPRESS_IPH --#ifdef HAVE_FDWALK -- lohi[0] = Py_MAX(fd_low, 0); -- lohi[1] = fd_high; -- fdwalk(_fdwalk_close_func, lohi); --#else -- for (i = Py_MAX(fd_low, 0); i < fd_high; i++) -- close(i); --#endif -- _Py_END_SUPPRESS_IPH -+ _Py_closerange(fd_low, fd_high - 1); - Py_END_ALLOW_THREADS - Py_RETURN_NONE; - } -diff --git a/Modules/posixmodule.h b/Modules/posixmodule.h -index 1e00562abc..749833f71c 100644 ---- Modules/posixmodule.h -+++ Modules/posixmodule.h -@@ -28,6 +28,8 @@ PyAPI_FUNC(int) _Py_Sigset_Converter(PyObject *, void *); - #endif /* HAVE_SIGSET_T */ - #endif /* Py_LIMITED_API */ - -+PyAPI_FUNC(void) _Py_closerange(int first, int last); -+ - #ifdef __cplusplus - } - #endif -diff --git a/configure b/configure -index 96dcd0dcd5..90b61f9f8f 100755 ---- configure -+++ configure -@@ -11503,8 +11503,8 @@ fi - - # checks for library functions - for ac_func in alarm accept4 setitimer getitimer bind_textdomain_codeset chown \ -- clock confstr copy_file_range ctermid dup3 execv explicit_bzero explicit_memset \ -- faccessat fchmod fchmodat fchown fchownat \ -+ clock confstr close_range copy_file_range ctermid dup3 execv explicit_bzero \ -+ explicit_memset faccessat fchmod fchmodat fchown fchownat \ - fdwalk fexecve fdopendir fork fpathconf fstatat ftime ftruncate futimesat \ - futimens futimes gai_strerror getentropy \ - getgrgid_r getgrnam_r \ -diff --git a/configure.ac b/configure.ac -index 18a044629a..fbb051d49c 100644 ---- configure.ac -+++ configure.ac -@@ -3560,8 +3560,8 @@ fi - - # checks for library functions - AC_CHECK_FUNCS(alarm accept4 setitimer getitimer bind_textdomain_codeset chown \ -- clock confstr copy_file_range ctermid dup3 execv explicit_bzero explicit_memset \ -- faccessat fchmod fchmodat fchown fchownat \ -+ clock confstr close_range copy_file_range ctermid dup3 execv explicit_bzero \ -+ explicit_memset faccessat fchmod fchmodat fchown fchownat \ - fdwalk fexecve fdopendir fork fpathconf fstatat ftime ftruncate futimesat \ - futimens futimes gai_strerror getentropy \ - getgrgid_r getgrnam_r \ -diff --git a/pyconfig.h.in b/pyconfig.h.in -index 4263a712c3..166d278f7c 100644 ---- pyconfig.h.in -+++ pyconfig.h.in -@@ -136,6 +136,9 @@ - /* Define to 1 if you have the `clock_settime' function. */ - #undef HAVE_CLOCK_SETTIME - -+/* Define to 1 if you have the `close_range' function. */ -+#undef HAVE_CLOSE_RANGE -+ - /* Define if the C compiler supports computed gotos. */ - #undef HAVE_COMPUTED_GOTOS - diff --git a/lang/python38/files/patch-libressl b/lang/python38/files/patch-libressl deleted file mode 100644 index 40e6af2427a8..000000000000 --- a/lang/python38/files/patch-libressl +++ /dev/null @@ -1,13 +0,0 @@ -Fix build with LibreSSL 3.5.* - ---- Modules/_hashopenssl.c.orig 2022-03-16 12:22:54 UTC -+++ Modules/_hashopenssl.c -@@ -37,7 +37,7 @@ - # error "OPENSSL_THREADS is not defined, Python requires thread-safe OpenSSL" - #endif - --#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || defined(LIBRESSL_VERSION_NUMBER) -+#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x2070000fL) - /* OpenSSL < 1.1.0 */ - #define EVP_MD_CTX_new EVP_MD_CTX_create - #define EVP_MD_CTX_free EVP_MD_CTX_destroy diff --git a/lang/python38/files/patch-setup.py b/lang/python38/files/patch-setup.py deleted file mode 100644 index 7bd5deb4202a..000000000000 --- a/lang/python38/files/patch-setup.py +++ /dev/null @@ -1,11 +0,0 @@ ---- setup.py.orig 2021-05-03 09:47:56 UTC -+++ setup.py -@@ -2051,7 +2051,7 @@ class PyBuildExt(build_ext): - undef_macros = [] - if '--with-system-libmpdec' in sysconfig.get_config_var("CONFIG_ARGS"): - include_dirs = [] -- libraries = [':libmpdec.so.2'] -+ libraries = ['mpdec'] - sources = ['_decimal/_decimal.c'] - depends = ['_decimal/docstrings.h'] - else: diff --git a/lang/python38/files/pkg-message.in b/lang/python38/files/pkg-message.in deleted file mode 100644 index 286359c9f272..000000000000 --- a/lang/python38/files/pkg-message.in +++ /dev/null @@ -1,12 +0,0 @@ -[ -{ type: install - message: <<EOM -Note that some standard Python modules are provided as separate ports -as they require additional dependencies. They are available as: - -py%%PYTHON_SUFFIX%%-gdbm databases/py-gdbm@py%%PYTHON_SUFFIX%% -py%%PYTHON_SUFFIX%%-sqlite3 databases/py-sqlite3@py%%PYTHON_SUFFIX%% -py%%PYTHON_SUFFIX%%-tkinter x11-toolkits/py-tkinter@py%%PYTHON_SUFFIX%% -EOM -} -] |