#!/bin/sh

PKGDB=/var/lib/spm/db

if [ ! "$1" ]; then
	echo "usage: $0 <pkg>"
	exit 0
fi

if [ ! -s "$PKGDB/$1" ]; then
	echo "Package '$1' not installed"
	exit 0
fi

f=$(spm -l $1 | awk '/(sbin|bin|lib)\//')

for i in $f; do
	[ -x /$i ] || continue
	deps="$deps $(ldd /$i 2>/dev/null | awk '!/(ldd)|(linux-gate)|( dynamic)|(not found)/ {print $3}')"
done

deps=$(for i in $deps; do realpath $i; done | sort | uniq)
pkg=$(for i in $deps; do spm -o $i | awk '{print $1}'; done | sort | uniq | grep -Ev "($1|gcc|musl|binutils|glibc)")

if [ "$pkg" ]; then
	echo $pkg | tr ' ' '\n'
fi

exit 0
