* add libb2 as dep * remove "-Wl,--large-address-aware", default now via makepkg * remove 2to3 logic, no longer in Python
108 lines
4.1 KiB
Diff
108 lines
4.1 KiB
Diff
From 577103e2dcc8e89729e6df6399d89c6e45ddb907 Mon Sep 17 00:00:00 2001
|
|
From: Alexey Pavlov <alexpux@gmail.com>
|
|
Date: Mon, 1 Sep 2025 19:45:50 +0300
|
|
Subject: [PATCH 135/N] Fix windows cert store import in pythonfiles. Add
|
|
libb2 to dependencies of Python. Simplify mingw conditions.
|
|
|
|
---
|
|
Lib/compileall.py | 2 +-
|
|
Lib/ctypes/__init__.py | 9 +++++----
|
|
Lib/site.py | 2 +-
|
|
Lib/ssl.py | 4 ++--
|
|
Lib/sysconfig/__init__.py | 1 +
|
|
Modules/getpath.py | 1 +
|
|
6 files changed, 11 insertions(+), 8 deletions(-)
|
|
|
|
diff --git a/Lib/compileall.py b/Lib/compileall.py
|
|
index c9de7e4..cd450be 100644
|
|
--- a/Lib/compileall.py
|
|
+++ b/Lib/compileall.py
|
|
@@ -38,7 +38,7 @@ def _walk_dir(dir, maxlevels, quiet=0):
|
|
if name == '__pycache__':
|
|
continue
|
|
fullname = os.path.join(dir, name)
|
|
- if sys.version.find("MINGW") >= 0:
|
|
+ if 'mingw' in sys.version.lower():
|
|
fullname = fullname.replace('\\','/')
|
|
if not os.path.isdir(fullname):
|
|
yield fullname
|
|
diff --git a/Lib/ctypes/__init__.py b/Lib/ctypes/__init__.py
|
|
index 108348e..ce6c18b 100644
|
|
--- a/Lib/ctypes/__init__.py
|
|
+++ b/Lib/ctypes/__init__.py
|
|
@@ -475,10 +475,11 @@ class LibraryLoader(object):
|
|
cdll = LibraryLoader(CDLL)
|
|
pydll = LibraryLoader(PyDLL)
|
|
|
|
-if _os.name == "nt" and _sys.version.find('MINGW') >= 0:
|
|
- pythonapi = PyDLL("libpython%d.%d%s.dll" % (_sys.version_info[:2] + (_sys.abiflags,)), None)
|
|
-elif _os.name == "nt":
|
|
- pythonapi = PyDLL("python.dll", None, _sys.dllhandle)
|
|
+if _os.name == "nt":
|
|
+ if 'mingw' in sys.version.lower():
|
|
+ pythonapi = PyDLL("libpython%d.%d%s.dll" % (_sys.version_info[:2] + (_sys.abiflags,)), None)
|
|
+ else:
|
|
+ pythonapi = PyDLL("python.dll", None, _sys.dllhandle)
|
|
elif _sys.platform == "android":
|
|
pythonapi = PyDLL("libpython%d.%d.so" % _sys.version_info[:2])
|
|
elif _sys.platform == "cygwin":
|
|
diff --git a/Lib/site.py b/Lib/site.py
|
|
index c027443..b6a8490 100644
|
|
--- a/Lib/site.py
|
|
+++ b/Lib/site.py
|
|
@@ -434,7 +434,7 @@ def getsitepackages(prefixes=None):
|
|
abi_thread = 't'
|
|
else:
|
|
abi_thread = ''
|
|
- if os.name == 'posix' or (os.name == "nt" and 'mingw' in sys.version.lower()):
|
|
+ if os.name == 'posix' or 'mingw' in sys.version.lower():
|
|
libdirs = [sys.platlibdir]
|
|
if sys.platlibdir != "lib":
|
|
libdirs.append("lib")
|
|
diff --git a/Lib/ssl.py b/Lib/ssl.py
|
|
index cc5f11a..c8703b0 100644
|
|
--- a/Lib/ssl.py
|
|
+++ b/Lib/ssl.py
|
|
@@ -254,7 +254,7 @@ class _TLSMessageType:
|
|
CHANGE_CIPHER_SPEC = 0x0101
|
|
|
|
|
|
-if sys.platform == "win32" and sys.version.find("MINGW") == -1:
|
|
+if sys.platform == "win32":
|
|
from _ssl import enum_certificates, enum_crls
|
|
|
|
from socket import socket, SOCK_STREAM, create_connection
|
|
@@ -528,7 +528,7 @@ class SSLContext(_SSLContext):
|
|
def load_default_certs(self, purpose=Purpose.SERVER_AUTH):
|
|
if not isinstance(purpose, _ASN1Object):
|
|
raise TypeError(purpose)
|
|
- if sys.platform == "win32" and sys.version.find("MINGW") == -1:
|
|
+ if sys.platform == "win32":
|
|
for storename in self._windows_cert_stores:
|
|
self._load_windows_store_certs(storename, purpose)
|
|
self.set_default_verify_paths()
|
|
diff --git a/Lib/sysconfig/__init__.py b/Lib/sysconfig/__init__.py
|
|
index dff99c8..6a48054 100644
|
|
--- a/Lib/sysconfig/__init__.py
|
|
+++ b/Lib/sysconfig/__init__.py
|
|
@@ -56,6 +56,7 @@ _INSTALL_SCHEMES = {
|
|
'include': '{installed_base}/Include',
|
|
'platinclude': '{installed_base}/Include',
|
|
'scripts': '{base}/Scripts',
|
|
+ 'data': '{base}',
|
|
},
|
|
|
|
# Downstream distributors can overwrite the default install scheme.
|
|
diff --git a/Modules/getpath.py b/Modules/getpath.py
|
|
index e743161..7883b93 100644
|
|
--- a/Modules/getpath.py
|
|
+++ b/Modules/getpath.py
|
|
@@ -285,6 +285,7 @@ if EXE_SUFFIX and not hassuffix(program_name, EXE_SUFFIX) and isxfile(program_na
|
|
if py_setpath:
|
|
# When Py_SetPath has been called, executable defaults to
|
|
# the real executable path.
|
|
+
|
|
if not executable:
|
|
executable = real_executable
|
|
|