From fd64094285bdc9c4ed108324e653f227001f5cf6b86be294a77bd4817e591197 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ismail=20D=C3=B6nmez?= Date: Sat, 1 Sep 2012 22:23:38 +0000 Subject: [PATCH] Accepting request 132072 from openSUSE:Factory:ARM - use hammer approach for vfp instead - add arch linux vfp patch - use vfp on armv7 - fix arm build to not depend on the build host's /proc/cpuinfo OBS-URL: https://build.opensuse.org/request/show/132072 OBS-URL: https://build.opensuse.org/package/show/Mono:Factory/mono-core?expand=0&rev=78 --- mono-arm-cpuinfo-v5.patch | 14 ++++++++++++++ mono-arm-cpuinfo-v7.patch | 16 ++++++++++++++++ mono-arm-vfp.patch | 22 ++++++++++++++++++++++ mono-core.changes | 20 ++++++++++++++++++++ mono-core.spec | 16 ++++++++++++++++ 5 files changed, 88 insertions(+) create mode 100644 mono-arm-cpuinfo-v5.patch create mode 100644 mono-arm-cpuinfo-v7.patch create mode 100644 mono-arm-vfp.patch diff --git a/mono-arm-cpuinfo-v5.patch b/mono-arm-cpuinfo-v5.patch new file mode 100644 index 0000000..38e2067 --- /dev/null +++ b/mono-arm-cpuinfo-v5.patch @@ -0,0 +1,14 @@ +Index: mono-2.10.6/mono/mini/mini-arm.c +=================================================================== +--- mono-2.10.6.orig/mono/mini/mini-arm.c ++++ mono-2.10.6/mono/mini/mini-arm.c +@@ -592,6 +592,9 @@ mono_arch_cpu_optimizazions (guint32 *ex + v5_supported = TRUE; + darwin = TRUE; + iphone_abi = TRUE; ++#elif 1 ++ thumb_supported = TRUE; ++ v5_supported = TRUE; + #else + char buf [512]; + char *line; diff --git a/mono-arm-cpuinfo-v7.patch b/mono-arm-cpuinfo-v7.patch new file mode 100644 index 0000000..80d5df3 --- /dev/null +++ b/mono-arm-cpuinfo-v7.patch @@ -0,0 +1,16 @@ +Index: mono-2.10.6/mono/mini/mini-arm.c +=================================================================== +--- mono-2.10.6.orig/mono/mini/mini-arm.c ++++ mono-2.10.6/mono/mini/mini-arm.c +@@ -592,6 +592,11 @@ mono_arch_cpu_optimizazions (guint32 *ex + v5_supported = TRUE; + darwin = TRUE; + iphone_abi = TRUE; ++#elif 1 ++ thumb_supported = TRUE; ++ v5_supported = TRUE; ++ v6_supported = TRUE; ++ v7_supported = TRUE; + #else + char buf [512]; + char *line; diff --git a/mono-arm-vfp.patch b/mono-arm-vfp.patch new file mode 100644 index 0000000..37cddd3 --- /dev/null +++ b/mono-arm-vfp.patch @@ -0,0 +1,22 @@ +Index: mono-2.10.6/configure +=================================================================== +--- mono-2.10.6.orig/configure ++++ mono-2.10.6/configure +@@ -23729,11 +23729,12 @@ main () + return 0; + } + _ACEOF +-if ac_fn_c_try_compile "$LINENO"; then : +- fpu=FPA +-else +- fpu=NONE +-fi ++#if ac_fn_c_try_compile "$LINENO"; then : ++# fpu=FPA ++#else ++# fpu=NONE ++#fi ++fpu=VFP + rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $fpu" >&5 diff --git a/mono-core.changes b/mono-core.changes index d802b33..8b4cdfa 100644 --- a/mono-core.changes +++ b/mono-core.changes @@ -3,6 +3,26 @@ Sat Jul 21 23:08:36 UTC 2012 - dvaleev@suse.com - fix ppc build +------------------------------------------------------------------- +Fri Dec 2 13:31:57 UTC 2011 - agraf@suse.de + +- use hammer approach for vfp instead + +------------------------------------------------------------------- +Sun Nov 27 21:17:24 UTC 2011 - agraf@suse.de + +- add arch linux vfp patch + +------------------------------------------------------------------- +Sun Nov 27 16:36:08 UTC 2011 - agraf@suse.de + +- use vfp on armv7 + +------------------------------------------------------------------- +Sun Nov 27 03:01:37 UTC 2011 - agraf@suse.de + +- fix arm build to not depend on the build host's /proc/cpuinfo + ------------------------------------------------------------------- Fri Oct 7 14:47:35 CEST 2011 - dmueller@suse.de diff --git a/mono-core.spec b/mono-core.spec index bfe55b9..5e0f997 100644 --- a/mono-core.spec +++ b/mono-core.spec @@ -33,6 +33,9 @@ Url: http://www.mono-project.com Version: 2.10.6 Release: 0 Source0: mono-%{version}.tar.bz2 +Patch1: mono-arm-cpuinfo-v5.patch +Patch2: mono-arm-cpuinfo-v7.patch +Patch3: mono-arm-vfp.patch BuildRequires: bison BuildRequires: fdupes BuildRequires: gcc-c++ @@ -99,12 +102,25 @@ technologies that have been submitted to the ECMA for standardization. %prep %setup -q -n mono-%{version} +%ifarch armv5el +%patch1 -p1 +%endif +%ifarch armv7l armv7hl +%patch2 -p1 +%patch3 -p1 +%endif %build # These are only needed if there are patches to the runtime #rm -f libgc/libtool.m4 #autoreconf --force --install #autoreconf --force --install libgc +%ifarch armv7l armv7hl +export MONO_CPU_ARCH="armv7l-thumb" +%endif +%ifarch armv5el +export MONO_CPU_ARCH="armv5el" +%endif export CFLAGS=" $RPM_OPT_FLAGS -fno-strict-aliasing" # distro specific configure options %if %llvm == yes