# HG changeset patch # User Chris Cannam # Date 1404717248 -3600 # Node ID d18c89386a7104934acfe24532a2fc21b1b07c02 # Parent ccf3749cbaeaed1214b8cd0d65ebf878c4292740 OS/X build: copy frameworks and plugins automatically diff -r ccf3749cbaea -r d18c89386a71 deploy/osx/copy-qt.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/deploy/osx/copy-qt.sh Mon Jul 07 08:14:08 2014 +0100 @@ -0,0 +1,47 @@ +#!/bin/bash + +app="$1" +if [ -z "$app" ]; then + echo "Usage: $0 " + echo "Provide appname without the .app extension, please" + exit 2 +fi + +frameworks="QtCore QtNetwork QtGui QtXml QtWidgets QtPrintSupport" + +plugins="qtaccessiblewidgets qdds qgif qicns qico qjp2 qjpeg qmng qtga qtiff qwbmp qwebp qcocoa qminimal" + +qtdir=$(grep "Command:" Makefile | head -1 | awk '{ print $3; }' | sed s,/bin/.*,,) + +if [ ! -d "$qtdir" ]; then + echo "Failed to discover Qt installation directory from Makefile, exiting" + exit 2 +fi + +fdir="$app.app/Contents/Frameworks" +pdir="$app.app/Contents/plugins" + +mkdir -p "$fdir" +mkdir -p "$pdir" + +echo +echo "Copying frameworks..." +for fwk in $frameworks; do + cp -v "$qtdir/lib/$fwk.framework/$fwk" "$fdir" || exit 2 +done + +echo "Done" + +echo +echo "Copying plugins..." +for plug in $plugins; do + pfile=$(ls "$qtdir"/plugins/*/lib"$plug".dylib) + if [ ! -f "$pfile" ]; then + echo "Failed to find plugin $plug, exiting" + exit 2 + fi + cp -v "$pfile" "$pdir" || exit 2 +done + +echo "Done" + diff -r ccf3749cbaea -r d18c89386a71 deploy/osx/deploy.sh --- a/deploy/osx/deploy.sh Mon Jul 07 07:55:49 2014 +0100 +++ b/deploy/osx/deploy.sh Mon Jul 07 08:14:08 2014 +0100 @@ -24,6 +24,11 @@ esac echo +echo "Copying in frameworks and plugins from Qt installation directory." + +deploy/osx/copy-qt.sh "$app" || exit 2 + +echo echo "Fixing up paths." deploy/osx/paths.sh "$app"