aboutsummaryrefslogtreecommitdiff
path: root/gdb/munch
diff options
context:
space:
mode:
authorJohn Gilmore <gnu@cygnus>1991-09-13 01:10:22 +0000
committerJohn Gilmore <gnu@cygnus>1991-09-13 01:10:22 +0000
commit44f0c5db96dc390805c9c594fb40dfeb6ac014f7 (patch)
tree196f08baf761a7866ced5b27fb5e6ee946cbe9a5 /gdb/munch
parent7c18a68f004488fd812714d86c77fc24f9f798db (diff)
downloadgdb-44f0c5db96dc390805c9c594fb40dfeb6ac014f7.zip
gdb-44f0c5db96dc390805c9c594fb40dfeb6ac014f7.tar.gz
gdb-44f0c5db96dc390805c9c594fb40dfeb6ac014f7.tar.bz2
* Makefile.in (CLIBS): Put XM_CLIBS and TM_CLIBS at end.
Pass MUNCH_DEFINE to munch whenever we run it. * munch: Cope with RT/PC putting fns in data segment. Restore ability to override `nm' by specifying MUNCH_NM.
Diffstat (limited to 'gdb/munch')
-rwxr-xr-xgdb/munch12
1 files changed, 8 insertions, 4 deletions
diff --git a/gdb/munch b/gdb/munch
index 92929ea..6bffb88 100755
--- a/gdb/munch
+++ b/gdb/munch
@@ -7,12 +7,15 @@ echo 'void initialize_all_files () {'
NMOPT=""
case $1 in
--*) NMOPT=$1; shift ;;
+MUNCH_NM=*)
+ MUNCH_NM=`echo $1 | sed 's/MUNCH_NM=//'`; shift ;;
+-*)
+ NMOPT=$1; shift ;;
esac
# make it easy to use a different nm, e.g. for cross-developing
-MUNCH_NM="nm $NMOPT"
+MUNCH_NM="${MUNCH_NM-nm} $NMOPT"
if test "`$MUNCH_NM main.o | egrep 'T _?main$'`" = "" ; then
# System V style nm
shift;
@@ -20,8 +23,9 @@ if test "`$MUNCH_NM main.o | egrep 'T _?main$'`" = "" ; then
sed -e 's/^.*\(_initialize_[a-zA-Z0-9_]*\)[^a-zA-Z0-9_].*$/ {extern void \1 (); \1 ();}/'
else
# BSD style nm
- $MUNCH_NM -p $* | egrep 'T *_?_initialize_' | \
- sed -e 's/^.*T *_*\(.*\)/ {extern void _\1 (); _\1 ();}/'
+ # We now accept either text or data symbols, since the RT/PC uses data.
+ $MUNCH_NM -p $* | egrep '[TD] *_?_initialize_' | \
+ sed -e 's/^.*[TD] *_*\(.*\)/ {extern void _\1 (); _\1 ();}/'
fi
echo '}'