Disable the VFP assembler code, whose build system when -fpu=maverick is selected is broken for two reasons: - liboil/arm/*.[cs] enables VFP code by testing the __VFP_FP__ macro, which tests for the FP storage format in use, not for the generation of hardfloat instructions. This wold have been OK anyway since liboil checks at runtime whether the VFP coprocessor is present. - the Makefiles fail to pass -mfpu=vfp to the assembly of math_vfp_asm.S so when -mfpu=maverick is given, math_vfp.c (which is compiled with an explicit -mfpu=vfp added at the end of the compile line) creates the function call stubs, but __VFP_FP__ is not selected in the assembler file (__MAVERICK__ is, and is not overridden because -mfpu=vfp is omitted in ASFLAGS for that file) so the compilation dies at link stage with undefined vfp_* function calls. Since I am building for Maverick hardfloat, the rest of the library will contain Maverick instructions and so will never run on other CPUs anyway, so here we cut VFP support out completely. Martin Guy 26 march 2009 --- liboil-0.3.15/liboil/arm/math_vfp.c.old 2008-03-13 20:17:59.000000000 +0000 +++ liboil-0.3.15/liboil/arm/math_vfp.c 2009-03-26 13:53:45.000000000 +0000 @@ -30,7 +30,7 @@ #include #include -#if __VFP_FP__ +#if 0 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); --- liboil-0.3.15/liboil/arm/math_vfp_asm.S.old 2007-11-16 02:53:47.000000000 +0000 +++ liboil-0.3.15/liboil/arm/math_vfp_asm.S 2009-03-26 13:49:33.000000000 +0000 @@ -24,7 +24,7 @@ * SUCH DAMAGE. */ -#if __VFP_FP__ +#if 0 /* ** compile with -mcpu=arm1136j-s -mfpu=vfp -mfloat-abi=softfp **