- enable libffi on mips64(el)

ok espie@ phessler@

ports is unlocked for a while only for those who have been informed.
if I DID NOT MAIL YOU, DO NOT COMMIT!
This commit is contained in:
jasper 2010-02-23 19:08:55 +00:00
parent 2e36cd0adc
commit de46d01df2
3 changed files with 37 additions and 7 deletions

View File

@ -1,9 +1,8 @@
# $OpenBSD: Makefile,v 1.8 2010/02/09 12:18:45 jasper Exp $
# $OpenBSD: Makefile,v 1.9 2010/02/23 19:08:55 jasper Exp $
# m88k - not tested yet
# mips64* - OpenBSD doesn't provide a cacheflush/cachectl (yet)
# vax - libffi hasn't been ported to vax, and most likely never will.
NOT_FOR_ARCHS= m88k mips64 mips64el vax
NOT_FOR_ARCHS= m88k vax
COMMENT= Foreign Function Interface

View File

@ -1,9 +1,9 @@
$OpenBSD: patch-configure,v 1.2 2009/10/23 15:39:51 jasper Exp $
$OpenBSD: patch-configure,v 1.3 2010/02/23 19:08:55 jasper Exp $
Enable libffi on hppa and powerpc platforms.
Enable libffi on hppa, mips64(el) and powerpc platforms.
--- configure.orig Fri Dec 19 17:12:45 2008
+++ configure Fri Oct 23 17:10:16 2009
+++ configure Sat Feb 20 00:37:30 2010
@@ -20976,7 +20976,7 @@ case "$host" in
TARGET=FRV; TARGETDIR=frv
;;
@ -13,7 +13,18 @@ Enable libffi on hppa and powerpc platforms.
TARGET=PA_LINUX; TARGETDIR=pa
;;
hppa*64-*-hpux*)
@@ -21033,7 +21033,7 @@ case "$host" in
@@ -21017,8 +21017,9 @@ case "$host" in
mips-sgi-irix5.* | mips-sgi-irix6.*)
TARGET=MIPS; TARGETDIR=mips
;;
- mips*-*-linux*)
+ mips*-*-linux* | mips*-*-openbsd*)
TARGET=MIPS; TARGETDIR=mips
+ HAVE_LONG_DOUBLE='defined(__mips)'
;;
powerpc*-*-linux* | powerpc-*-sysv*)
@@ -21033,7 +21034,7 @@ case "$host" in
powerpc-*-aix* | rs6000-*-aix*)
TARGET=POWERPC_AIX; TARGETDIR=powerpc
;;

View File

@ -0,0 +1,20 @@
$OpenBSD: patch-src_mips_ffi_c,v 1.1 2010/02/23 19:08:55 jasper Exp $
Allow building this on OpenBSD, where we don't provide the ICACHE related
defines in cachectl.h, but in sysarch.h.
--- src/mips/ffi.c.orig Tue Feb 26 18:34:36 2008
+++ src/mips/ffi.c Sat Feb 20 00:46:52 2010
@@ -37,7 +37,11 @@
#endif
#ifndef USE__BUILTIN___CLEAR_CACHE
-#include <sys/cachectl.h>
+# if defined(__OpenBSD__)
+# include <mips64/sysarch.h>
+# else
+# include <sys/cachectl.h>
+# endif
#endif
#ifdef FFI_DEBUG