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
|