40 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| --- a/src/mklibs
 | |
| +++ b/src/mklibs
 | |
| @@ -509,10 +509,7 @@ while 1:
 | |
|      num_unresolved = 0
 | |
|      unresolved = set()
 | |
|      for name in needed_symbols:
 | |
| -        if not name in present_symbols:
 | |
| -            debug(DEBUG_SPAM, "Still need: %s" % name)
 | |
| -            unresolved.add(name)
 | |
| -            num_unresolved = num_unresolved + 1
 | |
| +        library_symbols[library][name] = symbol
 | |
|  
 | |
|      debug (DEBUG_NORMAL, `len(needed_symbols)`, "symbols,",
 | |
|             `num_unresolved`, "unresolved")
 | |
| @@ -531,7 +528,6 @@ while 1:
 | |
|  
 | |
|      library_symbols = {}
 | |
|      library_symbols_used = {}
 | |
| -    symbol_provider = {}
 | |
|  
 | |
|      # WORKAROUND: Always add libgcc on old-abi arm
 | |
|      header = elf_header(find_lib(libraries.copy().pop()))
 | |
| @@ -557,12 +553,10 @@ while 1:
 | |
|  
 | |
|      # which symbols are actually used from each lib
 | |
|      for name in needed_symbols:
 | |
| -        if not name in symbol_provider:
 | |
| -            if not needed_symbols[name].weak:
 | |
| -                print "WARNING: Unresolvable symbol %s" % name
 | |
| -        else:
 | |
| -            lib = symbol_provider[name]
 | |
| -            library_symbols_used[lib].add(library_symbols[lib][name])
 | |
| +        for lib in libraries:
 | |
| +            if name in library_symbols[lib]:
 | |
| +                library_symbols_used[lib].add(library_symbols[lib][name])
 | |
| +
 | |
|  
 | |
|      # reduce libraries
 | |
|      for library in libraries:
 | 
