#!/bin/sh
case "$1" in
-update)
	echo -n > ~/.libstormdb
	echo "==> Extracting dependencies from binaries"
	for i in /usr/local/bin /usr/local/sbin /usr/local/lib /usr/local/libexec /usr/X11R6/bin /usr/X11R6/sbin /usr/X11R6/lib /usr/X11R6/libexec; do
		echo $i
		find $i | xargs ldd 2> /dev/null | awk '{ if (NF == 1) x = $1; else print x " --> " $3 }' >> ~/.libstormdb
	done
;;
-help)
	echo "Usage:"
	echo "libstorm <query>   lists all binaries linked for and against library"
	echo "libstorm -update   updates metadata"
;;
*)
	if [ -n $2 ] ; then
		grep "$1" ~/.libstormdb | grep "$2"
	else
		grep "$1" ~/.libstormdb
	fi
;;
esac
