]> Zhao Yanbai Git Server - minix.git/commitdiff
make unstack work on gcc-compiled binaries
authorDavid van Moolenbroek <david@minix3.org>
Sat, 11 Jul 2009 17:55:24 +0000 (17:55 +0000)
committerDavid van Moolenbroek <david@minix3.org>
Sat, 11 Jul 2009 17:55:24 +0000 (17:55 +0000)
commands/scripts/unstack.sh

index d32cb711de67cb5945d4555c62864d0860a51c9d..db3f32e9d2e35a8405b9df960b359fd53bc06024 100644 (file)
@@ -5,12 +5,20 @@ then  echo "Usage: $0 <executable> [0x... [0x... ] ]"
        exit 1
 fi
 
+PATH=$PATH:/usr/gnu/bin
+
+if file $1 | grep NSYM >/dev/null 2>&1; then
+  NM="gnm --radix=d"
+else
+  NM="nm -d"
+fi
+
 executable=$1
 shift
 
 while [ $# -gt 0 ]
 do     dec="`printf %d $1`"
-       nm -d -n $executable | grep ' [Tt] ' | awk '
+       $NM -n $executable | grep ' [Tt] ' | awk '
          {  if($1 > '$dec') { printf "%s+0x%x\n", name, '$dec'-offset; exit }
             name=$3; offset=$1
          }'