summaryrefslogtreecommitdiff
path: root/tools/mklibs/patches/004-libpthread_link.patch
blob: 99aafaff671f16bc9c18a474414b0e23e667ff8c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
--- a/src/mklibs
+++ b/src/mklibs
@@ -105,14 +105,14 @@ def library_depends(obj):
 
 # Return a list of libraries the passed objects depend on. The
 # libraries are in "-lfoo" format suitable for passing to gcc.
-def library_depends_gcc_libnames(obj):
+def library_depends_gcc_libnames(obj, soname):
     if not os.access(obj, os.F_OK):
         raise "Cannot find lib: " + obj
     libs = library_depends(obj)
     ret = []
     for i in libs:
         match = re.match("^(((?P<ld>ld\S*)|(lib(?P<lib>\S+))))\.so.*$", i)
-        if match:
+        if match and not soname in ("libpthread.so.0"):
             if match.group('ld'):
                 ret.append(find_lib(match.group(0)))
             elif match.group('lib'):
@@ -592,7 +592,7 @@ while 1:
             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))
+            cmd.append(library_depends_gcc_libnames(so_file, soname))
             command(target + "gcc", *cmd)
 
             ## DEBUG