From: Khem Raj Date: Sun, 10 May 2009 17:23:29 +0000 (-0700) Subject: liboil_0.3.15: Consider the soft-float case. X-Git-Tag: Release-2010-05/1~3566^2~46 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a81810bac25bbe1565ea5e327ba8ecc37010c595;p=openembedded.git 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. --- 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 0000000000..7c63aaf994 --- /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 + #include + +-#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 338121ac66..a077fb4e7d 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