Accepting request 146717 from Mono:Factory

- Fix ppc build failures (ppc.patch) (forwarded request 146514 from k0da)

OBS-URL: https://build.opensuse.org/request/show/146717
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mono-core?expand=0&rev=65
This commit is contained in:
Ismail Dönmez 2012-12-31 13:26:23 +00:00 committed by Git OBS Bridge
commit 8b1740997b
3 changed files with 46 additions and 0 deletions

View File

@ -1,3 +1,8 @@
-------------------------------------------------------------------
Thu Dec 27 17:52:57 UTC 2012 - dvaleev@suse.com
- Fix ppc build failures (ppc.patch)
-------------------------------------------------------------------
Mon Dec 17 12:34:59 UTC 2012 - adrian@suse.de

View File

@ -39,6 +39,8 @@ Patch1: mono-arm-cpuinfo-v5.patch
Patch2: mono-arm-cpuinfo-v7.patch
# PATCH-MISSING-TAG -- See http://wiki.opensuse.org/openSUSE:Packaging_Patches_guidelines
Patch3: mono-arm-vfp.patch
# PATCH-FIX-OPENSUSE ppc.patch dvaleev@suse.com -- fix ppc build failures
Patch4: ppc.patch
BuildRequires: bison
BuildRequires: fdupes
BuildRequires: gcc-c++
@ -112,6 +114,7 @@ technologies that have been submitted to the ECMA for standardization.
%patch2 -p1
%patch3 -p1
%endif
%patch4 -p1
%build
# These are only needed if there are patches to the runtime

38
ppc.patch Normal file
View File

@ -0,0 +1,38 @@
Index: mono-3.0.2/mono/mini/mini.c
===================================================================
--- mono-3.0.2.orig/mono/mini/mini.c
+++ mono-3.0.2/mono/mini/mini.c
@@ -6240,7 +6240,7 @@ mini_create_ftnptr (MonoDomain *domain,
desc [0] = addr;
desc [1] = NULL;
# elif defined(__ppc64__) || defined(__powerpc64__)
- gpointer *desc;
+ //gpointer *desc;
desc = mono_domain_alloc0 (domain, 3 * sizeof (gpointer));
Index: mono-3.0.2/mono/mini/mini-ppc.h
===================================================================
--- mono-3.0.2.orig/mono/mini/mini-ppc.h
+++ mono-3.0.2/mono/mini/mini-ppc.h
@@ -96,6 +96,7 @@ typedef struct MonoCompileArch {
#define MONO_ARCH_EMULATE_FREM 1
#define MONO_ARCH_BIGMUL_INTRINS 1
#define MONO_ARCH_HAVE_ATOMIC_CAS 1
+#define MONO_ARCH_GC_MAPS_SUPPORTED 1
/* Parameters used by the register allocator */
#define MONO_ARCH_CALLEE_REGS ((0xff << ppc_r3) | (1 << ppc_r11) | (1 << ppc_r12))
Index: mono-3.0.2/mono/mini/mini-gc.c
===================================================================
--- mono-3.0.2.orig/mono/mini/mini-gc.c
+++ mono-3.0.2/mono/mini/mini-gc.c
@@ -438,6 +438,8 @@ static int callee_saved_regs [] = { X86_
static int callee_saved_regs [] = { ARMREG_V1, ARMREG_V2, ARMREG_V3, ARMREG_V4, ARMREG_V5, ARMREG_V7, ARMREG_FP };
#elif defined(TARGET_S390X)
static int callee_saved_regs [] = { s390_r6, s390_r7, s390_r8, s390_r9, s390_r10, s390_r11, s390_r12, s390_r13, s390_r14 };
+#elif defined(TARGET_POWERPC)
+static int callee_saved_regs [] = { ppc_r6, ppc_r7, ppc_r8, ppc_r9, ppc_r10, ppc_r11, ppc_r12, ppc_r13, ppc_r14 };
#endif
static guint32