klibc_2.0.2: apply FIX_V4BX patch for armv4 targets only

* linker fix is needed to avoid 'bx, lr' instruction on armv4
 * patch is applied only for armv4 for eabi builds
 * http://wiki.debian.org/ArmEabiPort#Choice_of_minimum_CPU

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
This commit is contained in:
Andrea Adami 2013-01-11 17:26:40 +00:00 committed by Martin Jansa
parent fa0079dbe1
commit bdf8d1dc4a
2 changed files with 24 additions and 3 deletions

View File

@ -0,0 +1,15 @@
Status: not applicable upstream, in OE/Yocto we use $(FIX_V4BX)
which is "" in case of armv5 or thumbs.
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
--- a/usr/klibc/arch/arm/MCONFIG 2013-01-09 01:12:02.000000000 +0100
+++ b/usr/klibc/arch/arm/MCONFIG 2013-01-08 23:45:59.000000000 +0100
@@ -29,6 +29,7 @@
KLIBCSHAREDFLAGS = -Ttext 0x01800200
ifeq ($(CONFIG_AEABI),y)
KLIBCREQFLAGS += -mabi=aapcs-linux -mno-thumb-interwork
+KLIBCLDFLAGS += $(FIX_ARMV4_EABI_BX)
else
KLIBCREQFLAGS += -mabi=apcs-gnu -mno-thumb-interwork
endif

View File

@ -10,7 +10,7 @@ LIC_FILES_CHKSUM = "file://usr/klibc/LICENSE;md5=d75181f10e998c21eb147f6d2e43ce8
# debugsources.list: No such file or directory:
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
INC_PR = "r0"
INC_PR = "r1"
KLIBC_ARCH = '${TARGET_ARCH}'
KLIBC_ARCH_armeb = 'arm'
@ -21,11 +21,17 @@ KLIBC_ARCH_i586 = 'i386'
KLIBC_ARCH_i686 = 'i386'
KLIBC_ARCH_pentium = 'i386'
export FIX_ARMV4_EABI_BX = "${FIX_V4BX}"
SRCREV = "f05ff116bb9edbbb81d82fa47b78e630ce878470"
SRC_URI = "git://git.kernel.org/pub/scm/libs/klibc/klibc.git;protocol=git"
SRC_URI_append_linux-gnueabi = " file://klibc-config-eabi.patch"
SRC_URI_append_linux-uclibceabi = " file://klibc-config-eabi.patch"
SRC_URI_append_linux-gnueabi = " file://klibc-config-eabi.patch \
file://armv4-fix-v4bx.patch \
"
SRC_URI_append_linux-uclibceabi = " file://klibc-config-eabi.patch \
file://armv4-fix-v4bx.patch \
"
SRC_URI += "file://klibc-linux-libc-dev.patch \
file://prefix.patch \