pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/devel/libffi
Module Name: pkgsrc
Committed By: adam
Date: Wed Feb 26 19:15:44 UTC 2020
Modified Files:
pkgsrc/devel/libffi: Makefile distinfo
Added Files:
pkgsrc/devel/libffi/patches: patch-configure patch-src_m68k_ffi.c
patch-src_mips_ffi.c patch-src_mips_ffitarget.h
patch-testsuite_libffi.call_float2.c
Removed Files:
pkgsrc/devel/libffi/patches: patch-aa patch-ac patch-ad patch-ae
patch-af patch-ag patch-aj patch-src_alpha_osf.S
patch-src_arm_sysv.S patch-src_closures.c patch-src_x86_win32.S
Log Message:
libffi: updated to 3.3
libffi v3.3
* Add RISC-V support.
* New API in support of GO closures.
* Add IEEE754 binary128 long double support for 64-bit Power
* Default to Microsoft's 64-bit long double ABI with Visual C++.
* GNU compiler uses 80 bits (128 in memory) FFI_GNUW64 ABI.
* Add Windows on ARM64 (WOA) support.
* Add Windows 32-bit ARM support.
* Raw java (gcj) API deprecated.
* Add pre-built PDF documentation to source distribution.
* Many new test cases and bug fixes.
To generate a diff of this commit:
cvs rdiff -u -r1.34 -r1.35 pkgsrc/devel/libffi/Makefile
cvs rdiff -u -r1.45 -r1.46 pkgsrc/devel/libffi/distinfo
cvs rdiff -u -r1.24 -r0 pkgsrc/devel/libffi/patches/patch-aa
cvs rdiff -u -r1.3 -r0 pkgsrc/devel/libffi/patches/patch-ac \
pkgsrc/devel/libffi/patches/patch-ad
cvs rdiff -u -r1.8 -r0 pkgsrc/devel/libffi/patches/patch-ae
cvs rdiff -u -r1.5 -r0 pkgsrc/devel/libffi/patches/patch-af \
pkgsrc/devel/libffi/patches/patch-aj
cvs rdiff -u -r1.2 -r0 pkgsrc/devel/libffi/patches/patch-ag \
pkgsrc/devel/libffi/patches/patch-src_alpha_osf.S \
pkgsrc/devel/libffi/patches/patch-src_closures.c
cvs rdiff -u -r0 -r1.1 pkgsrc/devel/libffi/patches/patch-configure \
pkgsrc/devel/libffi/patches/patch-src_m68k_ffi.c \
pkgsrc/devel/libffi/patches/patch-src_mips_ffi.c \
pkgsrc/devel/libffi/patches/patch-src_mips_ffitarget.h \
pkgsrc/devel/libffi/patches/patch-testsuite_libffi.call_float2.c
cvs rdiff -u -r1.7 -r0 pkgsrc/devel/libffi/patches/patch-src_arm_sysv.S
cvs rdiff -u -r1.1 -r0 pkgsrc/devel/libffi/patches/patch-src_x86_win32.S
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/devel/libffi/Makefile
diff -u pkgsrc/devel/libffi/Makefile:1.34 pkgsrc/devel/libffi/Makefile:1.35
--- pkgsrc/devel/libffi/Makefile:1.34 Sun Jan 12 10:48:50 2020
+++ pkgsrc/devel/libffi/Makefile Wed Feb 26 19:15:44 2020
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.34 2020/01/12 10:48:50 pho Exp $
+# $NetBSD: Makefile,v 1.35 2020/02/26 19:15:44 adam Exp $
-DISTNAME= libffi-3.2.1
-PKGREVISION= 4
+DISTNAME= libffi-3.3
CATEGORIES= devel
MASTER_SITES= ftp://sourceware.org/pub/libffi/
@@ -12,11 +11,14 @@ LICENSE= mit
USE_LANGUAGES= c c++
USE_LIBTOOL= yes
-USE_TOOLS+= pkg-config
+USE_TOOLS+= gmake pkg-config
GNU_CONFIGURE= yes
-CONFIGURE_ARGS= --includedir=${PREFIX}/include
+CONFIGURE_ARGS+= --disable-multi-os-directory
+CONFIGURE_ARGS+= --includedir=${PREFIX}/include
PKGCONFIG_OVERRIDE+= libffi.pc.in
INFO_FILES= yes
+TEST_DEPENDS+= dejagnu-[0-9]*:../../devel/dejagnu
+TEST_TARGET= check
.include "../../mk/compiler.mk"
# The Compaq C frontend groks .s, but not .S. Assemble osf.S directly w/ as(1).
@@ -25,15 +27,8 @@ pre-build:
cd ${WRKSRC} && ./libtool --mode=compile --tag=CC as -I. -Iinclude -o src/alpha/osf.lo -c src/alpha/osf.S
.endif
-# Since we don't have "TEST_DEPENDS", we implement it as a hack:
.include "../../mk/bsd.prefs.mk"
-.if !empty(PKGSRC_RUN_TEST:M[Yy][Ee][Ss])
-TEST_TARGET= check
-TEST_ENV= # empty?
-BUILD_DEPENDS+= dejagnu-[0-9]*:../../devel/dejagnu
-.endif
-
# patch-aj uses m68k_sync_icache(2)
.if !empty(MACHINE_PLATFORM:MNetBSD-*-m68k)
LIBS+= -lm68k
@@ -45,8 +40,8 @@ CPPFLAGS+= -D__PIC__
.endif
# irix fixes from PR 48587
-.if !empty(OPSYS:MIRIX)
-USE_TOOLS+= bash gmake
+.if ${OPSYS} == IRIX
+USE_TOOLS+= bash
MAKE_FLAGS+= SHELL=${TOOLS_DIR}/bin/bash
.endif
Index: pkgsrc/devel/libffi/distinfo
diff -u pkgsrc/devel/libffi/distinfo:1.45 pkgsrc/devel/libffi/distinfo:1.46
--- pkgsrc/devel/libffi/distinfo:1.45 Tue Sep 5 15:08:42 2017
+++ pkgsrc/devel/libffi/distinfo Wed Feb 26 19:15:44 2020
@@ -1,18 +1,12 @@
-$NetBSD: distinfo,v 1.45 2017/09/05 15:08:42 joerg Exp $
+$NetBSD: distinfo,v 1.46 2020/02/26 19:15:44 adam Exp $
-SHA1 (libffi-3.2.1.tar.gz) = 280c265b789e041c02e5c97815793dfc283fb1e6
-RMD160 (libffi-3.2.1.tar.gz) = 9b546a3d002380bec3f00d86fc47d730abf51dfd
-SHA512 (libffi-3.2.1.tar.gz) = 980ca30a8d76f963fca722432b1fe5af77d7a4e4d2eac5144fbc5374d4c596609a293440573f4294207e1bdd9fda80ad1e1cafb2ffb543df5a275bc3bd546483
-Size (libffi-3.2.1.tar.gz) = 940837 bytes
-SHA1 (patch-aa) = 5218c8d895f97c812b7ca8d07c55b82ebcdc87d4
-SHA1 (patch-ac) = 63fba2e9486b73485a4f633927f5041110c43239
-SHA1 (patch-ad) = db57395ff721d7b56edec8a3a64b4b529258341c
-SHA1 (patch-ae) = fdb84a49c15041826396e4d3a6dda2de719801c0
-SHA1 (patch-af) = bf64b4082f24947cd47aba0758c347e5ddac3d7e
-SHA1 (patch-ag) = ae6a89f6b2be00c52139be6dcd14d0ebfe85d8f7
-SHA1 (patch-aj) = 5179cfd150bc7de15eb1c5ee0a327016c2c32b3e
-SHA1 (patch-src_alpha_osf.S) = 50d564a1d88284f04f6896719fa3613e9b0be70b
-SHA1 (patch-src_arm_sysv.S) = 2c97e0d069a4df2e1f5b6604e54b2d02c92691e2
-SHA1 (patch-src_closures.c) = 72760ccd973c5f9b157f5db8da180861d748beb2
+SHA1 (libffi-3.3.tar.gz) = 8df6cb570c8d6596a67d1c0773bf00650154f7aa
+RMD160 (libffi-3.3.tar.gz) = 2cd43b66d792f1bad76df2e19a8411beacfcb8e0
+SHA512 (libffi-3.3.tar.gz) = 61513801a156f11420f541d325de697131846487122d6bdcf5491b18b4da788589f5c0bb07e88e396495d3be5830d74e9135595e2b8ddbfe95c448d8597fbd6f
+Size (libffi-3.3.tar.gz) = 1305466 bytes
+SHA1 (patch-configure) = 81f1f2bee39a40f2a34b3a6cea0b210d13037482
+SHA1 (patch-src_m68k_ffi.c) = 5179cfd150bc7de15eb1c5ee0a327016c2c32b3e
SHA1 (patch-src_m88k_elfbsd.S) = 6572c7fa39c00096cb4a80bb88993ff1b4aaa8cc
-SHA1 (patch-src_x86_win32.S) = 8a41cbc7237d6a171605a66e91d8d92a57181569
+SHA1 (patch-src_mips_ffi.c) = 7353f68f73917af6bff0b90393ac3404ea54fb99
+SHA1 (patch-src_mips_ffitarget.h) = 7fe62634803ccb5a168e76d597409c9af809c448
+SHA1 (patch-testsuite_libffi.call_float2.c) = 2a42a428b0cc55065968c7f0748026da12b70b9d
Added files:
Index: pkgsrc/devel/libffi/patches/patch-configure
diff -u /dev/null pkgsrc/devel/libffi/patches/patch-configure:1.1
--- /dev/null Wed Feb 26 19:15:44 2020
+++ pkgsrc/devel/libffi/patches/patch-configure Wed Feb 26 19:15:44 2020
@@ -0,0 +1,35 @@
+$NetBSD: patch-configure,v 1.1 2020/02/26 19:15:44 adam Exp $
+
+Add NetBSD support.
+
+--- configure.orig 2019-11-23 13:59:04.000000000 +0000
++++ configure
+@@ -18483,7 +18483,7 @@ case "$target" in
+ $as_echo "#define FFI_EXEC_TRAMPOLINE_TABLE 1" >>confdefs.h
+
+ ;;
+- *-apple-* | *-*-freebsd* | *-*-kfreebsd* | *-*-openbsd* | *-pc-solaris* | *-linux-android*)
++ *-apple-* | *-*-freebsd* | *-*-kfreebsd* | *-*-netbsd* | *-*-openbsd* | *-pc-solaris* | *-linux-android*)
+
+ $as_echo "#define FFI_MMAP_EXEC_WRIT 1" >>confdefs.h
+
+@@ -20978,13 +20978,13 @@ s/ [a-zA-Z0-9-]*-all [a-zA-Z0-9-]*-all-a
+ /-all-all/d
+ a\\
+ @ HOST="\$(HOST)\" \\\\\\
+- ; test ".\$\$HOST" = "." && HOST=$x sh $ax_enable_builddir_auxdir/config.guess $x \\\\\\
+- ; BUILD=$x grep "^#### \$\$HOST " Makefile | sed -e 's/.*|//' $x \\\\\\
+- ; use=$x basename "\$\@" -all $x; n=$x echo \$\$BUILD | wc -w $x \\\\\\
+- ; echo "MAKE \$\$HOST : \$\$n * \$\@"; if test "\$\$n" -eq "0" ; then : \\\\\\
+- ; BUILD=$x grep "^####.*|" Makefile |tail -1| sed -e 's/.*|//' $x ; fi \\\\\\
++ ; test ".\$\$HOST" = "." && HOST="$x sh $ax_enable_builddir_auxdir/config.guess $x" \\\\\\
++ ; BUILD="$x grep "^#### \$\$HOST " Makefile | sed -e 's/.*|//' $x" \\\\\\
++ ; use="$x basename "\$\@" -all $x"; n="$x echo \$\$BUILD | wc -w $x" \\\\\\
++ ; echo "MAKE \$\$HOST : \$\$n * \$\@"; if test \$\$n = "0" ; then : \\\\\\
++ ; BUILD="$x grep "^####.*|" Makefile |tail -1| sed -e 's/.*|//' $x" ; fi \\\\\\
+ ; test ".\$\$BUILD" = "." && BUILD="." \\\\\\
+- ; test "\$\$use" = "\$\@" && BUILD=$x echo "\$\$BUILD" | tail -1 $x \\\\\\
++ ; test "\$\$use" = "\$\@" && BUILD="$x echo "\$\$BUILD" | tail -1 $x" \\\\\\
+ ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\
+ ; (cd "\$\$i" && test ! -f configure && \$(MAKE) \$\$use) || exit; done
+ /dist-all *:/a\\
Index: pkgsrc/devel/libffi/patches/patch-src_m68k_ffi.c
diff -u /dev/null pkgsrc/devel/libffi/patches/patch-src_m68k_ffi.c:1.1
--- /dev/null Wed Feb 26 19:15:44 2020
+++ pkgsrc/devel/libffi/patches/patch-src_m68k_ffi.c Wed Feb 26 19:15:44 2020
@@ -0,0 +1,31 @@
+$NetBSD: patch-src_m68k_ffi.c,v 1.1 2020/02/26 19:15:44 adam Exp $
+
+NetBSD/m68k support.
+
+--- src/m68k/ffi.c.orig 2014-11-08 12:47:24.000000000 +0000
++++ src/m68k/ffi.c
+@@ -9,8 +9,11 @@
+
+ #include <stdlib.h>
+ #include <unistd.h>
+-#ifdef __rtems__
++#if defined(__rtems__)
+ void rtems_cache_flush_multiple_data_lines( const void *, size_t );
++#elif defined(__NetBSD__)
++#include <sys/types.h>
++#include <m68k/sync_icache.h>
+ #else
+ #include <sys/syscall.h>
+ #ifdef __MINT__
+@@ -345,8 +348,10 @@ ffi_prep_closure_loc (ffi_closure* closu
+ else
+ *(void **)(closure->tramp + 8) = ffi_closure_SYSV;
+
+-#ifdef __rtems__
++#if defined(__rtems__)
+ rtems_cache_flush_multiple_data_lines( codeloc, FFI_TRAMPOLINE_SIZE );
++#elif defined(__NetBSD__)
++ m68k_sync_icache(codeloc, FFI_TRAMPOLINE_SIZE);
+ #elif defined(__MINT__)
+ Ssystem(S_FLUSHCACHE, codeloc, FFI_TRAMPOLINE_SIZE);
+ #else
Index: pkgsrc/devel/libffi/patches/patch-src_mips_ffi.c
diff -u /dev/null pkgsrc/devel/libffi/patches/patch-src_mips_ffi.c:1.1
--- /dev/null Wed Feb 26 19:15:44 2020
+++ pkgsrc/devel/libffi/patches/patch-src_mips_ffi.c Wed Feb 26 19:15:44 2020
@@ -0,0 +1,39 @@
+$NetBSD: patch-src_mips_ffi.c,v 1.1 2020/02/26 19:15:44 adam Exp $
+
+Fixes to support the various NetBSD mips ports.
+
+--- src/mips/ffi.c.orig 2019-10-31 14:49:54.000000000 +0000
++++ src/mips/ffi.c
+@@ -476,6 +476,7 @@ static ffi_status ffi_prep_cif_machdep_i
+ ((cif->arg_types)[index]->type << (arg_reg * FFI_FLAG_BITS));
+ arg_reg++;
+ break;
++#ifdef __mips64
+ case FFI_TYPE_LONGDOUBLE:
+ /* Align it. */
+ arg_reg = FFI_ALIGN(arg_reg, 2);
+@@ -494,7 +495,7 @@ static ffi_status ffi_prep_cif_machdep_i
+ arg_reg++;
+ }
+ break;
+-
++#endif
+ case FFI_TYPE_STRUCT:
+ loc = arg_reg * FFI_SIZEOF_ARG;
+ cif->flags += calc_n32_struct_flags(soft_float || index >= nfixedargs,
+@@ -556,6 +557,7 @@ static ffi_status ffi_prep_cif_machdep_i
+ cif->flags += cif->rtype->type << (FFI_FLAG_BITS * 8);
+ break;
+
++#ifdef __mips64
+ case FFI_TYPE_LONGDOUBLE:
+ /* Long double is returned as if it were a struct containing
+ two doubles. */
+@@ -572,6 +574,7 @@ static ffi_status ffi_prep_cif_machdep_i
+ << (4 + (FFI_FLAG_BITS * 8));
+ }
+ break;
++#endif
+ default:
+ cif->flags += FFI_TYPE_INT << (FFI_FLAG_BITS * 8);
+ break;
Index: pkgsrc/devel/libffi/patches/patch-src_mips_ffitarget.h
diff -u /dev/null pkgsrc/devel/libffi/patches/patch-src_mips_ffitarget.h:1.1
--- /dev/null Wed Feb 26 19:15:44 2020
+++ pkgsrc/devel/libffi/patches/patch-src_mips_ffitarget.h Wed Feb 26 19:15:44 2020
@@ -0,0 +1,18 @@
+$NetBSD: patch-src_mips_ffitarget.h,v 1.1 2020/02/26 19:15:44 adam Exp $
+
+Make a minimal adjustment to support the various NetBSD mips ports.
+
+--- src/mips/ffitarget.h.orig 2019-10-31 14:49:54.000000000 +0000
++++ src/mips/ffitarget.h
+@@ -41,8 +41,10 @@
+ #define _MIPS_SIM_ABI32 1
+ #define _MIPS_SIM_NABI32 2
+ #define _MIPS_SIM_ABI64 3
+-#elif !defined(__OpenBSD__)
++#elif defined(__sgi)
+ # include <sgidefs.h>
++#else
++# include <sys/cdefs.h>
+ #endif
+
+ # ifndef _ABIN32
Index: pkgsrc/devel/libffi/patches/patch-testsuite_libffi.call_float2.c
diff -u /dev/null pkgsrc/devel/libffi/patches/patch-testsuite_libffi.call_float2.c:1.1
--- /dev/null Wed Feb 26 19:15:44 2020
+++ pkgsrc/devel/libffi/patches/patch-testsuite_libffi.call_float2.c Wed Feb 26 19:15:44 2020
@@ -0,0 +1,15 @@
+$NetBSD: patch-testsuite_libffi.call_float2.c,v 1.1 2020/02/26 19:15:44 adam Exp $
+
+The %Lf printf format expects "long double", so cast args accordingly.
+
+--- testsuite/libffi.call/float2.c.orig 2019-10-31 14:49:54.000000000 +0000
++++ testsuite/libffi.call/float2.c
+@@ -47,7 +47,7 @@ int main (void)
+ /* long double support under SunOS/gcc is pretty much non-existent.
+ You'll get the odd bus error in library routines like printf() */
+ #else
+- printf ("%Lf, %Lf, %Lf, %Lf\n", ld, ldblit(f), ld - ldblit(f), LDBL_EPSILON);
++ printf ("%Lf, %Lf, %Lf, %Lf\n", (long double)ld, (long double)ldblit(f), (long double)(ld - ldblit(f)), (long double)LDBL_EPSILON);
+ #endif
+
+ /* These are not always the same!! Check for a reasonable delta */
Home |
Main Index |
Thread Index |
Old Index