aboutsummaryrefslogtreecommitdiffstats
path: root/conf
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2011-03-31 07:48:29 -0700
committerTom Rini <trini@kernel.crashing.org>2011-09-22 16:55:35 -0700
commitf0a2cb37fca677390e5b0c33628addb7615fa846 (patch)
treea568e16572ba4321cfa11987d09a21812b97607e /conf
parentb1b372482515dd1e0bdcd05108d7be28303065d6 (diff)
downloadopenembedded-f0a2cb37fca677390e5b0c33628addb7615fa846.tar.gz
openembedded-f0a2cb37fca677390e5b0c33628addb7615fa846.tar.bz2
openembedded-f0a2cb37fca677390e5b0c33628addb7615fa846.zip
conf/,gcc-common.inc: Add support for ARM hard float toolchain
Rename ARM_FP_MODE to ARM_FP_ABI Set target fpu to hard for hardfp ARMv7 Use machine override to add base package arch instead of appending to OVERRIDES directly Pass --with-float option to gcc configure taking into account what float ABI is selected through ARM_FP_ABI Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Diffstat (limited to 'conf')
-rw-r--r--conf/distro/include/sane-toolchain.inc3
-rw-r--r--conf/distro/minimal-uclibc.conf3
-rw-r--r--conf/machine/include/tune-cortexa8.inc6
3 files changed, 5 insertions, 7 deletions
diff --git a/conf/distro/include/sane-toolchain.inc b/conf/distro/include/sane-toolchain.inc
index 5882fd7a90..a174a070fd 100644
--- a/conf/distro/include/sane-toolchain.inc
+++ b/conf/distro/include/sane-toolchain.inc
@@ -73,7 +73,7 @@ require conf/distro/include/toolchain-${TOOLCHAIN_TYPE}.inc
# Add BASE_PACKAGE_ARCH to the overrides list so that we can override the
# ARM_INSTRUCTION_SET like below
-OVERRIDES =. "${BASE_PACKAGE_ARCH}:"
+MACHINE_OVERRIDES += "${FEED_ARCH}"
# ARM920T and up can use thumb mode to decrease binary size at the expense of speed
# (the complete story is a bit more nuanced due to cache starvation)
@@ -114,6 +114,7 @@ TARGET_FPU_ppc405 ?= "soft"
TARGET_FPU_armv6 ?= "hard"
TARGET_FPU_armv6-novfp ?= "soft"
TARGET_FPU_armv7a ?= "hard"
+TARGET_FPU_armv7a-hardfp ?= "hard"
TARGET_FPU_ppc603e ?= "hard"
# webkit-gtk and cairo have alignment issues with double instructions on armv5 so
diff --git a/conf/distro/minimal-uclibc.conf b/conf/distro/minimal-uclibc.conf
index b85ed1e7e1..487ae1bdd7 100644
--- a/conf/distro/minimal-uclibc.conf
+++ b/conf/distro/minimal-uclibc.conf
@@ -13,9 +13,6 @@
#
DISTRO_NAME = "minimal-uclibc"
-TARGET_FPU_arm = "soft"
-TARGET_FPU_armeb = "soft"
-
LIBC = "uclibc"
require conf/distro/minimal.conf
diff --git a/conf/machine/include/tune-cortexa8.inc b/conf/machine/include/tune-cortexa8.inc
index 2ac0ebfe45..5f556e0514 100644
--- a/conf/machine/include/tune-cortexa8.inc
+++ b/conf/machine/include/tune-cortexa8.inc
@@ -4,10 +4,10 @@
# [3] https://support.codesourcery.com/GNUToolchain/kbentry29
# Can be 'softfp' or 'hardfp'
-ARM_FP_MODE ?= "softfp"
+ARM_FP_ABI ?= "softfp"
-ARM_FP_OPT = "${@['-mfloat-abi=softfp', '-mfloat-abi=hard'][bb.data.getVar('ARM_FP_MODE', d, 1) == 'hardfp']}"
-ARM_FP_PACKAGESUFFIX = "${@['', '-hardfp'][bb.data.getVar('ARM_FP_MODE', d, 1) == 'hardfp']}"
+ARM_FP_OPT = "${@['-mfloat-abi=softfp', '-mfloat-abi=hard'][bb.data.getVar('ARM_FP_ABI', d, 1) == 'hardfp']}"
+ARM_FP_PACKAGESUFFIX = "${@['', '-hardfp'][bb.data.getVar('ARM_FP_ABI', d, 1) == 'hardfp']}"
TARGET_CC_ARCH = "-march=armv7-a -mtune=cortex-a8 -mfpu=neon ${ARM_FP_OPT}"