Mercurial > hg > sonic-visualiser
view deploy/linux/deploy-appimage.sh @ 1888:f8f3fa1b1286 appimage
Recursive dependencies
author | Chris Cannam |
---|---|
date | Wed, 27 Jun 2018 15:57:08 +0100 |
parents | 033fcd33e125 |
children | d8dfd30d6d41 |
line wrap: on
line source
#!/bin/bash set -eu program=sonic-visualiser checker=vamp-plugin-load-checker piper=piper-vamp-simple-server targetdir="${program}.AppDir" echo "Target dir is $targetdir" if [ -d "$targetdir" ]; then echo "Target directory exists, not overwriting" exit fi mkdir "$targetdir" mkdir -p "$targetdir"/usr/bin mkdir -p "$targetdir"/usr/lib cp "$program" "$checker" "$piper" "$targetdir"/usr/bin/ add_dependencies() { local binary="$1" for lib in $(ldd "$binary" | grep '=> /usr/lib/' | sed 's/^.*=> //' | sed 's/ .*$//' | grep -v 'libc.so' | grep -v 'libm.so'); do mkdir -p "$targetdir/$(dirname $lib)" if [ ! -f "$targetdir/$lib" ]; then cp -Lv "$lib" "$targetdir/$lib" chmod +x "$targetdir/$lib" add_dependencies "$lib" fi done } add_dependencies "$program" cp "$program.desktop" "$targetdir/" cp "icons/sv-icon.svg" "$targetdir/" cp sv-dependency-builds/linux/appimage/AppRun-x86_64 "$targetdir/AppRun" chmod +x "$targetdir/AppRun" ARCH=x86_64 sv-dependency-builds/linux/appimage/appimagetool-x86_64.AppImage "$targetdir"