#! /bin/sh
#
# Copyright 1996 1995 by Open Software Foundation, Inc.   
#              All Rights Reserved 
#  
# Permission to use, copy, modify, and distribute this software and 
# its documentation for any purpose and without fee is hereby granted, 
# provided that the above copyright notice appears in all copies and 
# that both the copyright notice and this permission notice appear in 
# supporting documentation. 
#  
# OSF DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE 
# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
# FOR A PARTICULAR PURPOSE. 
#  
# IN NO EVENT SHALL OSF BE LIABLE FOR ANY SPECIAL, INDIRECT, OR 
# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM 
# LOSS OF USE, DATA OR PROFITS, WHETHER IN ACTION OF CONTRACT, 
# NEGLIGENCE, OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION 
# WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 
#
#
# pmk1.1
#
# CMU_HIST 
#
#
# CMU_ENDHIST 
#
#
# fixsyms [file] [outfile]
#
# clean up ncs symbols 
#
rmfile=
case "$1" in
"")
	file=/tmp/$$fixsym
	rmfile="rm -f $file"
	cat $1 > $file
	;;
*)
	file=$1
	;;
esac
if egrep -s '_\.' $file
then
	awk '
#
# script to fix up the output from nm by replacing 
# all symbols _x where a _.x exists.
#
# input is of form
#    $1      $2   $3
# address letter symbol
#
#
$2 == "T" && $3 ~ /^_\./ {
	name= "_" substr($3,3)
	names[name] = $1
	next
	}
names[$3] != "" {
	next
	}
{
names[$3] = $1
}

END {
	for (i in names)
		print names[i], "=", i
}
' $file | sort 
else
	cat $file 
fi >$2
eval "$rmfile"
