3 |
# This script is primarily made for the linuxsampler build server. It |
# This script is primarily made for the linuxsampler build server. It |
4 |
# copies the files created by the previous Max OS X build steps, and |
# copies the files created by the previous Max OS X build steps, and |
5 |
# creates universal binaries from the i686, x86_64 and powerpc |
# creates universal binaries from the i686, x86_64 and powerpc |
6 |
# files. Finally, it packs everything in a tar.bz2 archive. |
# files. Then it packs all components as a .pkg Mac installer package and |
7 |
|
# finally it wraps everything in a tar.bz2 archive. |
8 |
|
|
9 |
LIPO=x86_64-apple-darwin9-lipo |
LIPO=x86_64-apple-darwin9-lipo |
10 |
P=/home/persson/mac |
P=/home/persson/mac |
11 |
D=linuxsampler_`date +%Y%m%d` |
D=linuxsampler_`date +%Y%m%d` |
12 |
|
|
13 |
|
# command line tools shipped with libgig |
14 |
|
gigtools_bins="akaidump akaiextract dlsdump gig2mono gig2stereo gigdump gigextract gigmerge korg2gig korgdump rifftree sf2dump sf2extract" |
15 |
|
|
16 |
createuniv () |
createuniv () |
17 |
{ |
{ |
18 |
$LIPO -create "$P/x86_64/$1" "$P/i686/$1" "$P/powerpc/$1" \ |
$LIPO -create "$P/x86_64/$1" "$P/i686/$1" "$P/powerpc/$1" \ |
35 |
createuniv lib/libFLAC.8.2.0.dylib |
createuniv lib/libFLAC.8.2.0.dylib |
36 |
ln -s libFLAC.8.2.0.dylib "$D/lib/libFLAC.8.dylib" |
ln -s libFLAC.8.2.0.dylib "$D/lib/libFLAC.8.dylib" |
37 |
createuniv lib/libsndfile.1.dylib |
createuniv lib/libsndfile.1.dylib |
38 |
createuniv lib/libgig/libgig.6.dylib lib/libgig.6.dylib |
createuniv lib/libgig/libgig.7.dylib lib/libgig.7.dylib |
39 |
createuniv lib/linuxsampler/liblinuxsampler.3.dylib lib/liblinuxsampler.3.dylib |
createuniv lib/linuxsampler/liblinuxsampler.4.dylib lib/liblinuxsampler.4.dylib |
40 |
createuniv bin/linuxsampler LinuxSampler/linuxsampler |
createuniv bin/linuxsampler LinuxSampler/linuxsampler |
41 |
createuniv bin/lscp LinuxSampler/lscp |
createuniv bin/lscp LinuxSampler/lscp |
42 |
cp README "$D" |
cp README "$D" |
54 |
createuniv VST/LinuxSampler.vst/Contents/MacOS/LinuxSampler LinuxSampler.vst/Contents/MacOS/LinuxSampler |
createuniv VST/LinuxSampler.vst/Contents/MacOS/LinuxSampler LinuxSampler.vst/Contents/MacOS/LinuxSampler |
55 |
|
|
56 |
|
|
57 |
|
# gigtools |
58 |
|
|
59 |
|
for x in $gigtools_bins |
60 |
|
do |
61 |
|
createuniv "bin/$x" "LinuxSampler/$x" |
62 |
|
done |
63 |
|
|
64 |
|
|
65 |
# Fantasia |
# Fantasia |
66 |
|
|
67 |
cp -r "$P/Fantasia.app" "$D/LinuxSampler" |
cp -r "$P/Fantasia.app" "$D/LinuxSampler" |
90 |
"$D/lib/locale/de/LC_MESSAGES" \ |
"$D/lib/locale/de/LC_MESSAGES" \ |
91 |
"$D/lib/linuxsampler/plugins" |
"$D/lib/linuxsampler/plugins" |
92 |
|
|
93 |
createuniv lib/gigedit/libgigedit.2.dylib lib/libgigedit.2.dylib |
createuniv lib/gigedit/libgigedit.3.dylib lib/libgigedit.3.dylib |
94 |
createuniv bin/gigedit LinuxSampler/gigedit.app/Contents/MacOS/gigedit |
createuniv bin/gigedit LinuxSampler/gigedit.app/Contents/MacOS/gigedit |
95 |
createuniv lib/linuxsampler/plugins/libgigeditlinuxsamplerplugin.so |
createuniv lib/linuxsampler/plugins/libgigeditlinuxsamplerplugin.so |
96 |
|
|
147 |
cp $f $dlib |
cp $f $dlib |
148 |
done |
done |
149 |
|
|
150 |
|
component="gigtools" |
151 |
|
dlib="components/$component.pkg/bin" |
152 |
|
mkdir -p $dlib |
153 |
|
for f in $gigtools_bins; do |
154 |
|
cp $D/LinuxSampler/$f $dlib |
155 |
|
done |
156 |
|
dlib="components/$component.pkg/share/man/man1" |
157 |
|
mkdir -p $dlib |
158 |
|
for f in $gigtools_bins; do |
159 |
|
cp $P/i686/share/man/man1/$f.1 $dlib |
160 |
|
done |
161 |
|
|
162 |
component="libgigedit" |
component="libgigedit" |
163 |
dlib="$PWD/components/$component.pkg/lib" |
dlib="$PWD/components/$component.pkg/lib" |
164 |
mkdir -p $dlib |
mkdir -p $dlib |
174 |
mkdir -p $dlib |
mkdir -p $dlib |
175 |
( |
( |
176 |
cd $D/lib/ |
cd $D/lib/ |
177 |
for f in `ls -d gdk* gtk* locale/*/LC_MESSAGES/gtk20.mo pango libatk* libcairo* libffi* libfont* libfreetype* libgailutil* libgdk* libgio* libglib* libgmodule* libgobject* libgthread* libgtk* libintl* libjpeg* libpango* libpixman* libpng* libgsigc* libtiff*`; do |
for f in `ls -d gdk* gtk* locale/*/LC_MESSAGES/gtk20.mo pango libatk* libcairo* libffi* libfont* libfreetype* libgailutil* libgdk* libgio* libglib* libgmodule* libgobject* libgthread* libgtk* libintl* libjpeg* libpango* libpixman* libpng* libsigc* libtiff*`; do |
178 |
cp -r --parents $f $dlib |
cp -r --parents $f $dlib |
179 |
done |
done |
180 |
) |
) |
225 |
size_kb=`du -sk $d | cut -f 1` |
size_kb=`du -sk $d | cut -f 1` |
226 |
entries_count=`find . | wc -l` |
entries_count=`find . | wc -l` |
227 |
cp ../linuxsampler.unpkg/$d/PackageInfo ../linuxsampler.prepkg/$d |
cp ../linuxsampler.unpkg/$d/PackageInfo ../linuxsampler.prepkg/$d |
228 |
xmltxt=`xmlstarlet ed -u '/pkg-info/payload/@numberOfFiles' -v $entries_count ../linuxsampler.prepkg/$d/PackageInfo | xmlstarlet ed -u '/pkg-info/payload/@installKBytes' -v $size_kb -` |
xmltxt=`xmlstarlet ed -u '/pkg-info/payload/@numberOfFiles' -v $entries_count ../linuxsampler.prepkg/$d/PackageInfo | xmlstarlet ed -u '/pkg-info/payload/@installKBytes' -v $size_kb` |
229 |
echo $xmltxt > ../linuxsampler.prepkg/$d/PackageInfo |
echo $xmltxt > ../linuxsampler.prepkg/$d/PackageInfo |
230 |
identifier=`xmlstarlet sel -t -v '/pkg-info/@identifier' ../linuxsampler.prepkg/$d/PackageInfo` |
identifier=`xmlstarlet sel -t -v '/pkg-info/@identifier' ../linuxsampler.prepkg/$d/PackageInfo` |
231 |
xmltxt=`xmlstarlet ed -u "/installer-gui-script/pkg-ref[@id='$identifier']/@installKBytes" -v $size_kb ../linuxsampler.prepkg/Distribution` |
xmltxt=`xmlstarlet ed -u "/installer-gui-script/pkg-ref[@id='$identifier']/@installKBytes" -v $size_kb ../linuxsampler.prepkg/Distribution` |