summaryrefslogtreecommitdiff
path: root/packages/binutils
diff options
context:
space:
mode:
Diffstat (limited to 'packages/binutils')
-rw-r--r--packages/binutils/binutils-2.18/binutils-uclibc-gas-needs-libm.patch38
-rw-r--r--packages/binutils/binutils_2.18.bb3
2 files changed, 40 insertions, 1 deletions
diff --git a/packages/binutils/binutils-2.18/binutils-uclibc-gas-needs-libm.patch b/packages/binutils/binutils-2.18/binutils-uclibc-gas-needs-libm.patch
new file mode 100644
index 0000000000..db838cf20c
--- /dev/null
+++ b/packages/binutils/binutils-2.18/binutils-uclibc-gas-needs-libm.patch
@@ -0,0 +1,38 @@
+Source: Khem Raj <raj.khem@gmail.com>
+Disposition: submit upstream.
+
+Description:
+
+We do not need to have the libtool patch anymore for binutils after
+libtool has been updated upstream it include support for it. However
+for building gas natively on uclibc systems we have to link it with
+-lm so that it picks up missing symbols.
+
+/local/build_area/BUILD/arm_v5t_le_uclibc/binutils-2.17.50/objdir/libiberty/pic/libiberty.a(floatformat.o): In function `floatformat_from_double':
+floatformat.c:(.text+0x1ec): undefined reference to `frexp'
+floatformat.c:(.text+0x2f8): undefined reference to `ldexp'
+/local/build_area/BUILD/arm_v5t_le_uclibc/binutils-2.17.50/objdir/libiberty/pic/libiberty.a(floatformat.o): In function `floatformat_to_double':
+floatformat.c:(.text+0x38a): undefined reference to `ldexp'
+floatformat.c:(.text+0x3d2): undefined reference to `ldexp'
+floatformat.c:(.text+0x43e): undefined reference to `ldexp' floatformat.c:(.text+0x4e2): undefined reference to `ldexp'
+collect2: ld returned 1 exit status
+make[4]: *** [as-new] Error 1
+
+Index: binutils-2.17.50/gas/configure.tgt
+===================================================================
+--- binutils-2.17.50.orig/gas/configure.tgt
++++ binutils-2.17.50/gas/configure.tgt
+@@ -408,6 +408,12 @@ case ${generic_target} in
+ *-*-netware) fmt=elf em=netware ;;
+ esac
+
++case ${generic_target} in
++ arm-*-*uclibc*)
++ need_libm=yes
++ ;;
++esac
++
+ case ${cpu_type} in
+ alpha | arm | i386 | ia64 | mips | ns32k | pdp11 | ppc | sparc | z80 | z8k)
+ bfd_gas=yes
+
diff --git a/packages/binutils/binutils_2.18.bb b/packages/binutils/binutils_2.18.bb
index de13f88142..ada367fe70 100644
--- a/packages/binutils/binutils_2.18.bb
+++ b/packages/binutils/binutils_2.18.bb
@@ -1,4 +1,4 @@
-PR = "r2"
+PR = "r3"
require binutils.inc
@@ -11,6 +11,7 @@ SRC_URI = "\
file://binutils-uclibc-300-001_ld_makefile_patch.patch;patch=1 \
file://binutils-uclibc-300-006_better_file_error.patch;patch=1 \
file://binutils-uclibc-300-012_check_ldrunpath_length.patch;patch=1 \
+ file://binutils-uclibc-gas-needs-libm.patch;patch=1 \
"
# powerpc patches