summaryrefslogtreecommitdiffstats
path: root/meta/recipes-graphics/clutter
diff options
context:
space:
mode:
authorJoshua Lock <josh@linux.intel.com>2012-01-03 17:31:20 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-01-04 11:24:24 +0000
commite19586765af518892ed55d9bfd45d0857566ae98 (patch)
tree7cc708ec0e7bc16b60bb7103eb6f81c1b067dce8 /meta/recipes-graphics/clutter
parentab56f27d96cbd2c79ca16d12333687ca9720934c (diff)
downloadopenembedded-core-e19586765af518892ed55d9bfd45d0857566ae98.tar.gz
cogl: ensure we can build on armv4
Without this patch cogl will not build for armv4 as it uses an unsupported instruction. This changeset adds a patch from Wolfgang Denk to add an extra guard around armv5 or above code. Signed-off-by: Joshua Lock <josh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-graphics/clutter')
-rw-r--r--meta/recipes-graphics/clutter/cogl/build_for_armv4t.patch23
-rw-r--r--meta/recipes-graphics/clutter/cogl_1.8.2.bb5
-rw-r--r--meta/recipes-graphics/clutter/cogl_git.bb5
3 files changed, 30 insertions, 3 deletions
diff --git a/meta/recipes-graphics/clutter/cogl/build_for_armv4t.patch b/meta/recipes-graphics/clutter/cogl/build_for_armv4t.patch
new file mode 100644
index 0000000000..36350854ee
--- /dev/null
+++ b/meta/recipes-graphics/clutter/cogl/build_for_armv4t.patch
@@ -0,0 +1,23 @@
+GCC will define __ARM_ARCH_4T__ when building with "-march=armv4t" so we can
+check this to turn off the use of 'clz' instructions, which otherwise would
+cause compile errors like "selected processor does not support ARM mode
+`clz r3,r0'".
+
+Upstream-Status: Submitted
+
+Signed-off-by: Wolfgang Denk <wd@denx.de>
+Signed-off-by: Joshua Lock <josh@linux.intel.com>
+
+Index: cogl-1.8.2/cogl/cogl-fixed.c
+===================================================================
+--- cogl-1.8.2.orig/cogl/cogl-fixed.c
++++ cogl-1.8.2/cogl/cogl-fixed.c
+@@ -626,7 +626,7 @@ cogl_fixed_sqrt (CoglFixed x)
+ /*
+ * Find the highest bit set
+ */
+-#if defined (__arm__)
++#if defined (__arm__) && !defined(__ARM_ARCH_4T__)
+ /* This actually requires at least arm v5, but gcc does not seem
+ * to set the architecture defines correctly, and it is I think
+ * very unlikely that anyone will want to use clutter on anything
diff --git a/meta/recipes-graphics/clutter/cogl_1.8.2.bb b/meta/recipes-graphics/clutter/cogl_1.8.2.bb
index d99c443b5f..25875f344a 100644
--- a/meta/recipes-graphics/clutter/cogl_1.8.2.bb
+++ b/meta/recipes-graphics/clutter/cogl_1.8.2.bb
@@ -1,9 +1,12 @@
require cogl.inc
+PR = "r1"
+
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
SRC_URI = "http://source.clutter-project.org/sources/cogl/1.8/${BPN}-${PV}.tar.bz2 \
- file://macro-versions.patch"
+ file://macro-versions.patch \
+ file://build_for_armv4t.patch"
SRC_URI[md5sum] = "3145cbf7ff162c33065ea4421c047e2f"
SRC_URI[sha256sum] = "8b647b51a4fa93034fcd74ffe86b3d4c919b0e54789108f6d065414e6162ab73"
diff --git a/meta/recipes-graphics/clutter/cogl_git.bb b/meta/recipes-graphics/clutter/cogl_git.bb
index 7a10dd8004..689b965288 100644
--- a/meta/recipes-graphics/clutter/cogl_git.bb
+++ b/meta/recipes-graphics/clutter/cogl_git.bb
@@ -5,11 +5,12 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
# the 1.8.2 tag
SRCREV = "e398e374e2ff0e88bc1d63577a192f8ca04a1cb5"
PV = "1.8.2+git${SRCPV}"
-PR = "r0"
+PR = "r1"
DEFAULT_PREFERENCE = "-1"
-SRC_URI = "git://git.gnome.org/cogl;protocol=git;branch=master"
+SRC_URI = "git://git.gnome.org/cogl;protocol=git;branch=master \
+ file://build_for_armv4t.patch"
S = "${WORKDIR}/git"
AUTOTOOLS_AUXDIR = "${S}/build"