we don't have MAP_32BIT on amd64 so don't use it and disable generic

code sharing; makes mono work on amd64
This commit is contained in:
robert 2008-10-15 21:33:25 +00:00
parent 73dd045d51
commit e011bb4a75
3 changed files with 30 additions and 6 deletions

View File

@ -1,6 +1,6 @@
# $OpenBSD: Makefile,v 1.1.1.1 2008/10/15 13:34:10 robert Exp $
# $OpenBSD: Makefile,v 1.2 2008/10/15 21:33:25 robert Exp $
ONLY_FOR_ARCHS= i386
ONLY_FOR_ARCHS= amd64 i386
COMMENT= cross platform, open source .NET developement framework
@ -26,7 +26,7 @@ WANTLIB= c glib-2.0 gmodule-2.0 gthread-2.0 intl \
MASTER_SITES= ftp://ftp.novell.com/pub/mono/sources/mono/
EXTRACT_SUFX= .tar.bz2
#USE_LIBTOOL= Yes
USE_LIBTOOL= Yes
USE_GMAKE= Yes
MODULES= converters/libiconv

View File

@ -0,0 +1,15 @@
$OpenBSD: patch-mono_metadata_class_c,v 1.1 2008/10/15 21:33:25 robert Exp $
--- mono/metadata/class.c.orig Wed Oct 15 22:15:14 2008
+++ mono/metadata/class.c Wed Oct 15 22:39:45 2008
@@ -7445,7 +7445,10 @@ mono_generic_class_is_generic_type_definition (MonoGen
gboolean
mono_class_generic_sharing_enabled (MonoClass *class)
{
-#if defined(__i386__) || defined(__x86_64__)
+#if (defined(__NetBSD__) || defined(__OpenBSD__)) && defined(__x86_64__)
+/* https://bugzilla.novell.com/show_bug.cgi?id=434457 */
+ static gboolean supported = FALSE;
+#elif defined(__i386__) || defined(__x86_64__)
static gboolean supported = TRUE;
#else
/* Not supported by the JIT backends */

View File

@ -1,6 +1,6 @@
$OpenBSD: patch-mono_mini_mini-amd64_h,v 1.1.1.1 2008/10/15 13:34:10 robert Exp $
--- mono/mini/mini-amd64.h.orig Tue Oct 14 19:41:26 2008
+++ mono/mini/mini-amd64.h Tue Oct 14 19:48:56 2008
$OpenBSD: patch-mono_mini_mini-amd64_h,v 1.2 2008/10/15 21:33:25 robert Exp $
--- mono/mini/mini-amd64.h.orig Tue Sep 2 17:42:54 2008
+++ mono/mini/mini-amd64.h Wed Oct 15 22:07:39 2008
@@ -217,7 +217,7 @@ typedef struct {
*/
#define MONO_ARCH_VARARG_ICALLS 1
@ -10,3 +10,12 @@ $OpenBSD: patch-mono_mini_mini-amd64_h,v 1.1.1.1 2008/10/15 13:34:10 robert Exp
#define MONO_ARCH_USE_SIGACTION 1
@@ -229,7 +229,7 @@ typedef struct {
#endif /* PLATFORM_WIN32 */
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__OpenBSD__)
#define REG_RAX 7
#define REG_RCX 4