eglibc builds for arm-eabi unconditionally enables the libc-do-syscall.S file, which contains thumb assembly. It's unused in arm-eabi-nothumb case, so just ifdef the actual code.
Signed-off-by: Dmitry Eremin-Solenikov <dbarysh...@gmail.com> --- .../eglibc-fixup-arm-eabi-nothumb.patch | 17 +++++++++++++++++ .../eglibc-fixup-arm-eabi-nothumb.patch | 17 +++++++++++++++++ meta/recipes-core/eglibc/eglibc_2.12.bb | 3 ++- meta/recipes-core/eglibc/eglibc_2.13.bb | 3 ++- 4 files changed, 38 insertions(+), 2 deletions(-) create mode 100644 meta/recipes-core/eglibc/eglibc-2.12/eglibc-fixup-arm-eabi-nothumb.patch create mode 100644 meta/recipes-core/eglibc/eglibc-2.13/eglibc-fixup-arm-eabi-nothumb.patch diff --git a/meta/recipes-core/eglibc/eglibc-2.12/eglibc-fixup-arm-eabi-nothumb.patch b/meta/recipes-core/eglibc/eglibc-2.12/eglibc-fixup-arm-eabi-nothumb.patch new file mode 100644 index 0000000..e189b23 --- /dev/null +++ b/meta/recipes-core/eglibc/eglibc-2.12/eglibc-fixup-arm-eabi-nothumb.patch @@ -0,0 +1,17 @@ +Index: libc/ports/sysdeps/unix/sysv/linux/arm/eabi/libc-do-syscall.S +=================================================================== +--- libc.orig/ports/sysdeps/unix/sysv/linux/arm/eabi/libc-do-syscall.S 2011-07-31 12:07:13.000000000 +0400 ++++ libc/ports/sysdeps/unix/sysv/linux/arm/eabi/libc-do-syscall.S 2011-07-31 12:08:30.000000000 +0400 +@@ -25,6 +25,7 @@ + ARM unwind tables for register to register moves, the actual opcodes + are not defined. */ + ++#ifdef __thumb__ + .thumb + .syntax unified + .hidden __libc_do_syscall +@@ -41,3 +42,4 @@ + pop {r7, pc} + .fnend + END (__libc_do_syscall) ++#endif diff --git a/meta/recipes-core/eglibc/eglibc-2.13/eglibc-fixup-arm-eabi-nothumb.patch b/meta/recipes-core/eglibc/eglibc-2.13/eglibc-fixup-arm-eabi-nothumb.patch new file mode 100644 index 0000000..e189b23 --- /dev/null +++ b/meta/recipes-core/eglibc/eglibc-2.13/eglibc-fixup-arm-eabi-nothumb.patch @@ -0,0 +1,17 @@ +Index: libc/ports/sysdeps/unix/sysv/linux/arm/eabi/libc-do-syscall.S +=================================================================== +--- libc.orig/ports/sysdeps/unix/sysv/linux/arm/eabi/libc-do-syscall.S 2011-07-31 12:07:13.000000000 +0400 ++++ libc/ports/sysdeps/unix/sysv/linux/arm/eabi/libc-do-syscall.S 2011-07-31 12:08:30.000000000 +0400 +@@ -25,6 +25,7 @@ + ARM unwind tables for register to register moves, the actual opcodes + are not defined. */ + ++#ifdef __thumb__ + .thumb + .syntax unified + .hidden __libc_do_syscall +@@ -41,3 +42,4 @@ + pop {r7, pc} + .fnend + END (__libc_do_syscall) ++#endif diff --git a/meta/recipes-core/eglibc/eglibc_2.12.bb b/meta/recipes-core/eglibc/eglibc_2.12.bb index 1ada892..eb7d220 100644 --- a/meta/recipes-core/eglibc/eglibc_2.12.bb +++ b/meta/recipes-core/eglibc/eglibc_2.12.bb @@ -1,7 +1,7 @@ require eglibc.inc DEPENDS += "gperf-native" -PR = "r20" +PR = "r21" SRCREV = "14158" @@ -11,6 +11,7 @@ SRC_URI = "svn://www.eglibc.org/svn/branches/;module=${EGLIBC_BRANCH};proto=http file://IO-acquire-lock-fix.patch \ file://shorten-build-commands.patch \ file://mips-rld-map-check.patch \ + file://eglibc-fixup-arm-eabi-nothumb.patch \ file://etc/ld.so.conf \ file://generate-supported.mk \ " diff --git a/meta/recipes-core/eglibc/eglibc_2.13.bb b/meta/recipes-core/eglibc/eglibc_2.13.bb index 41fe7c7..e54692b 100644 --- a/meta/recipes-core/eglibc/eglibc_2.13.bb +++ b/meta/recipes-core/eglibc/eglibc_2.13.bb @@ -3,7 +3,7 @@ require eglibc.inc SRCREV = "14157" DEPENDS += "gperf-native" -PR = "r9" +PR = "r10" PR_append = "+svnr${SRCPV}" EGLIBC_BRANCH="eglibc-2_13" @@ -13,6 +13,7 @@ SRC_URI = "svn://www.eglibc.org/svn/branches/;module=${EGLIBC_BRANCH};proto=http file://shorten-build-commands.patch \ file://mips-rld-map-check.patch \ file://stack-protector-test.patch \ + file://eglibc-fixup-arm-eabi-nothumb.patch \ file://etc/ld.so.conf \ file://generate-supported.mk \ file://glibc_bug_fix_12454.patch \ -- 1.7.2.3 _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core