forked from Openwrt/openwrt
c8b7065f61
Refresh 2to3 patch. Upstream partially did this against some older python version. This is still needed. Refreshed other patches to be python3 safe. Remove uClibc patches as only musl is present now. Refresh others. Signed-off-by: Rosen Penev <rosenp@gmail.com>
155 lines
5.9 KiB
Diff
155 lines
5.9 KiB
Diff
--- a/src/mklibs
|
|
+++ b/src/mklibs
|
|
@@ -57,17 +57,17 @@ debuglevel = DEBUG_NORMAL
|
|
|
|
def debug(level, *msg):
|
|
if debuglevel >= level:
|
|
- print(string.join(msg))
|
|
+ print(' '.join(msg))
|
|
|
|
# return a list of lines of output of the command
|
|
def command(command, *args):
|
|
- debug(DEBUG_SPAM, "calling", command, string.join(args))
|
|
+ debug(DEBUG_SPAM, "calling", command, ' '.join(args))
|
|
pipe = os.popen(command + ' ' + ' '.join(args), 'r')
|
|
output = pipe.read().strip()
|
|
status = pipe.close()
|
|
if status is not None and os.WEXITSTATUS(status) != 0:
|
|
print("Command failed with status", os.WEXITSTATUS(status), ":", \
|
|
- command, string.join(args))
|
|
+ command, ' '.join(args))
|
|
print("With output:", output)
|
|
sys.exit(1)
|
|
return [i for i in output.split('\n') if i]
|
|
@@ -296,7 +296,7 @@ def usage(was_err):
|
|
print("Make a set of minimal libraries for FILE(s, file=outfd) in DEST.", file=outfd)
|
|
print("" , file=outfd)
|
|
print(" -d, --dest-dir DIRECTORY create libraries in DIRECTORY", file=outfd)
|
|
- print(" -D, --no-default-lib omit default libpath (", ':'.join(default_lib_path, file=outfd), ", file=outfd)", file=outfd)
|
|
+ print(" -D, --no-default-lib omit default libpath (", ':'.join(default_lib_path), ")", file=outfd)
|
|
print(" -L DIRECTORY[:DIRECTORY]... add DIRECTORY(s, file=outfd) to the library search path", file=outfd)
|
|
print(" -l LIBRARY add LIBRARY always", file=outfd)
|
|
print(" --ldlib LDLIB use LDLIB for the dynamic linker", file=outfd)
|
|
@@ -372,7 +372,7 @@ for opt, arg in optlist:
|
|
if debuglevel < DEBUG_SPAM:
|
|
debuglevel = debuglevel + 1
|
|
elif opt == "-L":
|
|
- lib_path.extend(string.split(arg, ":"))
|
|
+ lib_path.extend(arg.split(":"))
|
|
elif opt in ("-d", "--dest-dir"):
|
|
dest_path = arg
|
|
elif opt in ("-D", "--no-default-lib"):
|
|
@@ -391,7 +391,7 @@ for opt, arg in optlist:
|
|
elif opt in ("-l",):
|
|
force_libs.append(arg)
|
|
elif opt == "--gcc-options":
|
|
- gcc_options.extend(string.split(arg, " "))
|
|
+ gcc_options.extend(arg.split(" "))
|
|
elif opt == "--libdir":
|
|
libdir = arg
|
|
elif opt in ("--help", "-h"):
|
|
@@ -419,17 +419,17 @@ if ldlib == "LDLIB":
|
|
objects = {} # map from inode to filename
|
|
for prog in proglist:
|
|
inode = os.stat(prog)[ST_INO]
|
|
- if objects.has_key(inode):
|
|
+ if inode in objects:
|
|
debug(DEBUG_SPAM, prog, "is a hardlink to", objects[inode])
|
|
elif so_pattern.match(prog):
|
|
debug(DEBUG_SPAM, prog, "is a library")
|
|
- elif script_pattern.match(open(prog).read(256)):
|
|
+ elif script_pattern.match(open(prog, 'r', encoding='iso-8859-1').read(256)):
|
|
debug(DEBUG_SPAM, prog, "is a script")
|
|
else:
|
|
objects[inode] = prog
|
|
|
|
if not ldlib:
|
|
- for obj in objects.values():
|
|
+ for obj in list(objects.values()):
|
|
output = command("mklibs-readelf", "--print-interp", obj)
|
|
if output:
|
|
ldlib = output.pop()
|
|
@@ -462,9 +462,9 @@ previous_pass_unresolved = set()
|
|
while 1:
|
|
debug(DEBUG_NORMAL, "I: library reduction pass", str(passnr))
|
|
if debuglevel >= DEBUG_VERBOSE:
|
|
- print("Objects:",)
|
|
- for obj in sorted([x[string.rfind(x, '/') + 1:] for x in objects.values()]):
|
|
- print(obj,)
|
|
+ print("Objects:", end=' ')
|
|
+ for obj in sorted([x[x.rfind('/') + 1:] for x in list(objects.values())]):
|
|
+ print(obj, end=' ')
|
|
print()
|
|
|
|
passnr = passnr + 1
|
|
@@ -474,7 +474,7 @@ while 1:
|
|
obj = dest_path + "/" + lib
|
|
small_libs.append(obj)
|
|
inode = os.stat(obj)[ST_INO]
|
|
- if objects.has_key(inode):
|
|
+ if inode in objects:
|
|
debug(DEBUG_SPAM, obj, "is hardlink to", objects[inode])
|
|
else:
|
|
objects[inode] = obj
|
|
@@ -504,7 +504,7 @@ while 1:
|
|
present_symbols = {}
|
|
checked_libs = small_libs
|
|
checked_libs.extend(available_libs)
|
|
- checked_libs.append(ldlib)
|
|
+ checked_libs.append(sysroot + "/" + ldlib)
|
|
for lib in checked_libs:
|
|
for symbol in provided_symbols(lib):
|
|
debug(DEBUG_SPAM, "present_symbols adding %s" % symbol)
|
|
--- a/src/mklibs-copy
|
|
+++ b/src/mklibs-copy
|
|
@@ -159,7 +159,7 @@ if include_default_lib_path:
|
|
objects = {} # map from inode to filename
|
|
for prog in proglist:
|
|
inode = os.stat(prog)[ST_INO]
|
|
- if objects.has_key(inode):
|
|
+ if inode in objects:
|
|
logger.debug("%s is a hardlink to %s", prog, objects[inode])
|
|
elif so_pattern.match(prog):
|
|
logger.debug("%s is a library", prog)
|
|
@@ -169,7 +169,7 @@ for prog in proglist:
|
|
logger.debug("%s is no ELF", prog)
|
|
|
|
if not ldlib:
|
|
- for obj in objects.values():
|
|
+ for obj in list(objects.values()):
|
|
output = command("mklibs-readelf", "-i", obj)
|
|
for x in output:
|
|
ldlib = x
|
|
@@ -182,7 +182,7 @@ if not ldlib:
|
|
logger.info('Using %s as dynamic linker', ldlib)
|
|
|
|
# Check for rpaths
|
|
-for obj in objects.values():
|
|
+for obj in list(objects.values()):
|
|
rpath_val = rpath(obj)
|
|
if rpath_val:
|
|
if root:
|
|
@@ -208,18 +208,18 @@ while 1:
|
|
obj = dest_path + "/" + lib
|
|
small_libs.append(obj)
|
|
inode = os.stat(obj)[ST_INO]
|
|
- if objects.has_key(inode):
|
|
+ if inode in objects:
|
|
logger.debug("%s is hardlink to %s", obj, objects[inode])
|
|
else:
|
|
objects[inode] = obj
|
|
|
|
- for obj in objects.values():
|
|
+ for obj in list(objects.values()):
|
|
small_libs.append(obj)
|
|
|
|
- logger.verbose('Objects: %r', ' '.join([i[i.rfind('/') + 1:] for i in objects.itervalues()]))
|
|
+ logger.verbose('Objects: %r', ' '.join([i[i.rfind('/') + 1:] for i in objects.values()]))
|
|
|
|
libraries = set()
|
|
- for obj in objects.values():
|
|
+ for obj in list(objects.values()):
|
|
libraries.update(library_depends(obj))
|
|
|
|
if libraries == previous_pass_libraries:
|