comparison deploy/linux/debian-dependencies.sh @ 728:1d0a0fce4021

Include dependencies for all targets
author Chris Cannam
date Mon, 17 Dec 2018 09:45:34 +0000
parents 665da28f1da8
children
comparison
equal deleted inserted replaced
727:bd9a54f9aca8 728:1d0a0fce4021
1 #!/bin/bash 1 #!/bin/bash
2 2
3 target=$1 3 targets="$@"
4 4
5 if [ ! -f "$target" ]; then 5 if [ t"$targets" = "" ]; then
6 echo "Usage: $0 target-executable" 6 echo "Usage: $0 target-executable"
7 exit 1 7 exit 2
8 fi 8 fi
9
10 for target in $targets ; do
11 if [ ! -f "$target" ]; then
12 echo "Error: target executable ./$target not found"
13 exit 1
14 fi
15 done
9 16
10 set -eu 17 set -eu
11 18
12 pfile=/tmp/packages_$$ 19 pfile=/tmp/packages_$$
13 rfile=/tmp/redundant_$$ 20 rfile=/tmp/redundant_$$
14 21
15 trap "rm -f $pfile $rfile" 0 22 trap "rm -f $pfile $rfile" 0
16 echo 1>&2 23 echo 1>&2
17 24
18 ldd "$target" | awk '{ print $3; }' | grep '^/' | while read lib; do 25 ldd $targets | awk '{ print $3; }' | grep '^/' | while read lib; do
19 if test -n "$lib" ; then 26 if test -n "$lib" ; then
20 dpkg-query -S "$lib" 27 dpkg-query -S "$lib"
21 fi 28 fi
22 done | grep ': ' | awk -F: '{ print $1 }' | sort | uniq > $pfile 29 done | grep ': ' | awk -F: '{ print $1 }' | sort | uniq > $pfile
23 30