summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>2011-01-14 10:49:41 +0000
committerjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>2011-01-14 10:49:41 +0000
commit9e2306be1f9e6ceb8ba37bf8784268e9cb010e30 (patch)
tree08e1ca38c6464f6a821cd1e795076ddb26f55173
parentf742b2d746fc0c0e9f96591bddf9a9609608e459 (diff)
[tools] mklibs: import missing symbol workaround from Freetz project (#7590)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24984 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--tools/mklibs/patches/009-uclibc_libgcc_link.patch7
1 files changed, 5 insertions, 2 deletions
diff --git a/tools/mklibs/patches/009-uclibc_libgcc_link.patch b/tools/mklibs/patches/009-uclibc_libgcc_link.patch
index 2312d6a2c5..d5e94068d3 100644
--- a/tools/mklibs/patches/009-uclibc_libgcc_link.patch
+++ b/tools/mklibs/patches/009-uclibc_libgcc_link.patch
@@ -8,15 +8,18 @@
symbols.update(library_symbols_used[library])
-@@ -575,6 +576,7 @@ while 1:
+@@ -575,6 +576,10 @@ while 1:
symbols.add(ProvidedSymbol('__uClibc_init', None, None, True))
symbols.add(ProvidedSymbol('__uClibc_fini', None, None, True))
extra_flags.append("-Wl,-init,__uClibc_init")
+ libgcc_link = "-lgcc_s_pic"
++
++ if soname in ("libm.so.0"):
++ libgcc_link = "-lgcc_s_pic"
map_file = find_pic_map(library)
if map_file:
-@@ -590,7 +592,7 @@ while 1:
+@@ -590,7 +595,7 @@ while 1:
cmd.append(pic_file)
cmd.extend(extra_post_obj)
cmd.extend(extra_flags)