# # # patch "osx_bundle.sh" # from [d333d018d0b32b99515054b6511dd107f57471a8] # to [260c9d291af70f34f0b7ac37bacb1764d616693d] # ============================================================ --- osx_bundle.sh d333d018d0b32b99515054b6511dd107f57471a8 +++ osx_bundle.sh 260c9d291af70f34f0b7ac37bacb1764d616693d @@ -31,9 +31,11 @@ BINARY_NAME="guitone" # name of the binary BINARY_NAME="guitone" # Qt libraries you've linked against -declare -a NEEDED_LIBS=( "QtCore" "QtGui" "QtXml" "QtNetwork" ) +declare -a NEEDED_LIBS=( "QtCore" "QtGui") # additional files you'd like to get copied to the final dmg declare -a ADD_FILES=( "README" "COPYING" "NEWS") +# sparkle framework +SPARKLE_FRAMEWORK=/Library/Frameworks/Sparkle.framework # # Configuration end, nothing should be edited from here on @@ -57,6 +59,11 @@ fi exit 1 fi +if [ ! -d "$SPARKLE_FRAMEWORK" ]; then + echo "Sparkle framework not found... exiting." + exit 1; +fi + echo "Creating Frameworks directory in application bundle..." mkdir -p "$framework_dir" @@ -93,27 +100,38 @@ done echo "...$lib done." done +echo "Copying and configuring Sparkle framework..." +rm -rf "$framework_dir/Sparkle.framework" +cp -fR "$SPARKLE_FRAMEWORK" "$framework_dir" +install_name_tool \ + -id "@executable_path/../Frameworks/Sparkle.framework/Versions/A/Sparkle" \ + "$framework_dir/Sparkle.framework/Versions/A/Sparkle" +install_name_tool -change "$SPARKLE_FRAMEWORK/Versions/A/Sparkle" \ + "@executable_path/../Frameworks/Sparkle.framework/Versions/A/Sparkle" \ + "$bundle_bin" echo "Removing any debug libraries and headers..." find "$framework_dir" | egrep "debug|Headers" | xargs rm -rf +if [ "$1" = "dmg" ]; then + echo "Preparing image directory..." + tempdir="/tmp/`basename $0`.$$" + mkdir $tempdir + cp -R $bundle_dir $tempdir + echo "...Bundle copied" + address@hidden + for (( i = 0 ; i < fcount ; i++ )) do + file=${ADD_FILES[$i]} + if [ ! -f "$file" ]; then + echo "WARNING: $file not found!" + else + cp "$file" $tempdir + echo "...$file copied" + fi + done + echo "Creating disk image..." + rm -f "$BIN_DIR/$BINARY_NAME.dmg" + # format UDBZ: bzip2 compressed (10.4+), UDZ0: zlib compressed (default) + hdiutil create -srcfolder $tempdir -format UDBZ -volname "$BINARY_NAME" "$BIN_DIR/$BINARY_NAME.dmg" + rm -rf $tempdir +fi -echo "Preparing image directory..." -tempdir="/tmp/`basename $0`.$$" -mkdir $tempdir -cp -R $bundle_dir $tempdir -echo "...Bundle copied" address@hidden -for (( i = 0 ; i < fcount ; i++ )) do - file=${ADD_FILES[$i]} - if [ ! -f "$file" ]; then - echo "WARNING: $file not found!" - else - cp "$file" $tempdir - echo "...$file copied" - fi -done -echo "Creating disk image..." -rm -f "$BIN_DIR/$BINARY_NAME.dmg" -# format UDBZ: bzip2 compressed (10.4+), UDZ0: zlib compressed (default) -hdiutil create -srcfolder $tempdir -format UDBZ -volname "$BINARY_NAME" "$BIN_DIR/$BINARY_NAME.dmg" -rm -rf $tempdir