9437012b9e
Since the switch to Python 3 build fails if CONFIG_USE_MKLIBS is set
("Strip unnecessary functions from libraries" in menuconfig) as
mklibs hasn't been converted to run on Python 3.
* update to most recent upstream version which brings some
reproducibility fixes
* converted to Python 3 using 2to3
* fixed mixed tab/spaces indentation
* fixed use of string.* functions
* some more minor fixes to make Python 3 happy
Fixes commit 19938c8de7
("build: switch to Python 3")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
36 lines
1.3 KiB
Diff
36 lines
1.3 KiB
Diff
--- a/src/mklibs
|
|
+++ b/src/mklibs
|
|
@@ -540,7 +540,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()))
|
|
@@ -558,20 +557,13 @@ while 1:
|
|
library_symbols_used[library] = set()
|
|
for symbol in symbols:
|
|
for name in symbol.base_names():
|
|
- if name in symbol_provider:
|
|
- debug(DEBUG_SPAM, "duplicate symbol %s in %s and %s" % (symbol, symbol_provider[name], library))
|
|
- else:
|
|
- library_symbols[library][name] = symbol
|
|
- symbol_provider[name] = library
|
|
+ library_symbols[library][name] = symbol
|
|
|
|
# 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 sorted(libraries):
|