mklibs: handle duplicate symbols properly
[openwrt.git] / tools / mklibs / patches / 006-duplicate_syms.patch
1 --- a/src/mklibs.py
2 +++ b/src/mklibs.py
3 @@ -507,7 +507,6 @@ while 1:
4
5 library_symbols = {}
6 library_symbols_used = {}
7 - symbol_provider = {}
8
9 # WORKAROUND: Always add libgcc on old-abi arm
10 header = elf_header(find_lib(libraries.copy().pop()))
11 @@ -525,17 +524,13 @@ while 1:
12 library_symbols_used[library] = set()
13 for symbol in symbols:
14 for name in symbol.base_names():
15 - if name in symbol_provider:
16 - debug(DEBUG_SPAM, "duplicate symbol %s in %s and %s" % (symbol, symbol_provider[name], library))
17 - else:
18 - library_symbols[library][name] = symbol
19 - symbol_provider[name] = library
20 + library_symbols[library][name] = symbol
21
22 # which symbols are actually used from each lib
23 for name in needed_symbols:
24 - if name in symbol_provider:
25 - lib = symbol_provider[name]
26 - library_symbols_used[lib].add(library_symbols[lib][name])
27 + for lib in libraries:
28 + if name in library_symbols[lib]:
29 + library_symbols_used[lib].add(library_symbols[lib][name])
30
31 # reduce libraries
32 for library in libraries:
This page took 0.04444 seconds and 5 git commands to generate.