summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrea Adami <andrea.adami@gmail.com>2013-01-11 17:26:40 +0000
committerMartin Jansa <Martin.Jansa@gmail.com>2013-01-30 14:21:30 +0100
commitbdf8d1dc4a4440109f68f23fdbb0272904cd48e1 (patch)
treef4f8c9f778d22d298b3ec16d29ceedd18ac8770c
parentfa0079dbe119bd0c5aba9e7826bfd8fdcc4a3fa0 (diff)
downloadmeta-openembedded-bdf8d1dc4a4440109f68f23fdbb0272904cd48e1.tar.gz
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>
-rw-r--r--meta-initramfs/recipes-devtools/klibc/klibc-2.0.2/armv4-fix-v4bx.patch15
-rw-r--r--meta-initramfs/recipes-devtools/klibc/klibc.inc12
2 files changed, 24 insertions, 3 deletions
diff --git a/meta-initramfs/recipes-devtools/klibc/klibc-2.0.2/armv4-fix-v4bx.patch b/meta-initramfs/recipes-devtools/klibc/klibc-2.0.2/armv4-fix-v4bx.patch
new file mode 100644
index 000000000..6bb384bb0
--- /dev/null
+++ b/meta-initramfs/recipes-devtools/klibc/klibc-2.0.2/armv4-fix-v4bx.patch
@@ -0,0 +1,15 @@
1Status: not applicable upstream, in OE/Yocto we use $(FIX_V4BX)
2which is "" in case of armv5 or thumbs.
3
4Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
5
6--- a/usr/klibc/arch/arm/MCONFIG 2013-01-09 01:12:02.000000000 +0100
7+++ b/usr/klibc/arch/arm/MCONFIG 2013-01-08 23:45:59.000000000 +0100
8@@ -29,6 +29,7 @@
9 KLIBCSHAREDFLAGS = -Ttext 0x01800200
10 ifeq ($(CONFIG_AEABI),y)
11 KLIBCREQFLAGS += -mabi=aapcs-linux -mno-thumb-interwork
12+KLIBCLDFLAGS += $(FIX_ARMV4_EABI_BX)
13 else
14 KLIBCREQFLAGS += -mabi=apcs-gnu -mno-thumb-interwork
15 endif
diff --git a/meta-initramfs/recipes-devtools/klibc/klibc.inc b/meta-initramfs/recipes-devtools/klibc/klibc.inc
index a95706ee3..fa31f73d1 100644
--- a/meta-initramfs/recipes-devtools/klibc/klibc.inc
+++ b/meta-initramfs/recipes-devtools/klibc/klibc.inc
@@ -10,7 +10,7 @@ LIC_FILES_CHKSUM = "file://usr/klibc/LICENSE;md5=d75181f10e998c21eb147f6d2e43ce8
10# debugsources.list: No such file or directory: 10# debugsources.list: No such file or directory:
11INHIBIT_PACKAGE_DEBUG_SPLIT = "1" 11INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
12 12
13INC_PR = "r0" 13INC_PR = "r1"
14 14
15KLIBC_ARCH = '${TARGET_ARCH}' 15KLIBC_ARCH = '${TARGET_ARCH}'
16KLIBC_ARCH_armeb = 'arm' 16KLIBC_ARCH_armeb = 'arm'
@@ -21,11 +21,17 @@ KLIBC_ARCH_i586 = 'i386'
21KLIBC_ARCH_i686 = 'i386' 21KLIBC_ARCH_i686 = 'i386'
22KLIBC_ARCH_pentium = 'i386' 22KLIBC_ARCH_pentium = 'i386'
23 23
24export FIX_ARMV4_EABI_BX = "${FIX_V4BX}"
25
24SRCREV = "f05ff116bb9edbbb81d82fa47b78e630ce878470" 26SRCREV = "f05ff116bb9edbbb81d82fa47b78e630ce878470"
25SRC_URI = "git://git.kernel.org/pub/scm/libs/klibc/klibc.git;protocol=git" 27SRC_URI = "git://git.kernel.org/pub/scm/libs/klibc/klibc.git;protocol=git"
26 28
27SRC_URI_append_linux-gnueabi = " file://klibc-config-eabi.patch" 29SRC_URI_append_linux-gnueabi = " file://klibc-config-eabi.patch \
28SRC_URI_append_linux-uclibceabi = " file://klibc-config-eabi.patch" 30 file://armv4-fix-v4bx.patch \
31 "
32SRC_URI_append_linux-uclibceabi = " file://klibc-config-eabi.patch \
33 file://armv4-fix-v4bx.patch \
34 "
29 35
30SRC_URI += "file://klibc-linux-libc-dev.patch \ 36SRC_URI += "file://klibc-linux-libc-dev.patch \
31 file://prefix.patch \ 37 file://prefix.patch \