aboutsummaryrefslogtreecommitdiff
path: root/adeps
diff options
context:
space:
mode:
Diffstat (limited to 'adeps')
-rwxr-xr-xadeps29
1 files changed, 29 insertions, 0 deletions
diff --git a/adeps b/adeps
new file mode 100755
index 0000000..2ae07dc
--- /dev/null
+++ b/adeps
@@ -0,0 +1,29 @@
+#!/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 -v $1)
+
+if [ "$pkg" ]; then
+ echo $pkg | tr ' ' '\n'
+fi
+
+exit 0