debugger fix

Ulrich Weigand weigand at immd1.informatik.uni-erlangen.de
Mon Feb 5 18:18:30 CST 2001


Eric Pouech wrote:

> anyway, I don't think removing the .rel.stab is a big deal. the 
> current debugger code doesn't use the address of a global symbol
> in .stab section, but rather rely on the ELF information...
> (but if we also start by removing the .rel.stab section, the 
> compilation scheme becomes more and more ugly)

So, if you use this version of strip_imports, does the Wine build
run through then?

#!/bin/sh
#
# Strip import stub symbols from Wine DLLs
#
 
while [ $# -gt 0 ]
do
  if [ ! -e $1 ]
  then
    echo "strip_imports: $1: file not found"
    exit 1
  fi
 
  /* Hack alert:  some broken toolchains create a .rel.stab section.
     objcopy (all versions) has a bug that makes it unable to process
     reloc sections outside of segments (which .rel.stab is) ...
     Thus, we kill the .rel.stab section before running objcopy to
     remove the import stub symbols */
  objcopy -R .rel.stab $1
 
  IMPLIST=`nm $1 | grep __wine_dllimport | sed -e 's/^.*__wine_dllimport_[^_]*_/-N /'`
  if [ "$IMPLIST" != "" ]
  then
    echo $IMPLIST | xargs objcopy $1
  fi
 
  shift
done
 
exit 0


Bye,
Ulrich


-- 
  Dr. Ulrich Weigand
  weigand at informatik.uni-erlangen.de



More information about the wine-devel mailing list