--- a/configure.in	2011-09-13 21:36:18.000000000 -0600
+++ b/configure.in	2011-10-20 00:25:35.000000000 -0600
@@ -2651,15 +2651,24 @@
 	])
 fi
 
-if test ${TARGET} = ARM && test x$cross_compiling = xno && test x$enable_mcs_build != xno; then
+AC_ARG_WITH(fpu, [ --with-fpu=FPA,VFP,NONE    Select fpu to use on arm],[fpu=$withval])
+
+if test ${TARGET} = ARM; then
 	dnl ******************************************
 	dnl *** Check to see what FPU is available ***
 	dnl ******************************************
 	AC_MSG_CHECKING(which FPU to use)
 
-	AC_TRY_COMPILE([], [
-		__asm__ ("ldfd f0, [r0]");
-		], fpu=FPA, fpu=NONE)
+       if test "x$fpu" = "x"; then
+
+               AC_TRY_COMPILE([], [
+                       __asm__ ("ldfd f0, [r0]");
+               ], fpu=FPA, [
+                               AC_TRY_COMPILE([], [
+                                       __asm__ ("fldd d0, [r0]");
+                               ], fpu=VFP, fpu=NONE)
+               ])
+       fi
 
 	AC_MSG_RESULT($fpu)
 	CPPFLAGS="$CPPFLAGS -DARM_FPU_$fpu=1"