#!/bin/sh
# check-exports
#
# quick'n'dirty script that retrieves the list of exported symbols of a given
# library using 'nm', and compares that against the list of symbols-to-export
# of our win32/common/libfoo.def files.

if [ $# -ne 2 ]; then
	echo "Usage: $0 library.def library.so"
	exit 1
fi

def_path="$1"
def_name="$(basename $def_path)"
lib_path="$2"

lib_result="`mktemp /tmp/defname.XXXXXX`"

LC_ALL=C
export LC_ALL

# On Solaris, add -p to get the correct output format
NMARGS=
if nm -V 2>&1 |grep Solaris > /dev/null; then
  NMARGS=-p
fi

# _end is special cased because for some reason it is reported as an exported
# BSS symbol, unlike on linux where it's a local absolute symbol.
nm $NMARGS $lib_path | awk \
	'{
		if ($3 ~ /^[_]?(gst_|Gst|GST_).*/)
		{
			if ($2 ~ /^[BSDG]$/)
				print "\t" $3 " DATA"
			else if ($2 == "T")
				print "\t" $3
		}
	 }' | sort | awk '{ if (NR == 1) print "EXPORTS"; print $0; }' \
	> $lib_result

diffoutput=`diff -u $def_path $lib_result`
diffresult=$?

rm $lib_result

if test "$diffresult" -eq 0; then
  exit 0;
else
  echo -n "$diffoutput" >&2
  echo >&2
  exit 1;
fi

