openwrt-owl/tools/mklibs/patches/005-duplicate_syms.patch

40 lines
1.3 KiB
Diff
Raw Normal View History

--- a/src/mklibs
+++ b/src/mklibs
@@ -509,10 +509,7 @@ while 1:
num_unresolved = 0
unresolved = set()
for name in needed_symbols:
- if not name in present_symbols:
- debug(DEBUG_SPAM, "Still need: %s" % name)
- unresolved.add(name)
- num_unresolved = num_unresolved + 1
+ library_symbols[library][name] = symbol
debug (DEBUG_NORMAL, `len(needed_symbols)`, "symbols,",
`num_unresolved`, "unresolved")
@@ -531,7 +528,6 @@ while 1:
library_symbols = {}
library_symbols_used = {}
- symbol_provider = {}
# WORKAROUND: Always add libgcc on old-abi arm
header = elf_header(find_lib(libraries.copy().pop()))
@@ -557,12 +553,10 @@ while 1:
# which symbols are actually used from each lib
for name in needed_symbols:
- if not name in symbol_provider:
- if not needed_symbols[name].weak:
- print "WARNING: Unresolvable symbol %s" % name
- else:
- lib = symbol_provider[name]
- library_symbols_used[lib].add(library_symbols[lib][name])
+ for lib in libraries:
+ if name in library_symbols[lib]:
+ library_symbols_used[lib].add(library_symbols[lib][name])
+
# reduce libraries
for library in libraries: