annotate deploy/osx/sign.sh @ 516:449a0355f864 v2.0_osx_deploy

Deployment fixes. Qt on OSX now seems to depend on QtDBus, so copy that in, and also fail if anything is found to depend on an absent Qt framework.
author Chris Cannam
date Fri, 23 Oct 2015 08:50:39 +0100
parents af696edbd644
children 1dddd90cb84e
rev   line source
Chris@100 1 #!/bin/bash
Chris@62 2
Chris@437 3 set -eu
Chris@437 4
Chris@62 5 # Execute this from the top-level directory of the project (the one
Chris@62 6 # that contains the .app bundle). Supply the name of the .app bundle
Chris@62 7 # as argument
Chris@62 8 dir="$1"
Chris@62 9 if [ -z "$dir" ] || [ ! -d "$dir" ]; then
Chris@62 10 echo "Usage: $0 <pkgdir>"
Chris@62 11 echo "Where pkgdir is the directory containing <MyApplication>.app"
Chris@62 12 echo "All .app bundles in pkgdir will be signed"
Chris@62 13 exit 2
Chris@62 14 fi
Chris@62 15 for app in "$dir"/*.app; do
Chris@100 16 find "$app" -name Qt\* -print | while read fr; do
Chris@100 17 codesign -s "Developer ID Application: Chris Cannam" -fv "$fr"
Chris@100 18 done
Chris@100 19 find "$app" -name \*.dylib -print | while read fr; do
Chris@100 20 codesign -s "Developer ID Application: Chris Cannam" -fv "$fr"
Chris@100 21 done
Chris@207 22 codesign -s "Developer ID Application: Chris Cannam" -fv "$app/Contents/MacOS/Tony.bin"
Chris@62 23 codesign -s "Developer ID Application: Chris Cannam" -fv \
Chris@100 24 --requirements '=designated => identifier "uk.ac.qmul.eecs.c4dm.Tony" and ( (anchor apple generic and certificate leaf[field.1.2.840.113635.100.6.1.9] ) or (anchor apple generic and certificate 1[field.1.2.840.113635.100.6.2.6] and certificate leaf[field.1.2.840.113635.100.6.1.13] and certificate leaf[subject.OU] = "M2H8666U82"))' \
Chris@62 25 "$app"
Chris@62 26 done
Chris@62 27