# Mac OS X init_module "Mac OS X" # Configuration if [ "$CONFIG" = true ]; then if [ -n "${INI__macosx__maintainer_name}" ]; then MAINTAINER_NAME=${INI__macosx__maintainer_name} fi if [ -n "${INI__macosx__icon}" ]; then PROJECT_ICNS=${INI__macosx__icon} fi fi # Options while getoptex "$SCRIPT_ARGS" "$@" do if [ "$OPTOPT" = "osx-icon" ]; then PROJECT_ICNS=$OPTARG elif [ "$OPTOPT" = "osx-maintainer-name" ]; then MAINTAINER_NAME=$OPTARG fi done EXCLUDE_FILES="$EXCLUDE_FILES $PROJECT_ICNS" PACKAGE_NAME=$(echo $PROJECT_NAME | sed -e 's/[^-a-zA-Z0-9_]/-/g') create_love_file 9 # Info.plist ## TODO: Remove this and replace it by parsing the file instead of overwriting INFO_PLIST=" BuildMachineOSBuild 13D65 CFBundleDevelopmentRegion English CFBundleDocumentTypes CFBundleTypeIconFile LoveDocument.icns CFBundleTypeName LÖVE Project CFBundleTypeRole Viewer LSHandlerRank Owner LSItemContentTypes org.love2d.love-game CFBundleTypeName Folder CFBundleTypeOSTypes fold CFBundleTypeRole Viewer LSHandlerRank None CFBundleExecutable love CFBundleIconFile ${PROJECT_ICNS##/*/} CFBundleIdentifier org.$MAINTAINER_NAME.$PACKAGE_NAME CFBundleInfoDictionaryVersion 6.0 CFBundleName $PROJECT_NAME CFBundlePackageType APPL CFBundleShortVersionString $LOVE_VERSION CFBundleSignature LoVe DTCompiler com.apple.compilers.llvm.clang.1_0 DTPlatformBuild 5B1008 DTPlatformVersion GM DTSDKBuild 13C64 DTSDKName macosx10.9 DTXcode 0511 DTXcodeBuild 5B1008 LSApplicationCategoryType public.app-category.games NSHumanReadableCopyright © 2006-2014 LÖVE Development Team NSPrincipalClass NSApplication " ## MacOS 64-bits ## if [ "$LOVE_GT_090" = true ]; then if [ -f "$CACHE_DIR/love-$LOVE_VERSION-macosx-x64.zip" ]; then cp $CACHE_DIR/love-$LOVE_VERSION-macosx-x64.zip ./ else curl -L -C - -o $CACHE_DIR/love-$LOVE_VERSION-macosx-x64.zip https://bitbucket.org/rude/love/downloads/love-$LOVE_VERSION-macosx-x64.zip cp $CACHE_DIR/love-$LOVE_VERSION-macosx-x64.zip ./ fi unzip -qq love-$LOVE_VERSION-macosx-x64.zip rm -rf "$PROJECT_NAME"-macosx-x64.zip 2> /dev/null mv love.app "$PROJECT_NAME".app cp "$PROJECT_NAME".love "$PROJECT_NAME".app/Contents/Resources cp "$PROJECT_ICNS" "$PROJECT_NAME".app/Contents/Resources 2> /dev/null echo "$INFO_PLIST" > "$PROJECT_NAME".app/Contents/Info.plist zip -9 -qr "$PROJECT_NAME"-macosx-x64.zip "$PROJECT_NAME".app rm -rf love-$LOVE_VERSION-macosx-x64.zip "$PROJECT_NAME".app __MACOSX ## MacOS 32-bits ## else if [ -f "$CACHE_DIR/love-$LOVE_VERSION-macosx-ub.zip" ]; then cp $CACHE_DIR/love-$LOVE_VERSION-macosx-ub.zip ./ else curl -L -C - -o $CACHE_DIR/love-$LOVE_VERSION-macosx-ub.zip https://bitbucket.org/rude/love/downloads/love-$LOVE_VERSION-macosx-ub.zip cp $CACHE_DIR/love-$LOVE_VERSION-macosx-ub.zip ./ fi unzip -qq love-$LOVE_VERSION-macosx-ub.zip rm -rf "$PROJECT_NAME"-macosx-ub.zip 2> /dev/null mv love.app "$PROJECT_NAME".app cp "$PROJECT_NAME".love "$PROJECT_NAME".app/Contents/Resources cp "$PROJECT_ICNS" "$PROJECT_NAME".app/Contents/Resources 2> /dev/null echo "$INFO_PLIST" > "$PROJECT_NAME".app/Contents/Info.plist zip -9 -qr "$PROJECT_NAME"-macosx-ub.zip "$PROJECT_NAME".app rm -rf love-$LOVE_VERSION-macosx-ub.zip "$PROJECT_NAME".app __MACOSX fi unset PROJECT_ICNS exit_module