Mercurial > hg > sonic-visualiser
annotate deploy/linux/debian-dependencies.sh @ 2049:fd4976627485
Fix inconsistency between centre frame actually set and centre frame notified as set, which caused the start frame location to creep out of place gradually as you page through
author | Chris Cannam |
---|---|
date | Tue, 30 Oct 2018 14:00:39 +0000 |
parents | c977df9da61e |
children | a901eff2acaf |
rev | line source |
---|---|
Chris@378 | 1 #!/bin/bash |
Chris@378 | 2 |
Chris@378 | 3 target=$1 |
Chris@378 | 4 |
Chris@378 | 5 if [ ! -f "$target" ]; then |
Chris@378 | 6 echo "Usage: $0 target-executable" |
Chris@378 | 7 exit 1 |
Chris@378 | 8 fi |
Chris@378 | 9 |
Chris@378 | 10 pfile=/tmp/packages_$$ |
Chris@378 | 11 rfile=/tmp/redundant_$$ |
Chris@378 | 12 |
Chris@378 | 13 trap "rm -f $pfile $rfile" 0 |
Chris@863 | 14 echo 1>&2 |
Chris@378 | 15 |
Chris@460 | 16 ldd "$target" | awk '{ print $3; }' | grep '^/' | while read lib; do |
Chris@378 | 17 if test -n "$lib" ; then |
Chris@378 | 18 dpkg-query -S "$lib" |
Chris@378 | 19 fi |
Chris@378 | 20 done | grep ': ' | awk -F: '{ print $1 }' | sort | uniq > $pfile |
Chris@378 | 21 |
Chris@863 | 22 echo "Packages providing required libraries:" 1>&2 |
Chris@863 | 23 cat $pfile 1>&2 |
Chris@863 | 24 echo 1>&2 |
Chris@378 | 25 |
Chris@378 | 26 for p in `cat $pfile`; do |
Chris@460 | 27 echo Looking at $p 1>&2 |
Chris@378 | 28 apt-cache showpkg "$p" | grep '^ ' | grep ',' | awk -F, '{ print $1; }' | \ |
Chris@378 | 29 while read d; do |
Chris@378 | 30 if grep -q '^'$d'$' $pfile; then |
Chris@865 | 31 echo $p |
Chris@378 | 32 fi |
Chris@378 | 33 done |
Chris@378 | 34 done | sort | uniq > $rfile |
Chris@378 | 35 |
Chris@863 | 36 echo "Packages that can be eliminated because other packages depend on them:" 1>&2 |
Chris@863 | 37 cat $rfile 1>&2 |
Chris@863 | 38 echo 1>&2 |
Chris@378 | 39 |
Chris@1081 | 40 cat $pfile $rfile | sort | uniq -u | sed 's/$/,/' | fmt -1000 | sed 's/^/Depends: /' | sed 's/,$/, libc6/' | sed 's/libjack0,/jackd,/' |
Chris@378 | 41 |
Chris@863 | 42 |