diff options
author | blogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-10-05 10:12:53 +0000 |
---|---|---|
committer | blogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-10-05 10:12:53 +0000 |
commit | 5c105d9f3fd086aff195d3849dcf847d6b0bd927 (patch) | |
tree | 1229a11f725bfa58aa7c57a76898553bb5f6654a /tools/mklibs/patches/003-no_copy.patch | |
download | openwrt-5c105d9f3fd086aff195d3849dcf847d6b0bd927.tar.gz openwrt-5c105d9f3fd086aff195d3849dcf847d6b0bd927.zip |
branch Attitude Adjustment
git-svn-id: svn://svn.openwrt.org/openwrt/branches/attitude_adjustment@33625 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'tools/mklibs/patches/003-no_copy.patch')
-rw-r--r-- | tools/mklibs/patches/003-no_copy.patch | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/tools/mklibs/patches/003-no_copy.patch b/tools/mklibs/patches/003-no_copy.patch new file mode 100644 index 000000000..e0ab2ac88 --- /dev/null +++ b/tools/mklibs/patches/003-no_copy.patch @@ -0,0 +1,50 @@ +--- a/src/mklibs ++++ b/src/mklibs +@@ -463,7 +463,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] +@@ -579,12 +579,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) +@@ -627,22 +622,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]*)$"): |