File: nm

package info (click to toggle)
perl 5.14.2-21%2Bdeb7u3
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 89,728 kB
  • sloc: perl: 421,086; ansic: 195,186; sh: 37,852; pascal: 8,746; cpp: 3,893; makefile: 2,346; xml: 1,972; yacc: 1,602
file content (33 lines) | stat: -rwxr-xr-x 930 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#!/bin/sh

# MPE doesn't have a native nm, and the gcc nm isn't quite fully functional.
#
# If Perl Configure is calling us, then use the native linker to extract the
# symbol table and reformat it into something nm-like.
#
# Else it must be gcc calling us during the final link phase, so call gcc nm.

if [ "$1" != "-configperl" ]; then
  # Oops, the caller must be expecting gcc nm.  Give it to them.
  /usr/local/bin/nm $@
  exit $?
fi

case $2 in
  *.a) LIST="LISTRL RL=$2;DATA;ENTRYSYM" ;;
  *.sl) LIST="LISTXL XL=$2;DATA;ENTRYSYM" ;;
  *) exit 0 ;;
esac

# I wanted to pipe this into awk, but it fell victim to a known pipe/streams
# bug on my multiprocessor machine.

callci xeq linkedit.pub.sys \"$LIST\" >nm.$$

/bin/awk '\
    / data  univ / { printf "%-20s|%10s|%-6s|%-7s|%s\n",$1,$5,"extern","data","?"} \
    / entry univ / { printf "%-20s|%10s|%-6s|%-7s|%s\n",$1,$7,"extern","entry","?"}' nm.$$

rm -f nm.$$

exit 0