mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-10-30 21:44:27 -04:00 
			
		
		
		
	
		
			
				
	
	
		
			29 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| --- a/src/mklibs
 | |
| +++ b/src/mklibs
 | |
| @@ -106,14 +106,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 Exception("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'):
 | |
| @@ -619,7 +619,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
 |