diff options
author | Andrea Adami <andrea.adami@gmail.com> | 2013-01-11 17:26:40 +0000 |
---|---|---|
committer | Martin Jansa <Martin.Jansa@gmail.com> | 2013-01-30 14:21:30 +0100 |
commit | bdf8d1dc4a4440109f68f23fdbb0272904cd48e1 (patch) | |
tree | f4f8c9f778d22d298b3ec16d29ceedd18ac8770c | |
parent | fa0079dbe119bd0c5aba9e7826bfd8fdcc4a3fa0 (diff) | |
download | meta-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.patch | 15 | ||||
-rw-r--r-- | meta-initramfs/recipes-devtools/klibc/klibc.inc | 12 |
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 @@ | |||
1 | Status: not applicable upstream, in OE/Yocto we use $(FIX_V4BX) | ||
2 | which is "" in case of armv5 or thumbs. | ||
3 | |||
4 | Signed-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: |
11 | INHIBIT_PACKAGE_DEBUG_SPLIT = "1" | 11 | INHIBIT_PACKAGE_DEBUG_SPLIT = "1" |
12 | 12 | ||
13 | INC_PR = "r0" | 13 | INC_PR = "r1" |
14 | 14 | ||
15 | KLIBC_ARCH = '${TARGET_ARCH}' | 15 | KLIBC_ARCH = '${TARGET_ARCH}' |
16 | KLIBC_ARCH_armeb = 'arm' | 16 | KLIBC_ARCH_armeb = 'arm' |
@@ -21,11 +21,17 @@ KLIBC_ARCH_i586 = 'i386' | |||
21 | KLIBC_ARCH_i686 = 'i386' | 21 | KLIBC_ARCH_i686 = 'i386' |
22 | KLIBC_ARCH_pentium = 'i386' | 22 | KLIBC_ARCH_pentium = 'i386' |
23 | 23 | ||
24 | export FIX_ARMV4_EABI_BX = "${FIX_V4BX}" | ||
25 | |||
24 | SRCREV = "f05ff116bb9edbbb81d82fa47b78e630ce878470" | 26 | SRCREV = "f05ff116bb9edbbb81d82fa47b78e630ce878470" |
25 | SRC_URI = "git://git.kernel.org/pub/scm/libs/klibc/klibc.git;protocol=git" | 27 | SRC_URI = "git://git.kernel.org/pub/scm/libs/klibc/klibc.git;protocol=git" |
26 | 28 | ||
27 | SRC_URI_append_linux-gnueabi = " file://klibc-config-eabi.patch" | 29 | SRC_URI_append_linux-gnueabi = " file://klibc-config-eabi.patch \ |
28 | SRC_URI_append_linux-uclibceabi = " file://klibc-config-eabi.patch" | 30 | file://armv4-fix-v4bx.patch \ |
31 | " | ||
32 | SRC_URI_append_linux-uclibceabi = " file://klibc-config-eabi.patch \ | ||
33 | file://armv4-fix-v4bx.patch \ | ||
34 | " | ||
29 | 35 | ||
30 | SRC_URI += "file://klibc-linux-libc-dev.patch \ | 36 | SRC_URI += "file://klibc-linux-libc-dev.patch \ |
31 | file://prefix.patch \ | 37 | file://prefix.patch \ |