#!/bin/bash

inputModule=$1
dependencies=$2
objectFilesDir=$3

if [ "$inputModule" == "" -o "$dependencies" == "" -o "$objectFilesDir" == "" ]; then
	echo "First arg is the module to search. Second arg is dependencies. Third is object files dir."
	echo "ex: missingsymbols server_tf_i486.so \"tier0_i486.so vstdlib_i486.so\" ~/linux/src/engine/obj"
	exit
fi

missingSymbols=`nm -o $inputModule | grep -i " U " | grep -o '[^[:space:]]*$' | grep -v '@@'`

for missingSymbol in $missingSymbols; do
	modulesContaining=`nm -o $dependencies | grep $missingSymbol`
	if [ "$modulesContaining" == "" ]; then
		echo `c++filt "$missingSymbol"` "($missingSymbol)"
	fi
done