~shanx-shashank/mixxx/effects_ladspa

« back to all changes in this revision

Viewing changes to mixxx/build/unused/create_mixxx_dmg.sh

  • Committer: shanxS
  • Date: 2013-06-16 07:42:19 UTC
  • Revision ID: shanx.shashank@gmail.com-20130616074219-wszmk0slwfa1z61q
Init Repository.
Starting with GUI of lp:~shanx-shashank/mixxx/effects_parametricEq as base

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!/bin/bash
 
2
MIXXX_OLD_PATH=../MacOS/mixxx
 
3
MIXXX_PATH=../MacOS/Mixxx
 
4
VOL_NAME="Mixxx"
 
5
TMP_DMG_DIR="/tmp/mixxx_dmg"
 
6
ARCH=macintel
 
7
VERSION=`grep VERSION src/defs.h | cut -d" " -f 3 | tr -d \"`
 
8
DMG_PATH="./mixxx-$VERSION-$ARCH"
 
9
DMG_ICON="src/osx/VolumeIcon.icns"
 
10
QT4_PATH="/usr/local/Trolltech/Qt-4.3.2"  # Don't use a trailing slash here (important)
 
11
 
 
12
if [ ! -d Mixxx.app ]
 
13
then
 
14
    echo "Error: Mixxx.app bundle doesn't exist. Run \"scons\" to create it."
 
15
    exit
 
16
fi
 
17
 
 
18
cd Mixxx.app
 
19
cd Contents
 
20
mkdir Frameworks
 
21
cd Frameworks
 
22
echo "Copying libraries..."
 
23
cp $QT4_PATH/lib/libQtGui.4.dylib .
 
24
cp $QT4_PATH/lib/libQtCore.4.dylib .
 
25
cp $QT4_PATH/lib/libQtOpenGL.4.dylib .
 
26
cp $QT4_PATH/lib/libQtXml.4.dylib .
 
27
cp $QT4_PATH/lib/libQt3Support.4.dylib .
 
28
cp $QT4_PATH/lib/libQtNetwork.4.dylib .
 
29
cp $QT4_PATH/lib/libQtSql.4.dylib .
 
30
cp /usr/local/lib/libportaudio.2.dylib .
 
31
cp /usr/local/lib/libmad.0.dylib .
 
32
cp /opt/local/lib/libid3tag.0.dylib .
 
33
cp /usr/local/lib/libvorbisfile.3.dylib .
 
34
cp /usr/local/lib/libvorbis.0.dylib .
 
35
cp /usr/local/lib/libogg.0.dylib .
 
36
cp /usr/local/lib/libsndfile.1.dylib .
 
37
cp /usr/local/lib/libFLAC.7.dylib .
 
38
 
 
39
echo "Changing library ids..."
 
40
install_name_tool -id @executable_path/../Frameworks/libQtGui.4.dylib libQtGui.4.dylib
 
41
install_name_tool -id @executable_path/../Frameworks/libQtCore.4.dylib libQtCore.4.dylib
 
42
install_name_tool -id @executable_path/../Frameworks/libQtOpenGL.4.dylib libQtOpenGL.4.dylib
 
43
install_name_tool -id @executable_path/../Frameworks/libQt3Support.4.dylib libQt3Support.4.dylib
 
44
install_name_tool -id @executable_path/../Frameworks/libQtXml.4.dylib libQtXml.4.dylib
 
45
install_name_tool -id @executable_path/../Frameworks/libQtNetwork.4.dylib libQtNetwork.4.dylib
 
46
install_name_tool -id @executable_path/../Frameworks/libQtSql.4.dylib libQtSql.4.dylib
 
47
install_name_tool -id @executable_path/../Frameworks/libportaudio.2.dylib libportaudio.2.dylib
 
48
install_name_tool -id @executable_path/../Frameworks/libmad.0.dylib libmad.0.dylib
 
49
install_name_tool -id @executable_path/../Frameworks/libid3tag.0.dylib libid3tag.0.dylib
 
50
install_name_tool -id @executable_path/../Frameworks/libvorbisfile.3.dylib libvorbisfile.3.dylib
 
51
install_name_tool -id @executable_path/../Frameworks/libvorbis.0.dylib libvorbis.0.dylib
 
52
install_name_tool -id @executable_path/../Frameworks/libogg.0.dylib libogg.0.dylib
 
53
install_name_tool -id @executable_path/../Frameworks/libsndfile.1.dylib libsndfile.1.dylib
 
54
install_name_tool -id @executable_path/../Frameworks/libFLAC.7.dylib libFLAC.7.dylib
 
55
 
 
56
echo "Renaming mixxx binary to capitalised Mixxx"
 
57
mv $MIXXX_OLD_PATH $MIXXX_PATH
 
58
 
 
59
echo "Changing library ids in the Mixxx binary..."
 
60
install_name_tool -change $QT4_PATH/lib/libQtGui.4.dylib @executable_path/../Frameworks/libQtGui.4.dylib $MIXXX_PATH
 
61
install_name_tool -change $QT4_PATH/lib/libQtCore.4.dylib @executable_path/../Frameworks/libQtCore.4.dylib $MIXXX_PATH
 
62
install_name_tool -change $QT4_PATH/lib/libQtOpenGL.4.dylib @executable_path/../Frameworks/libQtOpenGL.4.dylib $MIXXX_PATH
 
63
install_name_tool -change $QT4_PATH/lib/libQt3Support.4.dylib @executable_path/../Frameworks/libQt3Support.4.dylib $MIXXX_PATH
 
64
install_name_tool -change $QT4_PATH/lib/libQtXml.4.dylib @executable_path/../Frameworks/libQtXml.4.dylib $MIXXX_PATH
 
65
install_name_tool -change $QT4_PATH/lib/libQtNetwork.4.dylib @executable_path/../Frameworks/libQtNetwork.4.dylib $MIXXX_PATH
 
66
install_name_tool -change $QT4_PATH/lib/libQtSql.4.dylib @executable_path/../Frameworks/libQtSql.4.dylib $MIXXX_PATH
 
67
install_name_tool -change /usr/local/lib/libportaudio.2.dylib @executable_path/../Frameworks/libportaudio.2.dylib $MIXXX_PATH
 
68
install_name_tool -change /usr/local/lib/libmad.0.dylib @executable_path/../Frameworks/libmad.0.dylib $MIXXX_PATH
 
69
install_name_tool -change /opt/local/lib/libid3tag.0.dylib @executable_path/../Frameworks/libid3tag.0.dylib $MIXXX_PATH # *** /opt/local/lib for this one!
 
70
install_name_tool -change /usr/local/lib/libvorbisfile.3.dylib @executable_path/../Frameworks/libvorbisfile.3.dylib $MIXXX_PATH
 
71
install_name_tool -change /usr/local/lib/libvorbis.0.dylib @executable_path/../Frameworks/libvorbis.0.dylib $MIXXX_PATH
 
72
install_name_tool -change /usr/local/lib/libogg.0.dylib @executable_path/../Frameworks/libogg.0.dylib $MIXXX_PATH
 
73
install_name_tool -change /usr/local/lib/libsndfile.1.dylib @executable_path/../Frameworks/libsndfile.1.dylib $MIXXX_PATH
 
74
install_name_tool -change /usr/local/lib/libFLAC.7.dylib @executable_path/../Frameworks/libFLAC.7.dylib $MIXXX_PATH
 
75
 
 
76
echo "Changing library ids within the QT4 libs"
 
77
# These are intra-QT4 dependencies
 
78
install_name_tool -change $QT4_PATH/lib/libQtCore.4.dylib @executable_path/../Frameworks/libQtCore.4.dylib libQtGui.4.dylib
 
79
install_name_tool -change $QT4_PATH/lib/libQtCore.4.dylib @executable_path/../Frameworks/libQtCore.4.dylib libQtOpenGL.4.dylib
 
80
install_name_tool -change $QT4_PATH/lib/libQtGui.4.dylib @executable_path/../Frameworks/libQtGui.4.dylib libQtOpenGL.4.dylib
 
81
install_name_tool -change $QT4_PATH/lib/libQtCore.4.dylib @executable_path/../Frameworks/libQtCore.4.dylib libQtSql.4.dylib
 
82
install_name_tool -change $QT4_PATH/lib/libQtCore.4.dylib @executable_path/../Frameworks/libQtCore.4.dylib libQtNetwork.4.dylib
 
83
install_name_tool -change $QT4_PATH/lib/libQtCore.4.dylib @executable_path/../Frameworks/libQtCore.4.dylib libQtXml.4.dylib
 
84
install_name_tool -change $QT4_PATH/lib/libQtGui.4.dylib @executable_path/../Frameworks/libQtGui.4.dylib libQt3Support.4.dylib
 
85
install_name_tool -change $QT4_PATH/lib/libQtCore.4.dylib @executable_path/../Frameworks/libQtCore.4.dylib libQt3Support.4.dylib
 
86
install_name_tool -change $QT4_PATH/lib/libQtSql.4.dylib @executable_path/../Frameworks/libQtSql.4.dylib libQt3Support.4.dylib
 
87
install_name_tool -change $QT4_PATH/lib/libQtXml.4.dylib @executable_path/../Frameworks/libQtXml.4.dylib libQt3Support.4.dylib
 
88
install_name_tool -change $QT4_PATH/lib/libQtNetwork.4.dylib @executable_path/../Frameworks/libQtNetwork.4.dylib libQt3Support.4.dylib
 
89
 
 
90
 
 
91
echo "Changing library ids within Vorbis lib"
 
92
# These are intra-ogg/vorbis dependencies (don't ask me how I figure this stuff out)
 
93
install_name_tool -change /opt/local/lib/libogg.0.dylib @executable_path/../Frameworks/libogg.0.dylib libvorbis.0.dylib
 
94
install_name_tool -change /opt/local/lib/libogg.0.dylib @executable_path/../Frameworks/libogg.0.dylib libvorbisfile.3.dylib
 
95
install_name_tool -change /usr/local/lib/libvorbis.0.dylib @executable_path/../Frameworks/libvorbis.0.dylib libvorbisfile.3.dylib # /usr for this one and /opt for the libogg ones... careful... (libogg is from MacPorts?)
 
96
 
 
97
echo "Changing library ids within libsndfile"
 
98
install_name_tool -change /usr/local/lib/libFLAC.7.dylib @executable_path/../Frameworks/libFLAC.7.dylib libsndfile.1.dylib
 
99
 
 
100
echo "Stripping debugging symbols in libraries"
 
101
for lib in `ls`;
 
102
do
 
103
    echo "Stripping $lib"
 
104
    strip -S $lib                      # Strip all the libraries
 
105
done
 
106
 
 
107
strip $MIXXX_PATH                # Strip the mixxx binary
 
108
 
 
109
echo "Copying QT4 imageformat plugins"
 
110
cd ..
 
111
mkdir plugins
 
112
mkdir plugins/imageformats
 
113
mkdir plugins/iconengines
 
114
cd plugins/imageformats
 
115
 
 
116
for lib in libqgif.dylib libqjpeg.dylib libqsvg.dylib; #Left out libqmng and libqtiff to save space.
 
117
do
 
118
    cp $QT4_PATH/plugins/imageformats/$lib .
 
119
 
 
120
    echo "Changing library ids within QT4 imageformat plugin: $lib"
 
121
    install_name_tool -id @executable_path/../Frameworks/$lib $lib
 
122
    install_name_tool -change $QT4_PATH/lib/libQtCore.4.dylib @executable_path/../Frameworks/libQtCore.4.dylib $lib
 
123
    install_name_tool -change $QT4_PATH/lib/libQtGui.4.dylib @executable_path/../Frameworks/libQtGui.4.dylib $lib
 
124
    install_name_tool -change $QT4_PATH/lib/libQtSql.4.dylib @executable_path/../Frameworks/libQtSql.4.dylib $lib
 
125
    install_name_tool -change $QT4_PATH/lib/libQtXml.4.dylib @executable_path/../Frameworks/libQtXml.4.dylib $lib
 
126
    install_name_tool -change $QT4_PATH/lib/libQtSvg.4.dylib @executable_path/../Frameworks/libQtSvg.4.dylib $lib
 
127
    install_name_tool -change $QT4_PATH/lib/libQtNetwork.4.dylib @executable_path/../Frameworks/libQtNetwork.4.dylib $lib
 
128
done
 
129
echo "Stripping debugging symbols from QT4 imageformat plugins"
 
130
strip *.dylib #Strip the imageformat plugins
 
131
 
 
132
#Rinse, repeat for the iconengine plugins
 
133
cd ..
 
134
cd iconengines
 
135
 
 
136
for lib in libqsvg.dylib;  #Yeah, theres a libqsvg.dylib iconengine and a libqsvg.dylib imageformat (and they're different)...
 
137
do
 
138
    cp $QT4_PATH/plugins/iconengines/$lib .
 
139
 
 
140
    echo "Changing library ids within QT4 iconegine plugin: $lib"
 
141
    install_name_tool -id @executable_path/../Frameworks/$lib $lib
 
142
    install_name_tool -change $QT4_PATH/lib/libQtCore.4.dylib @executable_path/../Frameworks/libQtCore.4.dylib $lib
 
143
    install_name_tool -change $QT4_PATH/lib/libQtGui.4.dylib @executable_path/../Frameworks/libQtGui.4.dylib $lib
 
144
    install_name_tool -change $QT4_PATH/lib/libQtSql.4.dylib @executable_path/../Frameworks/libQtSql.4.dylib $lib
 
145
    install_name_tool -change $QT4_PATH/lib/libQtXml.4.dylib @executable_path/../Frameworks/libQtXml.4.dylib $lib
 
146
    install_name_tool -change $QT4_PATH/lib/libQtSvg.4.dylib @executable_path/../Frameworks/libQtSvg.4.dylib $lib
 
147
    install_name_tool -change $QT4_PATH/lib/libQtNetwork.4.dylib @executable_path/../Frameworks/libQtNetwork.4.dylib $lib
 
148
done
 
149
echo "Stripping debugging symbols from QT4 iconengine plugins"
 
150
strip *.dylib #Strip the iconengine plugins
 
151
cd ..
 
152
 
 
153
 
 
154
cd ../../../
 
155
echo "Done creating Mixxx.app bundle!"
 
156
 
 
157
echo "Building DMG..."
 
158
rm -rf "$TMP_DMG_DIR"                               # Ditch old temp dmg directory
 
159
mkdir "$TMP_DMG_DIR"                                # Create a temp dmg directory
 
160
cp -r Mixxx.app "$TMP_DMG_DIR"                      # Copy Mixxx.app there
 
161
cp README "$TMP_DMG_DIR"                            # Copy the README too
 
162
cp LICENSE "$TMP_DMG_DIR"                           # ... and the LICENSE
 
163
cp Mixxx-Manual.pdf "$TMP_DMG_DIR"                  # ... and the manual
 
164
cp "$DMG_ICON" "$TMP_DMG_DIR/.VolumeIcon.icns"      # Copy the icon for the dmg
 
165
SetFile -a C "$TMP_DMG_DIR"                         # Set the folder's icon
 
166
# Might need to do the SetFile on the final .dmg instead...?
 
167
hdiutil create -srcfolder "$TMP_DMG_DIR" -format UDBZ -volname "$VOL_NAME" "$DMG_PATH"
 
168