pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/lang



Module Name:    pkgsrc
Committed By:   adam
Date:           Tue May  4 05:16:07 UTC 2021

Modified Files:
        pkgsrc/lang/py38-html-docs: Makefile distinfo
        pkgsrc/lang/python38: PLIST dist.mk distinfo
        pkgsrc/lang/python38/patches: patch-configure patch-pyconfig.h.in
            patch-setup.py
Removed Files:
        pkgsrc/lang/python38/patches: patch-Lib___osx__support.py
            patch-Lib_ctypes_macholib_dyld.py
            patch-Lib_ctypes_test_test__macholib.py
            patch-Lib_distutils_tests_test__build__ext.py
            patch-Lib_test_test__bytes.py patch-Lib_test_test__platform.py
            patch-Lib_test_test__unicode.py
            patch-Mac_BuildScript_build-installer.py patch-Mac_Tools_pythonw.c
            patch-Modules___ctypes_callbacks.c
            patch-Modules___ctypes_callproc.c patch-Modules___ctypes_ctypes.h
            patch-Modules___ctypes_malloc__closure.c
            patch-Modules___decimal_libmpdec_mpdecimal.h
            patch-Modules_getpath.c

Log Message:
python38: updated to 3.8.10

Python 3.8.10 final

Security
bpo-43434: Creating a sqlite3.Connection object now also produces a sqlite3.connect auditing event. Previously this event was only produced by sqlite3.connect() calls. Patch by Erlend E. Aasland.
bpo-43472: Ensures interpreter-level audit hooks receive the cpython.PyInterpreterState_New event when called through the _xxsubinterpreters module.
bpo-43075: Fix Regular Expression Denial of Service (ReDoS) vulnerability in urllib.request.AbstractBasicAuthHandler. The ReDoS-vulnerable regex has quadratic worst-case complexity and it allows 
cause a denial of service when identifying crafted invalid RFCs. This ReDoS issue is on the client side and needs remote attackers to control the HTTP server.

Core and Builtins
bpo-43105: Importlib now resolves relative paths when creating module spec objects from file locations.
bpo-42924: Fix bytearray repetition incorrectly copying data from the start of the buffer, even if the data is offset within the buffer (e.g. after reassigning a slice at the start of the bytearray 
to a shorter byte string).

Library
bpo-43993: Update bundled pip to 21.1.1.
bpo-43937: Fixed the turtle module working with non-default root window.
bpo-43930: Update bundled pip to 21.1 and setuptools to 56.0.0
bpo-43920: OpenSSL 3.0.0: load_verify_locations() now returns a consistent error message when cadata contains no valid certificate.
bpo-43607: urllib can now convert Windows paths with \\?\ prefixes into URL paths.
bpo-43284: platform.win32_ver derives the windows version from sys.getwindowsversion().platform_version which in turn derives the version from kernel32.dll (which can be of a different version than 
Windows itself). Therefore change the platform.win32_ver to determine the version using the platform module’s _syscmd_ver private function to return an accurate version.
bpo-42248: [Enum] ensure exceptions raised in _missing__ are released
bpo-43799: OpenSSL 3.0.0: define OPENSSL_API_COMPAT 1.1.1 to suppress deprecation warnings. Python requires OpenSSL 1.1.1 APIs.
bpo-43794: Add ssl.OP_IGNORE_UNEXPECTED_EOF constants (OpenSSL 3.0.0)
bpo-43789: OpenSSL 3.0.0: Don’t call the password callback function a second time when first call has signaled an error condition.
bpo-43788: The header files for ssl error codes are now OpenSSL version-specific. Exceptions will now show correct reason and library codes. The make_ssl_data.py script has been rewritten to use 
OpenSSL’s text file with error codes.
bpo-43655: tkinter dialog windows are now recognized as dialogs by window managers on macOS and X Window.
bpo-43534: turtle.textinput() and turtle.numinput() create now a transient window working on behalf of the canvas window.
bpo-43522: Fix problem with hostname_checks_common_name. OpenSSL does not copy hostflags from struct SSL_CTX to struct SSL.
bpo-42967: Allow bytes separator argument in urllib.parse.parse_qs and urllib.parse.parse_qsl when parsing str query strings. Previously, this raised a TypeError.
bpo-43176: Fixed processing of a dataclass that inherits from a frozen dataclass with no fields. It is now correctly detected as an error.
bpo-34463: Fixed discrepancy between traceback and the interpreter in formatting of SyntaxError with lineno not set (traceback was changed to match interpreter).
bpo-41735: Fix thread locks in zlib module may go wrong in rare case. Patch by Ma Lin.
bpo-26053: Fixed bug where the pdb interactive run command echoed the args from the shell command line, even if those have been overridden at the pdb prompt.
bpo-36470: Fix dataclasses with InitVars and replace(). Patch by Claudiu Popa.
bpo-28577: The hosts method on 32-bit prefix length IPv4Networks and 128-bit prefix IPv6Networks now returns a list containing the single Address instead of an empty list.
bpo-32745: Fix a regression in the handling of ctypes’ ctypes.c_wchar_p type: embedded null characters would cause a ValueError to be raised. Patch by Zackery Spytz.

Documentation
bpo-43959: The documentation on the PyContextVar C-API was clarified.
bpo-43938: Update dataclasses documentation to express that FrozenInstanceError is derived from AttributeError.
bpo-43739: Fixing the example code in Doc/extending/extending.rst to declare and initialize the pmodule variable to be of the right type.

Tests
bpo-43842: Fix a race condition in the SMTP test of test_logging. Don’t close a file descriptor (socket) from a different thread while asyncore.loop() is polling the file descriptor. Patch by Victor 
Stinner.
bpo-43811: Tests multiple OpenSSL versions on GitHub Actions. Use ccache to speed up testing.
bpo-43791: OpenSSL 3.0.0: Disable testing of legacy protocols TLS 1.0 and 1.1. Tests are failing with TLSV1_ALERT_INTERNAL_ERROR.

Windows
bpo-35306: Avoid raising errors from pathlib.Path.exists() when passed an invalid filename.
bpo-38822: Fixed os.stat() failing on inaccessible directories with a trailing slash, rather than falling back to the parent directory’s metadata. This implicitly affected os.path.exists() and 
os.path.isdir().
bpo-26227: Fixed decoding of host names in socket.gethostbyaddr() and socket.gethostbyname_ex().
bpo-43745: Actually updates Windows release to OpenSSL 1.1.1k. Earlier releases were mislabelled and actually included 1.1.1i again.
bpo-43492: Upgrade Windows installer to use SQLite 3.35.5.

macOS
bpo-44009: Provide “python3.x-intel64” executable to allow reliably forcing macOS universal2 framework builds to run under Rosetta 2 Intel-64 emulation on Apple Silicon Macs. This can be useful for 
testing or when universal2 wheels are not yet available.
bpo-41100: As of 3.8.10, Python now supports building and running on macOS 11 (Big Sur) and on Apple Silicon Macs (based on the ARM64 architecture). A new universal build variant, universal2, is also 
available to natively support both ARM64 and Intel 64 in one set of executables. This backport from Python 3.9 does not include support for “weaklinking”; to support a range of macOS versions, 
continue to target for and build on the oldest version in the range; for 3.8.x, the universal2 variant is only useful on macOS 11 or later.
bpo-43492: Update macOS installer to use SQLite 3.35.4.

IDLE
bpo-43655: IDLE dialog windows are now recognized as dialogs by window managers on macOS and X Window.

C API
bpo-43962: _PyInterpreterState_IDIncref() now calls _PyInterpreterState_IDInitref() and always increments id_refcount. Previously, calling _xxsubinterpreters.get_current() could create an id_refcount 
inconsistency when a _xxsubinterpreters.InterpreterID object was deallocated. Patch by Victor Stinner.


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 pkgsrc/lang/py38-html-docs/Makefile \
    pkgsrc/lang/py38-html-docs/distinfo
cvs rdiff -u -r1.9 -r1.10 pkgsrc/lang/python38/PLIST
cvs rdiff -u -r1.10 -r1.11 pkgsrc/lang/python38/dist.mk
cvs rdiff -u -r1.18 -r1.19 pkgsrc/lang/python38/distinfo
cvs rdiff -u -r1.1 -r0 \
    pkgsrc/lang/python38/patches/patch-Lib___osx__support.py \
    pkgsrc/lang/python38/patches/patch-Lib_ctypes_macholib_dyld.py \
    pkgsrc/lang/python38/patches/patch-Lib_ctypes_test_test__macholib.py \
    pkgsrc/lang/python38/patches/patch-Lib_distutils_tests_test__build__ext.py \
    pkgsrc/lang/python38/patches/patch-Lib_test_test__bytes.py \
    pkgsrc/lang/python38/patches/patch-Lib_test_test__platform.py \
    pkgsrc/lang/python38/patches/patch-Lib_test_test__unicode.py \
    pkgsrc/lang/python38/patches/patch-Mac_BuildScript_build-installer.py \
    pkgsrc/lang/python38/patches/patch-Mac_Tools_pythonw.c \
    pkgsrc/lang/python38/patches/patch-Modules___ctypes_callbacks.c \
    pkgsrc/lang/python38/patches/patch-Modules___ctypes_callproc.c \
    pkgsrc/lang/python38/patches/patch-Modules___ctypes_ctypes.h \
    pkgsrc/lang/python38/patches/patch-Modules___ctypes_malloc__closure.c \
    pkgsrc/lang/python38/patches/patch-Modules___decimal_libmpdec_mpdecimal.h \
    pkgsrc/lang/python38/patches/patch-Modules_getpath.c
cvs rdiff -u -r1.7 -r1.8 pkgsrc/lang/python38/patches/patch-configure
cvs rdiff -u -r1.2 -r1.3 pkgsrc/lang/python38/patches/patch-pyconfig.h.in
cvs rdiff -u -r1.5 -r1.6 pkgsrc/lang/python38/patches/patch-setup.py

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/lang/py38-html-docs/Makefile
diff -u pkgsrc/lang/py38-html-docs/Makefile:1.10 pkgsrc/lang/py38-html-docs/Makefile:1.11
--- pkgsrc/lang/py38-html-docs/Makefile:1.10    Sat Apr  3 06:22:06 2021
+++ pkgsrc/lang/py38-html-docs/Makefile Tue May  4 05:16:07 2021
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.10 2021/04/03 06:22:06 adam Exp $
+# $NetBSD: Makefile,v 1.11 2021/05/04 05:16:07 adam Exp $
 
-VERS=          3.8.9
+VERS=          3.8.10
 DISTNAME=      python-${VERS}-docs-html
 PKGNAME=       py38-html-docs-${VERS}
 CATEGORIES=    lang python
Index: pkgsrc/lang/py38-html-docs/distinfo
diff -u pkgsrc/lang/py38-html-docs/distinfo:1.10 pkgsrc/lang/py38-html-docs/distinfo:1.11
--- pkgsrc/lang/py38-html-docs/distinfo:1.10    Sat Apr  3 06:22:06 2021
+++ pkgsrc/lang/py38-html-docs/distinfo Tue May  4 05:16:07 2021
@@ -1,6 +1,6 @@
-$NetBSD: distinfo,v 1.10 2021/04/03 06:22:06 adam Exp $
+$NetBSD: distinfo,v 1.11 2021/05/04 05:16:07 adam Exp $
 
-SHA1 (python-3.8.9-docs-html.tar.bz2) = 0e8a0ebc11946120a5251d1bffbaade125f796a1
-RMD160 (python-3.8.9-docs-html.tar.bz2) = ee7a77c81275441a41c8a9c057f4ff3e89824be1
-SHA512 (python-3.8.9-docs-html.tar.bz2) = 384f2326d1ab3c08ade6a1e42edbf7a8cf9e15638297ef5413d1dad55299daf62a92e87c7e13e4c6f042be2432604a0500fe7bc5a0a8816f9024ca28d068a472
-Size (python-3.8.9-docs-html.tar.bz2) = 6593775 bytes
+SHA1 (python-3.8.10-docs-html.tar.bz2) = 1e1ffe6cabfe5f0ac6ea4bc6858580a8c86ff42d
+RMD160 (python-3.8.10-docs-html.tar.bz2) = 89af0bf8fcf4c5985616e5273eb0ee02789ffbbf
+SHA512 (python-3.8.10-docs-html.tar.bz2) = 74a94ecbcba83f3392f08e36b0697f4213ff9118c68363706d0151c29c50fa12a0e61fd821bb1c16166833872a996e6b53126ba5c9e1c3aa606a57ade5086eb6
+Size (python-3.8.10-docs-html.tar.bz2) = 6604538 bytes

Index: pkgsrc/lang/python38/PLIST
diff -u pkgsrc/lang/python38/PLIST:1.9 pkgsrc/lang/python38/PLIST:1.10
--- pkgsrc/lang/python38/PLIST:1.9      Sat Feb 20 19:29:06 2021
+++ pkgsrc/lang/python38/PLIST  Tue May  4 05:16:07 2021
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.9 2021/02/20 19:29:06 adam Exp $
+@comment $NetBSD: PLIST,v 1.10 2021/05/04 05:16:07 adam Exp $
 bin/2to3-${PY_VER_SUFFIX}
 bin/pydoc${PY_VER_SUFFIX}
 bin/python${PY_VER_SUFFIX}
@@ -1403,8 +1403,8 @@ lib/python${PY_VER_SUFFIX}/ensurepip/__i
 lib/python${PY_VER_SUFFIX}/ensurepip/__main__.py
 lib/python${PY_VER_SUFFIX}/ensurepip/__main__.pyc
 lib/python${PY_VER_SUFFIX}/ensurepip/__main__.pyo
-lib/python${PY_VER_SUFFIX}/ensurepip/_bundled/pip-20.2.3-py2.py3-none-any.whl
-lib/python${PY_VER_SUFFIX}/ensurepip/_bundled/setuptools-49.2.1-py3-none-any.whl
+lib/python${PY_VER_SUFFIX}/ensurepip/_bundled/pip-21.1.1-py3-none-any.whl
+lib/python${PY_VER_SUFFIX}/ensurepip/_bundled/setuptools-56.0.0-py3-none-any.whl
 lib/python${PY_VER_SUFFIX}/ensurepip/_uninstall.py
 lib/python${PY_VER_SUFFIX}/ensurepip/_uninstall.pyc
 lib/python${PY_VER_SUFFIX}/ensurepip/_uninstall.pyo
@@ -3066,6 +3066,7 @@ lib/python${PY_VER_SUFFIX}/test/multibyt
 lib/python${PY_VER_SUFFIX}/test/multibytecodec_support.pyc
 lib/python${PY_VER_SUFFIX}/test/multibytecodec_support.pyo
 lib/python${PY_VER_SUFFIX}/test/nokia.pem
+lib/python${PY_VER_SUFFIX}/test/nosan.pem
 lib/python${PY_VER_SUFFIX}/test/nullbytecert.pem
 lib/python${PY_VER_SUFFIX}/test/nullcert.pem
 lib/python${PY_VER_SUFFIX}/test/outstanding_bugs.py

Index: pkgsrc/lang/python38/dist.mk
diff -u pkgsrc/lang/python38/dist.mk:1.10 pkgsrc/lang/python38/dist.mk:1.11
--- pkgsrc/lang/python38/dist.mk:1.10   Sat Apr  3 06:22:06 2021
+++ pkgsrc/lang/python38/dist.mk        Tue May  4 05:16:07 2021
@@ -1,6 +1,6 @@
-# $NetBSD: dist.mk,v 1.10 2021/04/03 06:22:06 adam Exp $
+# $NetBSD: dist.mk,v 1.11 2021/05/04 05:16:07 adam Exp $
 
-PY_DISTVERSION=        3.8.9
+PY_DISTVERSION=        3.8.10
 DISTNAME=      Python-${PY_DISTVERSION}
 EXTRACT_SUFX=  .tar.xz
 DISTINFO_FILE= ${.CURDIR}/../../lang/python38/distinfo

Index: pkgsrc/lang/python38/distinfo
diff -u pkgsrc/lang/python38/distinfo:1.18 pkgsrc/lang/python38/distinfo:1.19
--- pkgsrc/lang/python38/distinfo:1.18  Sat Apr  3 06:22:06 2021
+++ pkgsrc/lang/python38/distinfo       Tue May  4 05:16:07 2021
@@ -1,31 +1,16 @@
-$NetBSD: distinfo,v 1.18 2021/04/03 06:22:06 adam Exp $
+$NetBSD: distinfo,v 1.19 2021/05/04 05:16:07 adam Exp $
 
-SHA1 (Python-3.8.9.tar.xz) = ea40651135adc4126a60a45093d100722610f4de
-RMD160 (Python-3.8.9.tar.xz) = fb13a5a53796ecc6acce509cf4fe49f3be61666e
-SHA512 (Python-3.8.9.tar.xz) = e7872a6767f9a8941e8fd76d384fc1a528bcee18514ad13fcb4d3d59f6075c6283e4c933a728b9ae68b9606da2f0a3ae0208e46fbefe3bd7899ced61da5dcf47
-Size (Python-3.8.9.tar.xz) = 18271948 bytes
-SHA1 (patch-Lib___osx__support.py) = 95c729132e5bdbda72789f02b37ed111d0d9d11e
-SHA1 (patch-Lib_ctypes_macholib_dyld.py) = 3acfa836e06bb1ca994357bc4b687af1ce1641e0
-SHA1 (patch-Lib_ctypes_test_test__macholib.py) = db352894c47cbb4bed4905b4a7dde272577c65d8
+SHA1 (Python-3.8.10.tar.xz) = f6579351d42a81c77b55aa4ca8b1280b4f5b37f9
+RMD160 (Python-3.8.10.tar.xz) = eaffc74bd79021ef7a6309f494ca387860e8af9c
+SHA512 (Python-3.8.10.tar.xz) = 0be69705483ff9692e12048a96180e586f9d84c8d53066629f7fb2389585eb75c0f3506bb8182936e322508f58b71f4d8c6dfebbab9049b31b49da11d3b98e80
+Size (Python-3.8.10.tar.xz) = 18433456 bytes
 SHA1 (patch-Lib_ctypes_util.py) = 032cc99ebad93ddddfd89073c60424a952e3faa3
 SHA1 (patch-Lib_distutils_command_install.py) = 6fc6f5d918b7581fc62cd0fe55857ee932c3a341
 SHA1 (patch-Lib_distutils_sysconfig.py) = 6822eafb4dfded86d7f7353831816aeb8119e6cf
-SHA1 (patch-Lib_distutils_tests_test__build__ext.py) = 481dce36ddb258707470d18f84c300700326dc1e
 SHA1 (patch-Lib_distutils_unixccompiler.py) = 2e65a8dd5dd3fe25957206c062106fa7a6fc4e69
 SHA1 (patch-Lib_lib2to3_pgen2_driver.py) = 5d6dab14197f27363394ff1aeee22a8ced8026d2
 SHA1 (patch-Lib_sysconfig.py) = a4f009ed73ebbd9d9c4bf7e12b7981182ed8fd7c
-SHA1 (patch-Lib_test_test__bytes.py) = 6de71f3d00cc2079f1c2fcf1a56eca993a4dc43a
-SHA1 (patch-Lib_test_test__platform.py) = ce6825dba49024fcd200638614209b31ae24df0a
-SHA1 (patch-Lib_test_test__unicode.py) = 915a80e2c7b9e056e58fc8600b099e86634f28dd
-SHA1 (patch-Mac_BuildScript_build-installer.py) = 731aa225a7cf33a21431bbd34d50cb5f629ab0df
-SHA1 (patch-Mac_Tools_pythonw.c) = aa2e7bfc5c515d48916f817d04fe2bb9775ea3c3
 SHA1 (patch-Makefile.pre.in) = d42f9f5bca1dd663f64122dc95b49111452fe6e8
-SHA1 (patch-Modules___ctypes_callbacks.c) = 99d821b1db08e680bc8ed3faecbda07f31e389e0
-SHA1 (patch-Modules___ctypes_callproc.c) = ec013388ecf599d3faad20a3945e852bed94a5e7
-SHA1 (patch-Modules___ctypes_ctypes.h) = bfa5574db6be78f71584e6b0b92965804cb469ba
-SHA1 (patch-Modules___ctypes_malloc__closure.c) = eadb811e15c4b821790480d7c4a4908753773e0f
-SHA1 (patch-Modules___decimal_libmpdec_mpdecimal.h) = 3710f2e524a8786470d01e7b2fc812600f0ec169
-SHA1 (patch-Modules_getpath.c) = c6930e41e57e31e3f46b4b9e0d0f5fcc8a0e5163
 SHA1 (patch-Modules_makesetup) = a06786eebffadecedba5e3a50a9785fb47613567
 SHA1 (patch-Modules_nismodule.c) = 1bafe9b06359586d027a77011b103877590d947d
 SHA1 (patch-Modules_posixmodule.c) = ea24a1aa19b596b5d4457a4eff761e516406145f
@@ -35,6 +20,6 @@ SHA1 (patch-Modules_timemodule.c) = 10dc
 SHA1 (patch-Python_bootstrap__hash.c) = 2e7d24ded1369624b2983b15784988517a9697a5
 SHA1 (patch-Python_pytime.c) = 41981f821e0b420abcb0334312148deb9a9fed5e
 SHA1 (patch-Python_thread__pthread.h) = fb81eaa604b4ed7c1b64c3f4731d58a8aee257be
-SHA1 (patch-configure) = 09999ef507c89a53df5106e08d436e7c439286fb
-SHA1 (patch-pyconfig.h.in) = 6e24f401286768641c7d69dd75cfe18f1d8df1e7
-SHA1 (patch-setup.py) = f5cd4ec25c8a5725a39970a097ddfb7068370db8
+SHA1 (patch-configure) = 5607f103279127b4465294af1f9601a3c1e3e89e
+SHA1 (patch-pyconfig.h.in) = dc98ffe351623df2e8453e9350c30d705f4e99bd
+SHA1 (patch-setup.py) = 0b05bdc61289ee75758dcf8e422b988ff2067cba

Index: pkgsrc/lang/python38/patches/patch-configure
diff -u pkgsrc/lang/python38/patches/patch-configure:1.7 pkgsrc/lang/python38/patches/patch-configure:1.8
--- pkgsrc/lang/python38/patches/patch-configure:1.7    Sat Apr  3 06:22:06 2021
+++ pkgsrc/lang/python38/patches/patch-configure        Tue May  4 05:16:07 2021
@@ -1,30 +1,13 @@
-$NetBSD: patch-configure,v 1.7 2021/04/03 06:22:06 adam Exp $
+$NetBSD: patch-configure,v 1.8 2021/05/04 05:16:07 adam Exp $
 
 - Use gnu99 instead of c99 to avoid "alloca() undefined" problems.
 - Fix linking on Darwin; don't use -stack_size.
 - Changes for consistency across pkgsrc platforms.
 - Simplify _sysconfigdata to include only platform name.
-- Support for macOS 11 and Apple Silicon (ARM). Mostly backported from:
-  https://github.com/python/cpython/pull/22855
 
---- configure.orig     2021-04-02 10:32:10.000000000 +0000
+--- configure.orig     2021-05-03 09:47:56.000000000 +0000
 +++ configure
-@@ -1490,9 +1490,11 @@ Optional Packages:
-   --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
-   --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
-   --with-universal-archs=ARCH
--                          select architectures for universal build ("32-bit",
--                          "64-bit", "3-way", "intel", "intel-32", "intel-64",
--                          or "all")
-+                          specify the kind of universal binary that should be
-+                          created. this option is only valid when
-+                          --enable-universalsdk is set; options are:
-+                          ("universal2", "32-bit", "64-bit", "3-way", "intel",
-+                          "intel-32", "intel-64", or "all") see Mac/README.rst
-   --with-framework-name=FRAMEWORK
-                           specify an alternate name of the framework built
-                           with --enable-framework
-@@ -6912,7 +6914,7 @@ UNIVERSAL_ARCH_FLAGS=
+@@ -6917,7 +6917,7 @@ UNIVERSAL_ARCH_FLAGS=
  # tweak BASECFLAGS based on compiler and platform
  case $GCC in
  yes)
@@ -33,38 +16,7 @@ $NetBSD: patch-configure,v 1.7 2021/04/0
  
      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -Wextra" >&5
  $as_echo_n "checking for -Wextra... " >&6; }
-@@ -7391,6 +7393,11 @@ $as_echo "$CC" >&6; }
-                LIPO_32BIT_FLAGS="-extract ppc7400 -extract i386"
-                ARCH_RUN_32BIT="/usr/bin/arch -i386 -ppc"
-                ;;
-+            universal2)
-+               UNIVERSAL_ARCH_FLAGS="-arch arm64 -arch x86_64"
-+               LIPO_32BIT_FLAGS=""
-+               ARCH_RUN_32BIT="true"
-+              ;;
-             intel)
-                UNIVERSAL_ARCH_FLAGS="-arch i386 -arch x86_64"
-                LIPO_32BIT_FLAGS="-extract i386"
-@@ -7412,7 +7419,7 @@ $as_echo "$CC" >&6; }
-                ARCH_RUN_32BIT="/usr/bin/arch -i386 -ppc"
-                ;;
-             *)
--               as_fn_error $? "proper usage is --with-universal-arch=32-bit|64-bit|all|intel|3-way" "$LINENO" 5
-+               as_fn_error $? "proper usage is --with-universal-arch=universal2|32-bit|64-bit|all|intel|3-way" "$LINENO" 5
-                ;;
-             esac
- 
-@@ -9276,6 +9283,9 @@ fi
-               ;;
-       ppc)
-               MACOSX_DEFAULT_ARCH="ppc64"
-+              ;;
-+      arm64)
-+              MACOSX_DEFAULT_ARCH="arm64"
-               ;;
-       *)
-               as_fn_error $? "Unexpected output of 'arch' on OSX" "$LINENO" 5
-@@ -9549,7 +9559,6 @@ then
+@@ -9564,7 +9569,6 @@ then
                # to ensure that tests don't crash
                # Note: This matches the value of THREAD_STACK_SIZE in
                # thread_pthread.h
@@ -72,39 +24,7 @@ $NetBSD: patch-configure,v 1.7 2021/04/0
  
                if test "$enable_framework"
                then
-@@ -11837,6 +11846,31 @@ $as_echo "no" >&6; }
- 
- fi
- rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for _dyld_shared_cache_contains_path" >&5
-+$as_echo_n "checking for _dyld_shared_cache_contains_path... " >&6; }
-+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-+/* end confdefs.h.  */
-+#include <mach-o/dyld.h>
-+int
-+main ()
-+{
-+void *x=_dyld_shared_cache_contains_path
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+if ac_fn_c_try_compile "$LINENO"; then :
-+
-+$as_echo "#define HAVE_DYLD_SHARED_CACHE_CONTAINS_PATH 1" >>confdefs.h
-+
-+   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-+$as_echo "yes" >&6; }
-+else
-+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-+$as_echo "no" >&6; }
-+
-+fi
-+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- 
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for memfd_create" >&5
- $as_echo_n "checking for memfd_create... " >&6; }
-@@ -14316,10 +14350,10 @@ _ACEOF
+@@ -14356,10 +14385,10 @@ _ACEOF
  if ac_fn_c_try_compile "$LINENO"; then :
  
  
@@ -117,7 +37,7 @@ $NetBSD: patch-configure,v 1.7 2021/04/0
    if test "$ax_cv_c_float_words_bigendian" = unknown; then
      ax_cv_c_float_words_bigendian=no
    else
-@@ -15204,7 +15238,7 @@ _ACEOF
+@@ -15244,7 +15273,7 @@ _ACEOF
  fi
  
  
@@ -126,7 +46,7 @@ $NetBSD: patch-configure,v 1.7 2021/04/0
  
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking LDVERSION" >&5
  $as_echo_n "checking LDVERSION... " >&6; }
-@@ -15221,11 +15255,7 @@ else
+@@ -15261,11 +15290,7 @@ else
  fi
  
  

Index: pkgsrc/lang/python38/patches/patch-pyconfig.h.in
diff -u pkgsrc/lang/python38/patches/patch-pyconfig.h.in:1.2 pkgsrc/lang/python38/patches/patch-pyconfig.h.in:1.3
--- pkgsrc/lang/python38/patches/patch-pyconfig.h.in:1.2        Tue Nov 17 19:33:15 2020
+++ pkgsrc/lang/python38/patches/patch-pyconfig.h.in    Tue May  4 05:16:07 2021
@@ -1,8 +1,6 @@
-$NetBSD: patch-pyconfig.h.in,v 1.2 2020/11/17 19:33:15 sjmulder Exp $
+$NetBSD: patch-pyconfig.h.in,v 1.3 2021/05/04 05:16:07 adam Exp $
 
- - detect netcan/can.h on NetBSD
- - Support for macOS 11 and Apple Silicon (ARM). Mostly backported from:
-   https://github.com/python/cpython/pull/22855
+Detect netcan/can.h on NetBSD
 
 --- pyconfig.h.in.orig 2020-09-23 12:36:32.000000000 +0000
 +++ pyconfig.h.in
@@ -16,13 +14,3 @@ $NetBSD: patch-pyconfig.h.in,v 1.2 2020/
  /* Define to 1 if you have the <linux/netlink.h> header file. */
  #undef HAVE_LINUX_NETLINK_H
  
-@@ -772,6 +775,9 @@
- /* Define if you have the 'prlimit' functions. */
- #undef HAVE_PRLIMIT
- 
-+/* Define if you have the '_dyld_shared_cache_contains_path' function. */
-+#undef HAVE_DYLD_SHARED_CACHE_CONTAINS_PATH
-+
- /* Define to 1 if you have the <process.h> header file. */
- #undef HAVE_PROCESS_H
- 

Index: pkgsrc/lang/python38/patches/patch-setup.py
diff -u pkgsrc/lang/python38/patches/patch-setup.py:1.5 pkgsrc/lang/python38/patches/patch-setup.py:1.6
--- pkgsrc/lang/python38/patches/patch-setup.py:1.5     Thu Nov 19 16:29:42 2020
+++ pkgsrc/lang/python38/patches/patch-setup.py Tue May  4 05:16:07 2021
@@ -1,25 +1,23 @@
-$NetBSD: patch-setup.py,v 1.5 2020/11/19 16:29:42 bsiegert Exp $
+$NetBSD: patch-setup.py,v 1.6 2021/05/04 05:16:07 adam Exp $
 
- - Disable certain modules, so they can be built as separate packages.
- - Do not look for ncursesw.
- - Assume panel_library is correct; this is a fix for ncurses' gnupanel
-   which will get transformed to panel in buildlink.
- - Also look for uuid/uuid.h.
- - Support for macOS 11 and Apple Silicon (ARM). Mostly backported from:
-   https://github.com/python/cpython/pull/22855
+- Disable certain modules, so they can be built as separate packages.
+- Do not look for ncursesw.
+- Assume panel_library is correct; this is a fix for ncurses' gnupanel
+  which will get transformed to panel in buildlink.
+- Also look for uuid/uuid.h.
 
---- setup.py.orig      2020-09-23 12:36:32.000000000 +0000
+--- setup.py.orig      2021-05-03 09:47:56.000000000 +0000
 +++ setup.py
-@@ -10,7 +10,7 @@ import sys
- import sysconfig
+@@ -11,7 +11,7 @@ import sysconfig
  from glob import glob, escape
+ import _osx_support
  
 -from distutils import log
 +from distutils import log, text_file
  from distutils.command.build_ext import build_ext
  from distutils.command.build_scripts import build_scripts
  from distutils.command.install import install
-@@ -24,7 +24,7 @@ from distutils.spawn import find_executa
+@@ -25,7 +25,7 @@ from distutils.spawn import find_executa
  TEST_EXTENSIONS = True
  
  # This global variable is used to hold the list of modules to be disabled.
@@ -28,24 +26,7 @@ $NetBSD: patch-setup.py,v 1.5 2020/11/19
  
  
  def get_platform():
-@@ -188,6 +188,16 @@ def is_macosx_sdk_path(path):
-                 or path.startswith('/Library/') )
- 
- 
-+def grep_headers_for(function, headers):
-+    for header in headers:
-+        try:
-+            with open(header, 'r') as f:
-+                if function in f.read():
-+                    return True
-+        except UnicodeDecodeError:
-+            pass
-+    return False
-+
- def find_file(filename, std_dirs, paths):
-     """Searches for the directory where a given file is located,
-     and returns a possibly-empty list of additional directories, or None
-@@ -645,15 +655,15 @@ class PyBuildExt(build_ext):
+@@ -630,15 +630,15 @@ class PyBuildExt(build_ext):
                          add_dir_to_list(dir_list, directory)
  
      def configure_compiler(self):
@@ -70,7 +51,7 @@ $NetBSD: patch-setup.py,v 1.5 2020/11/19
          self.add_multiarch_paths()
          self.add_ldflags_cppflags()
  
-@@ -701,6 +711,9 @@ class PyBuildExt(build_ext):
+@@ -686,6 +686,9 @@ class PyBuildExt(build_ext):
              self.lib_dirs += ['/usr/lib/hpux64', '/usr/lib/hpux32']
  
          if MACOS:
@@ -80,7 +61,7 @@ $NetBSD: patch-setup.py,v 1.5 2020/11/19
              # This should work on any unixy platform ;-)
              # If the user has bothered specifying additional -I and -L flags
              # in OPT and LDFLAGS we might as well use them here.
-@@ -912,8 +925,6 @@ class PyBuildExt(build_ext):
+@@ -897,8 +900,6 @@ class PyBuildExt(build_ext):
          # use the same library for the readline and curses modules.
          if 'curses' in readline_termcap_library:
              curses_library = readline_termcap_library
@@ -89,7 +70,7 @@ $NetBSD: patch-setup.py,v 1.5 2020/11/19
          # Issue 36210: OSS provided ncurses does not link on AIX
          # Use IBM supplied 'curses' for successful build of _curses
          elif AIX and self.compiler.find_library_file(self.lib_dirs, 'curses'):
-@@ -1015,8 +1026,7 @@ class PyBuildExt(build_ext):
+@@ -1000,8 +1001,7 @@ class PyBuildExt(build_ext):
          # If the curses module is enabled, check for the panel module
          # _curses_panel needs some form of ncurses
          skip_curses_panel = True if AIX else False
@@ -99,7 +80,7 @@ $NetBSD: patch-setup.py,v 1.5 2020/11/19
              self.add(Extension('_curses_panel', ['_curses_panel.c'],
                                 include_dirs=curses_includes,
                                 define_macros=curses_defines,
-@@ -1263,6 +1273,31 @@ class PyBuildExt(build_ext):
+@@ -1248,6 +1248,31 @@ class PyBuildExt(build_ext):
          dbm_order = ['gdbm']
          # The standard Unix dbm module:
          if not CYGWIN:
@@ -131,7 +112,7 @@ $NetBSD: patch-setup.py,v 1.5 2020/11/19
              config_args = [arg.strip("'")
                             for arg in sysconfig.get_config_var("CONFIG_ARGS").split()]
              dbm_args = [arg for arg in config_args
-@@ -1274,7 +1309,7 @@ class PyBuildExt(build_ext):
+@@ -1259,7 +1284,7 @@ class PyBuildExt(build_ext):
              dbmext = None
              for cand in dbm_order:
                  if cand == "ndbm":
@@ -140,7 +121,7 @@ $NetBSD: patch-setup.py,v 1.5 2020/11/19
                          # Some systems have -lndbm, others have -lgdbm_compat,
                          # others don't have either
                          if self.compiler.find_library_file(self.lib_dirs,
-@@ -1674,6 +1709,8 @@ class PyBuildExt(build_ext):
+@@ -1659,6 +1684,8 @@ class PyBuildExt(build_ext):
      def detect_uuid(self):
          # Build the _uuid module if possible
          uuid_incs = find_file("uuid.h", self.inc_dirs, ["/usr/include/uuid"])
@@ -149,133 +130,7 @@ $NetBSD: patch-setup.py,v 1.5 2020/11/19
          if uuid_incs is not None:
              if self.compiler.find_library_file(self.lib_dirs, 'uuid'):
                  uuid_libs = ['uuid']
-@@ -1956,43 +1993,17 @@ class PyBuildExt(build_ext):
-                            library_dirs=added_lib_dirs))
-         return True
- 
--    def configure_ctypes_darwin(self, ext):
--        # Darwin (OS X) uses preconfigured files, in
--        # the Modules/_ctypes/libffi_osx directory.
--        ffi_srcdir = os.path.abspath(os.path.join(self.srcdir, 'Modules',
--                                                  '_ctypes', 'libffi_osx'))
--        sources = [os.path.join(ffi_srcdir, p)
--                   for p in ['ffi.c',
--                             'x86/darwin64.S',
--                             'x86/x86-darwin.S',
--                             'x86/x86-ffi_darwin.c',
--                             'x86/x86-ffi64.c',
--                             'powerpc/ppc-darwin.S',
--                             'powerpc/ppc-darwin_closure.S',
--                             'powerpc/ppc-ffi_darwin.c',
--                             'powerpc/ppc64-darwin_closure.S',
--                             ]]
--
--        # Add .S (preprocessed assembly) to C compiler source extensions.
--        self.compiler.src_extensions.append('.S')
--
--        include_dirs = [os.path.join(ffi_srcdir, 'include'),
--                        os.path.join(ffi_srcdir, 'powerpc')]
--        ext.include_dirs.extend(include_dirs)
--        ext.sources.extend(sources)
--        return True
--
-     def configure_ctypes(self, ext):
--        if not self.use_system_libffi:
--            if MACOS:
--                return self.configure_ctypes_darwin(ext)
--            print('INFO: Could not locate ffi libs and/or headers')
--            return False
-         return True
- 
-     def detect_ctypes(self):
-         # Thomas Heller's _ctypes module
--        self.use_system_libffi = False
-+
-+        if (not sysconfig.get_config_var("LIBFFI_INCLUDEDIR") and MACOS):
-+            self.use_system_libffi = True
-+        else:
-+            self.use_system_libffi = '--with-system-ffi' in sysconfig.get_config_var("CONFIG_ARGS")
-+
-         include_dirs = []
-         extra_compile_args = []
-         extra_link_args = []
-@@ -2005,11 +2016,9 @@ class PyBuildExt(build_ext):
- 
-         if MACOS:
-             sources.append('_ctypes/malloc_closure.c')
--            sources.append('_ctypes/darwin/dlfcn_simple.c')
-+            extra_compile_args.append('-DUSING_MALLOC_CLOSURE_DOT_C=1')
-             extra_compile_args.append('-DMACOSX')
-             include_dirs.append('_ctypes/darwin')
--            # XXX Is this still needed?
--            # extra_link_args.extend(['-read_only_relocs', 'warning'])
- 
-         elif HOST_PLATFORM == 'sunos5':
-             # XXX This shouldn't be necessary; it appears that some
-@@ -2039,31 +2048,48 @@ class PyBuildExt(build_ext):
-                                sources=['_ctypes/_ctypes_test.c'],
-                                libraries=['m']))
- 
-+        ffi_inc = sysconfig.get_config_var("LIBFFI_INCLUDEDIR")
-+        ffi_lib = None
-+
-         ffi_inc_dirs = self.inc_dirs.copy()
-         if MACOS:
--            if '--with-system-ffi' not in sysconfig.get_config_var("CONFIG_ARGS"):
--                return
--            # OS X 10.5 comes with libffi.dylib; the include files are
--            # in /usr/include/ffi
--            ffi_inc_dirs.append('/usr/include/ffi')
--
--        ffi_inc = [sysconfig.get_config_var("LIBFFI_INCLUDEDIR")]
--        if not ffi_inc or ffi_inc[0] == '':
--            ffi_inc = find_file('ffi.h', [], ffi_inc_dirs)
--        if ffi_inc is not None:
--            ffi_h = ffi_inc[0] + '/ffi.h'
-+            ffi_in_sdk = os.path.join(macosx_sdk_root(), "usr/include/ffi")
-+
-+            if not ffi_inc:
-+                if os.path.exists(ffi_in_sdk):
-+                    ext.extra_compile_args.append("-DUSING_APPLE_OS_LIBFFI=1")
-+                    ffi_inc = ffi_in_sdk
-+                    ffi_lib = 'ffi'
-+                else:
-+                    # OS X 10.5 comes with libffi.dylib; the include files are
-+                    # in /usr/include/ffi
-+                    ffi_inc_dirs.append('/usr/include/ffi')
-+
-+        if not ffi_inc:
-+            found = find_file('ffi.h', [], ffi_inc_dirs)
-+            if found:
-+                ffi_inc = found[0]
-+        if ffi_inc:
-+            ffi_h = ffi_inc + '/ffi.h'
-             if not os.path.exists(ffi_h):
-                 ffi_inc = None
-                 print('Header file {} does not exist'.format(ffi_h))
--        ffi_lib = None
--        if ffi_inc is not None:
-+        if ffi_lib is None and ffi_inc:
-             for lib_name in ('ffi', 'ffi_pic'):
-                 if (self.compiler.find_library_file(self.lib_dirs, lib_name)):
-                     ffi_lib = lib_name
-                     break
- 
-         if ffi_inc and ffi_lib:
--            ext.include_dirs.extend(ffi_inc)
-+            ffi_headers = glob(os.path.join(ffi_inc, '*.h'))
-+            if grep_headers_for('ffi_prep_cif_var', ffi_headers):
-+                ext.extra_compile_args.append("-DHAVE_FFI_PREP_CIF_VAR=1")
-+            if grep_headers_for('ffi_prep_closure_loc', ffi_headers):
-+                ext.extra_compile_args.append("-DHAVE_FFI_PREP_CLOSURE_LOC=1")
-+            if grep_headers_for('ffi_closure_alloc', ffi_headers):
-+                ext.extra_compile_args.append("-DHAVE_FFI_CLOSURE_ALLOC=1")
-+
-+            ext.include_dirs.append(ffi_inc)
-             ext.libraries.append(ffi_lib)
-             self.use_system_libffi = True
- 
-@@ -2081,10 +2107,7 @@ class PyBuildExt(build_ext):
+@@ -2055,10 +2082,7 @@ class PyBuildExt(build_ext):
              sources = ['_decimal/_decimal.c']
              depends = ['_decimal/docstrings.h']
          else:
@@ -287,7 +142,7 @@ $NetBSD: patch-setup.py,v 1.5 2020/11/19
              libraries = ['m']
              sources = [
                '_decimal/_decimal.c',
-@@ -2424,7 +2447,7 @@ def main():
+@@ -2403,7 +2427,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



Home | Main Index | Thread Index | Old Index