mklibs: do not touch libraries that cannot be rebuilt
SVN-Revision: 17172
This commit is contained in:
parent
a6a83985a0
commit
d9f9d74f69
1 changed files with 50 additions and 0 deletions
50
tools/mklibs/patches/003-no_copy.patch
Normal file
50
tools/mklibs/patches/003-no_copy.patch
Normal file
|
@ -0,0 +1,50 @@
|
|||
--- a/src/mklibs.py
|
||||
+++ b/src/mklibs.py
|
||||
@@ -440,7 +440,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]
|
||||
@@ -552,12 +552,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)
|
||||
@@ -600,22 +595,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 regexpfilter(os.listdir(dest_path), "(.*so[.\d]*)$"):
|
Loading…
Reference in a new issue