<pre style='margin:0'>
Perry E. Metzger (pmetzger) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/ee78329b517c834c242b5ef6f7dffe0e4b3fac34">https://github.com/macports/macports-ports/commit/ee78329b517c834c242b5ef6f7dffe0e4b3fac34</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit ee78329b517c834c242b5ef6f7dffe0e4b3fac34
</span>Author: Kirill A. Korinsky <kirill@korins.ky>
AuthorDate: Fri Dec 8 21:20:16 2023 +0000
<span style='display:block; white-space:pre;color:#404040;'> cl-cffi: update to 0.24.1.20231011
</span>---
lisp/cl-cffi/Portfile | 16 ++--
...t-variadic-functions-on-SBCL-Darwin-arm64.patch | 87 ----------------------
.../0002-fix-tests-on-SBCL-Darwin-arm64.patch | 26 -------
...-libffi.patch => enforce-MacPorts-libffi.patch} | 0
4 files changed, 7 insertions(+), 122 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lisp/cl-cffi/Portfile b/lisp/cl-cffi/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 9ad88655c28..852693aab09 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lisp/cl-cffi/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lisp/cl-cffi/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -4,13 +4,14 @@ PortSystem 1.0
</span> PortGroup github 1.0
PortGroup common_lisp 1.0
<span style='display:block; white-space:pre;background:#ffe0e0;'>-github.setup cffi cffi 0.24.1 v
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup cffi cffi 53ea94d5b4e0b4b8f636ad021dda76793f0a7af4
</span> name cl-cffi
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision 4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version 0.24.1.20231011
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision 0
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums rmd160 efbe4f1c7577943db8bdd6fc5a7c9672737d5551 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 4025586fc921b2a1ebbe3c8ebec90ae5afc5aba142d97ea22f3951e155449993 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- size 254471
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums rmd160 abe1c57e71b618d187e257726d7e717dad0614f7 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 9d1a315331bc9ab86968edeba28d2c64c5366fb7332415a51436f2db9e09b607 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 257618
</span>
categories-append devel
maintainers {@catap korins.ky:kirill} openmaintainer
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -20,10 +21,7 @@ description The Common Foreign Function Interface
</span>
long_description {*}${description}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles-append 0001-Support-variadic-functions-on-SBCL-Darwin-arm64.patch \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 0002-fix-tests-on-SBCL-Darwin-arm64.patch \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 0003-enforce-MacPorts-libffi.patch
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append enforce-MacPorts-libffi.patch
</span>
depends_build-append \
port:pkgconfig
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lisp/cl-cffi/files/0001-Support-variadic-functions-on-SBCL-Darwin-arm64.patch b/lisp/cl-cffi/files/0001-Support-variadic-functions-on-SBCL-Darwin-arm64.patch
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 917d95f3802..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lisp/cl-cffi/files/0001-Support-variadic-functions-on-SBCL-Darwin-arm64.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,87 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 8b35635b302f72c0b339bdc42cb0c54c4c59eacb Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From: Stas Boukarev <stassats@gmail.com>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Date: Tue, 1 Feb 2022 01:18:35 +0300
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Subject: [PATCH] Support variadic functions on SBCL-Darwin-arm64.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Where variadic arguments are not just passed normally.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Closes #297
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>----
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- src/cffi-sbcl.lisp | 47 ++++++++++++++++++++++++++++++++++++++++------
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 1 file changed, 41 insertions(+), 6 deletions(-)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git src/cffi-sbcl.lisp src/cffi-sbcl.lisp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 906738a..ef939ad 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- src/cffi-sbcl.lisp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ src/cffi-sbcl.lisp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -46,6 +46,8 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #:with-foreign-pointer
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #:%foreign-funcall
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #:%foreign-funcall-pointer
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ #:%foreign-funcall-varargs
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ #:%foreign-funcall-pointer-varargs
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #:%foreign-type-alignment
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #:%foreign-type-size
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #:%load-foreign-library
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -286,12 +288,21 @@ WITH-POINTER-TO-VECTOR-DATA."
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- (defun foreign-funcall-type-and-args (args)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- "Return an SB-ALIEN function type for ARGS."
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-- (let ((return-type 'void))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-- (loop for (type arg) on args by #'cddr
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-- if arg collect (convert-foreign-type type) into types
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-- and collect arg into fargs
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-- else do (setf return-type (convert-foreign-type type))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-- finally (return (values types fargs return-type)))))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ (let ((return-type 'void)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ types
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ fargs)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ (loop while args
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ do (let ((type (pop args)))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ (cond ((eq type '&optional)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ (push type types))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ((not args)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ (setf return-type (convert-foreign-type type)))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ (t
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ (push (convert-foreign-type type) types)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ (push (pop args) fargs)))))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ (values (nreverse types)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ (nreverse fargs)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ return-type)))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- (defmacro %%foreign-funcall (name types fargs rettype)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- "Internal guts of %FOREIGN-FUNCALL."
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -315,6 +326,30 @@ WITH-POINTER-TO-VECTOR-DATA."
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- `(with-alien ((,function (* (function ,rettype ,@types)) ,ptr))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- (alien-funcall ,function ,@fargs)))))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+(defmacro %foreign-funcall-varargs (name fixed-args varargs
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ &rest args &key convention library)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ (declare (ignore convention library))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ `(%foreign-funcall ,name ,(append fixed-args (and varargs
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ;; All SBCL platforms would understand this
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ;; but this is the only one where it's required.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ;; Omitting elsewhere makes it work on older
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ;; versions of SBCL.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ (append #+(and darwin arm64)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ '(&optional)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ varargs)))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ,@args))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+(defmacro %foreign-funcall-pointer-varargs (pointer fixed-args varargs
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ &rest args &key convention)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ (declare (ignore convention))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ `(%foreign-funcall-pointer ,pointer ,(append fixed-args
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ (and varargs
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ (append #+(and darwin arm64)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ '(&optional)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ varargs)))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ,@args))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ;;;# Callbacks
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ;;; The *CALLBACKS* hash table contains a direct mapping of CFFI
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-2.40.1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lisp/cl-cffi/files/0002-fix-tests-on-SBCL-Darwin-arm64.patch b/lisp/cl-cffi/files/0002-fix-tests-on-SBCL-Darwin-arm64.patch
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index a8f92e2744c..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lisp/cl-cffi/files/0002-fix-tests-on-SBCL-Darwin-arm64.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,26 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-This is a bit tricky code patch
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- - SBCL uses arm64 features on Apple Sillicon
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- - ECL-21.2.1 uses arm
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- - ECL-devel uses aarch64
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-See: https://gitlab.com/embeddable-common-lisp/ecl/-/issues/713
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>----
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- libffi/libffi-types.lisp | 1 +
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 1 file changed, 1 insertion(+)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git libffi/libffi-types.lisp libffi/libffi-types.lisp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index b2ec1dd..b8374fe 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- libffi/libffi-types.lisp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ libffi/libffi-types.lisp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -73,6 +73,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ((:default-abi "FFI_DEFAULT_ABI"))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #-x86-64
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ((:sysv "FFI_SYSV"))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ #-(or arm64 arm aarch64)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ((:unix64 "FFI_UNIX64")))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- (ctype ffi-abi "ffi_abi")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-2.40.1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lisp/cl-cffi/files/0003-enforce-MacPorts-libffi.patch b/lisp/cl-cffi/files/enforce-MacPorts-libffi.patch
</span>similarity index 100%
rename from lisp/cl-cffi/files/0003-enforce-MacPorts-libffi.patch
rename to lisp/cl-cffi/files/enforce-MacPorts-libffi.patch
</pre><pre style='margin:0'>
</pre>