From ac94b8f1653ee9a459aa26a65243d11b8c308064 Mon Sep 17 00:00:00 2001
From: Kevin Mihelich <kevin@archlinuxarm.org>
Date: Sun, 15 Jan 2017 12:11:57 -0700
Subject: [PATCH] ARM fixes

---
 build/make/configure.sh | 21 +++++++++++----------
 configure               |  2 ++
 2 files changed, 13 insertions(+), 10 deletions(-)

diff --git a/build/make/configure.sh b/build/make/configure.sh
index 007e02000..c7e9076b3 100644
--- build/make/configure.sh
+++ build/make/configure.sh
@@ -680,6 +680,14 @@ process_common_toolchain() {
       aarch64*)
         tgt_isa=arm64
         ;;
+      armv5te*)
+        tgt_isa=armv5te
+        float_abi=soft
+        ;;
+      armv6*-gnueabihf)
+        tgt_isa=armv6
+        float_abi=hard
+        ;;
       armv7*-hardfloat* | armv7*-gnueabihf | arm-*-gnueabihf)
         tgt_isa=armv7
         float_abi=hard
@@ -873,7 +881,8 @@ process_common_toolchain() {
           soft_enable neon
           ;;
         armv7|armv7s)
           soft_enable neon
+          float_abi=hard
           # Only enable neon_asm when neon is also enabled.
           enabled neon && soft_enable neon_asm
           # If someone tries to force it through, die.
@@ -894,13 +902,6 @@ process_common_toolchain() {
           check_add_asflags --defsym ARCHITECTURE=${arch_int}
           tune_cflags="-mtune="
           if [ ${tgt_isa} = "armv7" ] || [ ${tgt_isa} = "armv7s" ]; then
-            if [ -z "${float_abi}" ]; then
-              check_cpp <<EOF && float_abi=hard || float_abi=softfp
-#ifndef __ARM_PCS_VFP
-#error "not hardfp"
-#endif
-EOF
-            fi
             check_add_cflags  -march=armv7-a -mfloat-abi=${float_abi}
             check_add_asflags -march=armv7-a -mfloat-abi=${float_abi}
 
@@ -912,8 +913,8 @@ EOF
             check_add_cflags -march=armv8-a
             check_add_asflags -march=armv8-a
           else
-            check_add_cflags -march=${tgt_isa}
-            check_add_asflags -march=${tgt_isa}
+            check_add_cflags -march=${tgt_isa} -mfloat-abi=${float_abi}
+            check_add_asflags -march=${tgt_isa} -mfloat-abi=${float_abi}
           fi
 
           enabled debug && add_asflags -g
diff --git a/configure b/configure
index fb732acf3..43a730fdb 100755
--- configure
+++ configure
@@ -101,6 +101,8 @@ EOF
 all_platforms="${all_platforms} arm64-android-gcc"
 all_platforms="${all_platforms} arm64-darwin-gcc"
 all_platforms="${all_platforms} arm64-linux-gcc"
+all_platforms="${all_platforms} armv5te-linux-gcc"
+all_platforms="${all_platforms} armv6-linux-gcc"
 all_platforms="${all_platforms} armv7-android-gcc"   #neon Cortex-A8
 all_platforms="${all_platforms} armv7-darwin-gcc"    #neon Cortex-A8
 all_platforms="${all_platforms} armv7-linux-rvct"    #neon Cortex-A8
-- 
2.11.0
