> Here is an updated version of the patch 
> <http://lists.debian.org/debian-boot/2008/02/msg00208.html>, with 
> additional fixes and split into pieces as requested.  I do not believe 
> there are any dependencies between these pieces.
> 
> Part 1: Uninitialized data fix, as in previous patch:

applied

> Part 2: Endian fix, as in previous patch:

applied

> Part 3: Correct diagnostic text when symbol cannot be found, new:
> 
> Index: src/mklibs.py
> ===================================================================
> --- src/mklibs.py     (revision 51573)
> +++ src/mklibs.py     (working copy)
> @@ -469,7 +493,7 @@
>      for name in needed_symbols:
>          if not name in symbol_provider:
>              if not needed_symbols[name].weak:
> -                raise "No library provides non-weak %s" % symbol
> +                raise "No library provides non-weak %s" % name

My python is not particularly good, but I don't see where symbol is
defined. Only way it could be set is in one of the loops above, but
that would have no relation to the name.

> Part 4: Support running mklibs for a set of binaries including gdbserver 
> (which defines symbols left unresolved in libthread_db), new:
> 
> Index: src/mklibs.py
> ===================================================================
> --- src/mklibs.py     (revision 51573)
> +++ src/mklibs.py     (working copy)
> @@ -394,8 +414,12 @@
>      libraries = set(force_libs)
>      for obj in objects.values():
>          for symbol in undefined_symbols(obj):
> -            debug(DEBUG_SPAM, "needed_symbols adding %s, weak: %s" % 
> (symbol, symbol.weak))
> -            needed_symbols[str(symbol)] = symbol
> +            # Some undefined symbols in libthread_db are defined in
> +            # gdbserver, not in any library.
> +            if (not (re.search("libthread_db\.so", obj)
> +                     and re.search("^ps_", str(symbol)))):
> +                debug(DEBUG_SPAM, "needed_symbols adding %s, weak: %s" % 
> (symbol, symbol.weak))
> +                needed_symbols[str(symbol)] = symbol
>          libraries.update(library_depends(obj))
>  
>      # calculate what symbols are present in small_libs and available_libs

The code looks ok, but I don't know how we feel about adding
library/program specific hacks into mklibs.

> Part 5: Sysroot and multilib support, as in the previous patch but with an 
> additional fix (-L options pointing to sysroot directories that would be 
> searched anyway are bad since they can cause the linker to treat the 
> directories as non-sysroot directories):

applied

-- 
see shy jo

Attachment: signature.asc
Description: Digital signature

Reply via email to