From af27e15f7a6bb89d51f2398234b42c609c7d45a2 Mon Sep 17 00:00:00 2001 From: jasper Date: Wed, 12 Feb 2020 19:42:02 +0000 Subject: [PATCH] fix build after libffi update this issue has been addressed by upstream ecl in a more elaborate manner than i feel is appropriate for now. we'll pull in their fix when this port gets updated to the next version. breakage reported by naddy@ also tested by tb@ on i386 --- lang/ecl/Makefile | 4 ++-- lang/ecl/patches/patch-src_c_ffi_d | 26 ++++++++++++++++++++++++++ 2 files changed, 28 insertions(+), 2 deletions(-) create mode 100644 lang/ecl/patches/patch-src_c_ffi_d diff --git a/lang/ecl/Makefile b/lang/ecl/Makefile index d0c3de89281..ab00e726a1e 100644 --- a/lang/ecl/Makefile +++ b/lang/ecl/Makefile @@ -1,4 +1,4 @@ -# $OpenBSD: Makefile,v 1.38 2019/07/12 20:47:17 sthen Exp $ +# $OpenBSD: Makefile,v 1.39 2020/02/12 19:42:02 jasper Exp $ COMMENT = embeddable common-lisp CATEGORIES = lang @@ -8,7 +8,7 @@ BROKEN-mips64 = ecl_min fails V = 16.1.3 DISTNAME = ecl-$V SHARED_LIBS += ecl 6.0 -REVISION = 2 +REVISION = 3 HOMEPAGE = https://common-lisp.net/project/ecl/ MAINTAINER = Timo Myyra diff --git a/lang/ecl/patches/patch-src_c_ffi_d b/lang/ecl/patches/patch-src_c_ffi_d new file mode 100644 index 00000000000..2baeb88262e --- /dev/null +++ b/lang/ecl/patches/patch-src_c_ffi_d @@ -0,0 +1,26 @@ +$OpenBSD: patch-src_c_ffi_d,v 1.1 2020/02/12 19:42:02 jasper Exp $ + +libffi for x86_64 doesn't define FFI_SYSV anymore for FFI_UNIX64 should used instead +fixed upstream with https://gitlab.com/embeddable-common-lisp/ecl/commit/b2f09b4809441a92d6c11a2b39d5399580e56ae7 + +Index: src/c/ffi.d +--- src/c/ffi.d.orig ++++ src/c/ffi.d +@@ -132,10 +132,15 @@ static struct { + {@':stdcall', FFI_STDCALL}, + #elif defined(X86_WIN64) + {@':win64', FFI_WIN64}, +-#elif defined(X86_ANY) || defined(X86) || defined(X86_64) ++#elif defined(X86_ANY) || defined(X86) ++#if defined(X86_64) ++ {@':cdecl', FFI_UNIX64}, ++ {@':sysv', FFI_UNIX64}, ++ {@':unix64', FFI_UNIX64}, ++#else + {@':cdecl', FFI_SYSV}, + {@':sysv', FFI_SYSV}, +- {@':unix64', FFI_UNIX64}, ++#endif + #endif + }; +