[oe-commits] Khem Raj : liboil_0.3.15: Consider the soft-float case.

GIT User account git at amethyst.openembedded.net
Sun May 10 17:34:30 UTC 2009


Module: openembedded.git
Branch: org.openembedded.dev
Commit: a81810bac25bbe1565ea5e327ba8ecc37010c595
URL:    http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=a81810bac25bbe1565ea5e327ba8ecc37010c595

Author: Khem Raj <raj.khem at gmail.com>
Date:   Sun May 10 10:23:29 2009 -0700

liboil_0.3.15: Consider the soft-float case.

__VFP_FP__ means that the floating point format in use is that of the ARM VFP.
It does not tell if one has VFP unit or not. So using this define will
still use  VFP instructions on cpus which do not have VFP.
To know that we also need to consider __SOFTFP__ which means that
instead of floating point instructions, library calls are
being generated for floating point math operations so that
the code will run on a processor without an FPU.

---

 recipes/liboil/liboil-0.3.15/arm-vfp.patch |   26 ++++++++++++++++++++++++++
 recipes/liboil/liboil_0.3.15.bb            |    3 ++-
 2 files changed, 28 insertions(+), 1 deletions(-)

diff --git a/recipes/liboil/liboil-0.3.15/arm-vfp.patch b/recipes/liboil/liboil-0.3.15/arm-vfp.patch
new file mode 100644
index 0000000..7c63aaf
--- /dev/null
+++ b/recipes/liboil/liboil-0.3.15/arm-vfp.patch
@@ -0,0 +1,26 @@
+Index: liboil-0.3.15/liboil/arm/math_vfp.c
+===================================================================
+--- liboil-0.3.15.orig/liboil/arm/math_vfp.c	2008-03-13 13:17:59.000000000 -0700
++++ liboil-0.3.15/liboil/arm/math_vfp.c	2009-05-06 01:51:09.000000000 -0700
+@@ -30,7 +30,7 @@
+ #include <liboil/liboilclasses.h>
+ #include <liboil/liboilfunction.h>
+ 
+-#if __VFP_FP__
++#if defined(__VFP_FP__) && !defined(__SOFTFP__)
+ 
+ extern void vfp_add_f32 (float *d, const float *s1, const float *s2, int n);
+ extern void vfp_add_f64 (double *d, const double *s1, const double *s2, int n);
+Index: liboil-0.3.15/liboil/arm/math_vfp_asm.S
+===================================================================
+--- liboil-0.3.15.orig/liboil/arm/math_vfp_asm.S	2007-11-15 18:53:47.000000000 -0800
++++ liboil-0.3.15/liboil/arm/math_vfp_asm.S	2009-05-06 01:50:39.000000000 -0700
+@@ -24,7 +24,7 @@
+  * SUCH DAMAGE.
+  */
+ 
+-#if __VFP_FP__
++#if defined(__VFP_FP__) && !defined(__SOFTFP__)
+ /* 
+ ** compile with -mcpu=arm1136j-s -mfpu=vfp -mfloat-abi=softfp
+ **
diff --git a/recipes/liboil/liboil_0.3.15.bb b/recipes/liboil/liboil_0.3.15.bb
index 338121a..a077fb4 100644
--- a/recipes/liboil/liboil_0.3.15.bb
+++ b/recipes/liboil/liboil_0.3.15.bb
@@ -1,12 +1,13 @@
 DESCRIPTION = "Liboil is a library of simple functions that are optimized for various CPUs."
 HOMEPAGE = "http://liboil.freedesktop.org/"
 LICENSE = "various"
-PR = "r2"
+PR = "r4"
 
 DEPENDS = "glib-2.0"
 
 SRC_URI = "http://liboil.freedesktop.org/download/${P}.tar.gz \
 	   file://autotools.patch;patch=1 \
+	   file://arm-vfp.patch;patch=1 \
           "
 
 inherit autotools pkgconfig





More information about the Openembedded-commits mailing list