annotate deploy_mac.sh @ 282:d9319859a4cf tip

(none)
author benoitrigolleau
date Fri, 31 Oct 2008 11:00:24 +0000
parents 00b5875d8c30
children
rev   line source
lbajardsilogic@0 1 #!/bin/bash
lbajardsilogic@0 2
lbajardsilogic@42 3 # this script should be executed from the directory that contains the sound-access.app directory (application bundle)
lbajardsilogic@0 4 # it copies the required 3rd party libraries into the application bundle and corrects the library install names and references
lbajardsilogic@0 5
lbajardsilogic@0 6 LIBPREFIX=/usr/local/lib/
lbajardsilogic@0 7 #QTPREFIX=/usr/local/Trolltech/Qt-4.1.0/lib/
lbajardsilogic@42 8 TARGETPATH=sound-access.app/Contents/Frameworks/
lbajardsilogic@0 9
lbajardsilogic@0 10 mkdir $TARGETPATH
lbajardsilogic@0 11
lbajardsilogic@0 12 # add other required libs (e.g. oggz)
lbajardsilogic@0 13 # use "otool -L <executable>" to get a list of required libraries
lbajardsilogic@0 14
lbajardsilogic@0 15 #LIBS="libmad.0.2.1.dylib libsndfile.1.dylib libsamplerate.0.dylib libportaudio.dylib.0.0.18 liboggz.1.dylib libfishsound.1.dylib libvorbisenc.2.dylib libvorbis.0.dylib libogg.0.dylib"
lbajardsilogic@0 16
lbajardsilogic@0 17 # libjack.0.dylib liblrdf.2.dylib libraptor.1.dylib
lbajardsilogic@0 18
lbajardsilogic@0 19 LIBS=
lbajardsilogic@0 20
lbajardsilogic@0 21 for LIB in $LIBS;
lbajardsilogic@0 22 do
lbajardsilogic@0 23 cp $LIBPREFIX$LIB $TARGETPATH
lbajardsilogic@0 24 done
lbajardsilogic@0 25
lbajardsilogic@0 26 for LIB in $LIBS;
lbajardsilogic@0 27 do
lbajardsilogic@42 28 install_name_tool -id @executable_path/../Frameworks/${LIB} sound-access.app/Contents/Frameworks/${LIB}
lbajardsilogic@0 29 done
lbajardsilogic@0 30
lbajardsilogic@0 31 for LIB in $LIBS;
lbajardsilogic@0 32 do
lbajardsilogic@42 33 install_name_tool -change ${LIBPREFIX}${LIB} @executable_path/../Frameworks/${LIB} sound-access.app/Contents/MacOS/sound-access
lbajardsilogic@0 34 done
lbajardsilogic@0 35
lbajardsilogic@0 36 pushd $TARGETPATH
lbajardsilogic@0 37
lbajardsilogic@0 38 for LIB in $LIBS;
lbajardsilogic@0 39 do
lbajardsilogic@0 40 for TARGETLIB in $LIBS;
lbajardsilogic@0 41 do
lbajardsilogic@0 42 install_name_tool -change ${LIBPREFIX}${TARGETLIB} @executable_path/../Frameworks/${TARGETLIB} $LIB
lbajardsilogic@0 43 done
lbajardsilogic@0 44 done
lbajardsilogic@0 45
lbajardsilogic@0 46 popd
lbajardsilogic@0 47
lbajardsilogic@0 48 QTPREFIX=/Library/Frameworks/
lbajardsilogic@0 49 QTFWKS="QtXml QtCore QtGui QtNetwork"
lbajardsilogic@0 50
lbajardsilogic@0 51 # copy the dynamic libraries into the app bundle
lbajardsilogic@0 52
lbajardsilogic@0 53 for FWK in $QTFWKS; do
lbajardsilogic@0 54 cp ${QTPREFIX}${FWK}.framework/Versions/4/${FWK} ${TARGETPATH}
lbajardsilogic@0 55 done
lbajardsilogic@0 56
lbajardsilogic@0 57 # change the id's of the dylibs
lbajardsilogic@0 58 for FWK in $QTFWKS; do
lbajardsilogic@42 59 install_name_tool -id @executable_path/../Frameworks/${FWK} sound-access.app/Contents/Frameworks/$FWK
lbajardsilogic@0 60 done
lbajardsilogic@0 61
lbajardsilogic@0 62 # tell the linker to look for dylibs in the app bundle
lbajardsilogic@0 63 for FWK in $QTFWKS; do
lbajardsilogic@42 64 install_name_tool -change ${FWK}.framework/Versions/4/${FWK} @executable_path/../Frameworks/${FWK} sound-access.app/Contents/MacOS/sound-access
lbajardsilogic@0 65 done
lbajardsilogic@0 66
lbajardsilogic@0 67 # correct dependencies between QT dylibs
lbajardsilogic@0 68 for FWK in $QTFWKS; do
lbajardsilogic@0 69 case $FWK in QtCore) continue;; esac
lbajardsilogic@42 70 install_name_tool -change QtCore.framework/Versions/4/QtCore @executable_path/../Frameworks/QtCore sound-access.app/Contents/Frameworks/${FWK}
lbajardsilogic@0 71 done
lbajardsilogic@0 72