3 version=`cat wscript | egrep ^VERSION | awk '{print $3}' | sed -e "s/'//g"`
5 # DMG size in megabytes
7 WORK=build/platform/osx
8 ENV=/Users/carl/Environments/osx/10.8
11 appdir="DVD-o-matic.app"
12 approot=$appdir/Contents
15 resources=$approot/Resources
20 mkdir -p $WORK/$resources
22 cp build/src/tools/dvdomatic $WORK/$macos/
23 cp build/src/lib/libdvdomatic.dylib $WORK/$libs/
24 cp build/src/wx/libdvdomatic-wx.dylib $WORK/$libs/
25 cp $DEPS/lib/libdcp.dylib $WORK/$libs/
26 cp $DEPS/lib/libasdcp-libdcp.dylib $WORK/$libs/
27 cp $DEPS/lib/libkumu-libdcp.dylib $WORK/$libs/
28 cp $DEPS/lib/libopenjpeg*.dylib $WORK/$libs/
29 cp $DEPS/lib/libavformat*.dylib $WORK/$libs/
30 cp $DEPS/lib/libavfilter*.dylib $WORK/$libs/
31 cp $DEPS/lib/libavutil*.dylib $WORK/$libs/
32 cp $DEPS/lib/libavcodec*.dylib $WORK/$libs/
33 cp $DEPS/lib/libswscale*.dylib $WORK/$libs/
34 cp $DEPS/lib/libpostproc*.dylib $WORK/$libs/
35 cp $DEPS/lib/libswresample*.dylib $WORK/$libs/
36 cp $ENV/lib/libboost_system.dylib $WORK/$libs/
37 cp $ENV/lib/libboost_filesystem.dylib $WORK/$libs/
38 cp $ENV/lib/libboost_thread.dylib $WORK/$libs/
39 cp $ENV/lib/libboost_date_time.dylib $WORK/$libs/
40 cp $ENV/lib/libssl*.dylib $WORK/$libs/
41 cp $ENV/lib/libcrypto*.dylib $WORK/$libs/
42 cp $ENV/lib/libxml++-2.6*.dylib $WORK/$libs/
43 cp $ENV/lib/libxml2*.dylib $WORK/$libs/
44 cp $ENV/lib/libglibmm-2.4*.dylib $WORK/$libs/
45 cp $ENV/lib/libgobject*.dylib $WORK/$libs/
46 cp $ENV/lib/libgthread*.dylib $WORK/$libs/
47 cp $ENV/lib/libgmodule*.dylib $WORK/$libs/
48 cp $ENV/lib/libsigc*.dylib $WORK/$libs/
49 cp $ENV/lib/libglib-2*.dylib $WORK/$libs/
50 cp $ENV/lib/libintl*.dylib $WORK/$libs/
51 cp $ENV/lib/libsndfile*.dylib $WORK/$libs/
52 cp $ENV/lib/libMagick++*.dylib $WORK/$libs/
53 cp $ENV/lib/libMagickCore*.dylib $WORK/$libs/
54 cp $ENV/lib/libMagickWand*.dylib $WORK/$libs/
55 cp $ENV/lib/libssh*.dylib $WORK/$libs/
56 cp $ENV/lib/libwx*.dylib $WORK/$libs/
57 cp $ENV/lib/libfontconfig*.dylib $WORK/$libs/
58 cp $ENV/lib/libfreetype*.dylib $WORK/$libs/
59 cp $ENV/lib/libexpat*.dylib $WORK/$libs/
61 for obj in $WORK/$macos/dvdomatic $WORK/$libs/*.dylib; do
62 deps=`otool -L $obj | awk '{print $1}' | egrep "(/Users/carl|libboost|libssh)"`
66 changes="$changes -change $dep @executable_path/../lib/$base"
68 if test "x$changes" != "x"; then
69 install_name_tool $changes $obj
74 cp build/platform/osx/Info.plist $WORK/$approot
75 cp icons/dvdomatic.icns $WORK/$resources/DVD-o-matic.icns
77 tmp_dmg=$WORK/dvdomatic_tmp.dmg
78 dmg="$WORK/DVD-o-matic $version.dmg"
79 vol_name=DVD-o-matic-$version
81 mkdir -p $WORK/$vol_name
84 hdiutil create -megabytes $DMG_SIZE $tmp_dmg
85 device=$(hdid -nomount $tmp_dmg | grep Apple_HFS | cut -f 1 -d ' ')
86 newfs_hfs -v ${vol_name} $device
87 mount -t hfs "$device" $WORK/$vol_name
89 cp -r $WORK/$appdir $WORK/$vol_name
92 tell application "Finder"
93 tell disk "'$vol_name'"
95 set current view of container window to icon view
96 set toolbar visible of container window to false
97 set statusbar visible of container window to false
98 set the bounds of container window to {400, 200, 800, 440}
99 set theViewOptions to the icon view options of container window
100 set arrangement of theViewOptions to not arranged
101 set icon size of theViewOptions to 64
102 make new alias file at container window to POSIX file "/Applications" with properties {name:"Applications"}
103 set position of item "DVD-o-matic.app" of container window to {90, 100}
104 set position of item "Applications" of container window to {310, 100}
107 update without registering applications
114 chmod -Rf go-w $WORK/mnt
118 hdiutil eject $device
119 hdiutil convert -format UDZO $tmp_dmg -imagekey zlib-level=9 -o "$dmg"
120 sips -i $WORK/$resources/DVD-o-matic.icns
121 DeRez -only icns $WORK/$resources/DVD-o-matic.icns > $WORK/$resources/DVD-o-matic.rsrc
122 Rez -append $WORK/$resources/DVD-o-matic.rsrc -o "$dmg"