summaryrefslogtreecommitdiffstats
path: root/tools/mklibs
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2011-01-14 10:49:41 +0000
committerJo-Philipp Wich <jow@openwrt.org>2011-01-14 10:49:41 +0000
commit531e5e5386e6ad2a9358839b566381ac3f7ea05c (patch)
tree9c331fd909bcb5eca0e31994dbbf09fd0f5d01fd /tools/mklibs
parent0b98f1f64ff1d3a0215bb4770240b24dbc44b50b (diff)
downloadopenwrt-531e5e5386e6ad2a9358839b566381ac3f7ea05c.tar.gz
openwrt-531e5e5386e6ad2a9358839b566381ac3f7ea05c.tar.bz2
openwrt-531e5e5386e6ad2a9358839b566381ac3f7ea05c.zip
mklibs: import missing symbol workaround from Freetz project (#7590)
SVN-Revision: 24984
Diffstat (limited to 'tools/mklibs')
-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)