openwrt/tools/mklibs/patches/008-uclibc_libgcc_link.patch
Rosen Penev c8b7065f61 tools/mklibs: update to 0.1.45
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>
2022-03-01 00:08:08 +01:00

38 lines
1.4 KiB
Diff

--- a/src/mklibs
+++ b/src/mklibs
@@ -113,11 +113,8 @@ def library_depends_gcc_libnames(obj, so
ret = []
for i in libs:
match = re.match("^(((?P<ld>ld\S*)|(lib(?P<lib>\S+))))\.so.*$", i)
- if match and not soname in ("libpthread.so.0"):
- if match.group('ld'):
- ret.append(find_lib(match.group(0)))
- elif match.group('lib'):
- ret.append('-l%s' % match.group('lib'))
+ if match:
+ ret.append(find_lib(match.group(0)))
return ' '.join(ret)
class Symbol(object):
@@ -593,6 +590,7 @@ while 1:
extra_flags = []
extra_pre_obj = []
extra_post_obj = []
+ libgcc_link = find_lib("libgcc_s.so.1")
symbols.update(library_symbols_used[library])
@@ -618,9 +616,10 @@ while 1:
cmd.append(pic_file)
cmd.extend(extra_post_obj)
cmd.extend(extra_flags)
- cmd.append("-lgcc")
cmd.extend(["-L%s" % a for a in [dest_path] + [sysroot + b for b in lib_path if sysroot == "" or b not in ("/" + libdir + "/", "/usr/" + libdir + "/")]])
- cmd.append(library_depends_gcc_libnames(so_file, soname))
+ if soname != "libgcc_s.so.1":
+ cmd.append(library_depends_gcc_libnames(so_file, soname))
+ cmd.append(libgcc_link)
command(target + "gcc", *cmd)
## DEBUG