changeset 106:ffca34182746

Allow to build PyPy3 v7.3.11: PLIST changes and patches for os.sendmail() which is enabled now. BUGS: Python 3.7 is not supported any more. The configuration option for PY37 needs to be removed.
author Franz Glasner <fzglas.hg@dom66.de>
date Wed, 04 Jan 2023 15:50:00 +0100
parents 41f196ceb3b1
children 8681b1cfc6b9
files Makefile distinfo.py38 distinfo.py39 files/patch-rpython_rlib_rposix.py pkg-plist.py38 pkg-plist.py39
diffstat 6 files changed, 46 insertions(+), 12 deletions(-) [+]
line wrap: on
line diff
--- a/Makefile	Sun Oct 09 21:32:59 2022 +0200
+++ b/Makefile	Wed Jan 04 15:50:00 2023 +0100
@@ -1,7 +1,7 @@
 # Created by: David Naylor <dbn@FreeBSD.org>
 
 PORTNAME=	pypy3
-PORTREVISION=	3
+PORTREVISION=	0
 DISTNAME=	${PYTHON_IMPL_MINOR}-v${DISTVERSION}-src
 
 MASTERDIR=	${.CURDIR}/../pypy
--- a/distinfo.py38	Sun Oct 09 21:32:59 2022 +0200
+++ b/distinfo.py38	Wed Jan 04 15:50:00 2023 +0100
@@ -1,3 +1,3 @@
-TIMESTAMP = 1664626838
-SHA256 (pypy3.8-v7.3.9-src.tar.bz2) = 5b5d9d9256f12a129af8384e2f581bdfab3bc0fbbe3a0a480d9c1d2e95490eb1
-SIZE (pypy3.8-v7.3.9-src.tar.bz2) = 26642176
+TIMESTAMP = 1672776332
+SHA256 (pypy3.8-v7.3.11-src.tar.bz2) = 4d6769bfca73734e8666fd70503b7ceb06a6e259110e617331bb3899ca4e6058
+SIZE (pypy3.8-v7.3.11-src.tar.bz2) = 23254634
--- a/distinfo.py39	Sun Oct 09 21:32:59 2022 +0200
+++ b/distinfo.py39	Wed Jan 04 15:50:00 2023 +0100
@@ -1,3 +1,3 @@
-TIMESTAMP = 1664977128
-SHA256 (pypy3.9-v7.3.9-src.tar.bz2) = 2abaa1e9fe1ec0e233c9fbc377a0c8e9a0634080a8f4f30eb6898301f6618c12
-SIZE (pypy3.9-v7.3.9-src.tar.bz2) = 26976726
+TIMESTAMP = 1672776376
+SHA256 (pypy3.9-v7.3.11-src.tar.bz2) = b0f3166fb2a5aadfd5ceb9db5cdd5f7929a0eccca02b4a26c0dae0492f7ca8ea
+SIZE (pypy3.9-v7.3.11-src.tar.bz2) = 23460769
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/files/patch-rpython_rlib_rposix.py	Wed Jan 04 15:50:00 2023 +0100
@@ -0,0 +1,33 @@
+--- rpython/rlib/rposix.py.orig	2022-12-29 08:05:46 UTC
++++ rpython/rlib/rposix.py
+@@ -3014,6 +3014,30 @@ if sys.platform.startswith('linux'):
+         res = c_sendfile(out_fd, in_fd, lltype.nullptr(_OFF_PTR_T.TO), count)
+         return handle_posix_error('sendfile', res)
+ 
++elif sys.platform.startswith('freebsd'):    
++    # FreeBSD
++    #
++    # Please note that the implementation below is partial;
++    # the VOIDP is an iovec for sending headers and trailers which
++    # CPython uses for the headers and trailers argument, and it also
++    # has a flags argument. None of these are currently supported.
++    sendfile_eci = ExternalCompilationInfo(includes=["sys/socket.h"])
++    _OFF_PTR_T = rffi.CArrayPtr(OFF_T)
++    # NB: the VOIDP is an struct sf_hdtr for sending headers and trailers
++    c_sendfile = rffi.llexternal('sendfile',
++            [rffi.INT, rffi.INT, OFF_T, rffi.SIZE_T, rffi.VOIDP, _OFF_PTR_T, rffi.INT],
++            rffi.INT, save_err=rffi.RFFI_SAVE_ERRNO,
++            compilation_info=sendfile_eci)
++
++    def sendfile(out_fd, in_fd, offset, count):
++        with lltype.scoped_alloc(_OFF_PTR_T.TO, 1) as sbytes:
++            sbytes[0] = 0  # rffi.cast(OFF_T, count)
++            res = c_sendfile(in_fd, out_fd, offset, count, lltype.nullptr(rffi.VOIDP.TO), sbytes, 0)
++            if res != 0:
++                return handle_posix_error('sendfile', res)
++            res = sbytes[0]
++        return res    
++
+ elif not _WIN32:
+     # Neither on Windows nor on Linux, so probably a BSD derivative of
+     # some sort. Please note that the implementation below is partial;
--- a/pkg-plist.py38	Sun Oct 09 21:32:59 2022 +0200
+++ b/pkg-plist.py38	Wed Jan 04 15:50:00 2023 +0100
@@ -115,7 +115,6 @@
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/_cffi_ssl/_cffi_src/openssl/bio.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/_cffi_ssl/_cffi_src/openssl/callbacks.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/_cffi_ssl/_cffi_src/openssl/cmac.py
-%%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/_cffi_ssl/_cffi_src/openssl/conf.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/_cffi_ssl/_cffi_src/openssl/crypto.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/_cffi_ssl/_cffi_src/openssl/cryptography.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/_cffi_ssl/_cffi_src/openssl/ct.py
@@ -821,8 +820,10 @@
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/hpyfunc.h
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/hpymodule.h
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/hpytype.h
+%%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/inline_helpers.h
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/macros.h
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/runtime/argparse.h
+%%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/runtime/buildvalue.h
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/runtime/ctx_funcs.h
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/runtime/ctx_type.h
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/runtime/helpers.h
@@ -833,6 +834,7 @@
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/universal/misc_trampolines.h
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/version.h
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/src/runtime/argparse.c
+%%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/src/runtime/buildvalue.c
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/src/runtime/ctx_bytes.c
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/src/runtime/ctx_call.c
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/src/runtime/ctx_err.c
@@ -2327,7 +2329,6 @@
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/test/test_warnings/__main__.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/test/test_warnings/data/import_warning.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/test/test_warnings/data/stacklevel.py
-%%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/test/test_warnings/init.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/test/test_wave.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/test/test_weakref.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/test/test_weakset.py
--- a/pkg-plist.py39	Sun Oct 09 21:32:59 2022 +0200
+++ b/pkg-plist.py39	Wed Jan 04 15:50:00 2023 +0100
@@ -118,7 +118,6 @@
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/_cffi_ssl/_cffi_src/openssl/bio.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/_cffi_ssl/_cffi_src/openssl/callbacks.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/_cffi_ssl/_cffi_src/openssl/cmac.py
-%%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/_cffi_ssl/_cffi_src/openssl/conf.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/_cffi_ssl/_cffi_src/openssl/crypto.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/_cffi_ssl/_cffi_src/openssl/cryptography.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/_cffi_ssl/_cffi_src/openssl/ct.py
@@ -195,7 +194,6 @@
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/_dbm.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/_decimal_build.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/_ffi.py
-%%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/_functools.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/_gdbm.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/_gdbm_build.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/_gdbm_cffi.%%PYPY_CFFI_VER%%.so
@@ -826,8 +824,10 @@
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/hpyfunc.h
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/hpymodule.h
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/hpytype.h
+%%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/inline_helpers.h
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/macros.h
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/runtime/argparse.h
+%%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/runtime/buildvalue.h
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/runtime/ctx_funcs.h
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/runtime/ctx_type.h
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/runtime/helpers.h
@@ -838,6 +838,7 @@
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/universal/misc_trampolines.h
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/include/hpy/version.h
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/src/runtime/argparse.c
+%%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/src/runtime/buildvalue.c
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/src/runtime/ctx_bytes.c
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/src/runtime/ctx_call.c
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/hpy/devel/src/runtime/ctx_err.c
@@ -1721,7 +1722,6 @@
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/test/test_asyncio/echo2.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/test/test_asyncio/echo3.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/test/test_asyncio/functional.py
-%%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/test/test_asyncio/test_asyncio_waitfor.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/test/test_asyncio/test_base_events.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/test/test_asyncio/test_buffered_proto.py
 %%PYPY_DIR%%/lib/%%PYTHON_IMPL_MINOR%%/test/test_asyncio/test_context.py