mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-30 10:39:04 +00:00
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>
51 lines
2.4 KiB
Diff
51 lines
2.4 KiB
Diff
--- a/src/mklibs
|
|
+++ b/src/mklibs
|
|
@@ -472,7 +472,7 @@ while 1:
|
|
passnr = passnr + 1
|
|
# Gather all already reduced libraries and treat them as objects as well
|
|
small_libs = []
|
|
- for lib in regexpfilter(os.listdir(dest_path), "(.*-so-stripped)$"):
|
|
+ for lib in regexpfilter(os.listdir(dest_path), "(.*-so)$"):
|
|
obj = dest_path + "/" + lib
|
|
small_libs.append(obj)
|
|
inode = os.stat(obj)[ST_INO]
|
|
@@ -588,12 +588,7 @@ while 1:
|
|
if not so_file:
|
|
sys.exit("File not found:" + library)
|
|
pic_file = find_pic(library)
|
|
- if not pic_file:
|
|
- # No pic file, so we have to use the .so file, no reduction
|
|
- debug(DEBUG_VERBOSE, "No pic file found for", so_file, "; copying")
|
|
- command(target + "objcopy", "--strip-unneeded -R .note -R .comment",
|
|
- so_file, dest_path + "/" + so_file_name + "-so-stripped")
|
|
- else:
|
|
+ if pic_file:
|
|
# we have a pic file, recompile
|
|
debug(DEBUG_SPAM, "extracting from:", pic_file, "so_file:", so_file)
|
|
soname = extract_soname(so_file)
|
|
@@ -636,22 +631,14 @@ while 1:
|
|
cmd.append(library_depends_gcc_libnames(so_file))
|
|
command(target + "gcc", *cmd)
|
|
|
|
- # strip result
|
|
- command(target + "objcopy", "--strip-unneeded -R .note -R .comment",
|
|
- dest_path + "/" + so_file_name + "-so",
|
|
- dest_path + "/" + so_file_name + "-so-stripped")
|
|
## DEBUG
|
|
debug(DEBUG_VERBOSE, so_file, "\t", `os.stat(so_file)[ST_SIZE]`)
|
|
debug(DEBUG_VERBOSE, dest_path + "/" + so_file_name + "-so", "\t",
|
|
`os.stat(dest_path + "/" + so_file_name + "-so")[ST_SIZE]`)
|
|
- debug(DEBUG_VERBOSE, dest_path + "/" + so_file_name + "-so-stripped",
|
|
- "\t", `os.stat(dest_path + "/" + so_file_name + "-so-stripped")[ST_SIZE]`)
|
|
|
|
# Finalising libs and cleaning up
|
|
-for lib in regexpfilter(os.listdir(dest_path), "(.*)-so-stripped$"):
|
|
- os.rename(dest_path + "/" + lib + "-so-stripped", dest_path + "/" + lib)
|
|
-for lib in regexpfilter(os.listdir(dest_path), "(.*-so)$"):
|
|
- os.remove(dest_path + "/" + lib)
|
|
+for lib in regexpfilter(os.listdir(dest_path), "(.*)-so$"):
|
|
+ os.rename(dest_path + "/" + lib + "-so", dest_path + "/" + lib)
|
|
|
|
# Canonicalize library names.
|
|
for lib in sorted(regexpfilter(os.listdir(dest_path), "(.*so[.\d]*)$")):
|