mirror of
https://github.com/touchHLE/touchHLE.git
synced 2026-01-31 01:25:24 +01:00
44 lines
1.7 KiB
Bash
Executable File
44 lines
1.7 KiB
Bash
Executable File
#!/bin/sh
|
|
set -e
|
|
|
|
# Creates the .app bundle containing the basic set of files needed for touchHLE
|
|
# to run. Also adds an icon and metadata similar to the Android APK.
|
|
|
|
if [[ $# == 3 ]]; then
|
|
PATH_TO_BINARY="$1"
|
|
VERSION="$2"
|
|
BRANDING="$3"
|
|
shift 3
|
|
|
|
if [[ "x$BRANDING" == "x" ]]; then
|
|
APP_NAME=touchHLE
|
|
ICON_NAME=icon
|
|
else
|
|
APP_NAME="touchHLE $BRANDING"
|
|
ICON_NAME="icon_$(echo "$BRANDING" | tr 'A-Z' 'a-z')"
|
|
VERSION="$VERSION $BRANDING"
|
|
fi
|
|
rm -rf "$ICON_NAME.icns" "$ICON_NAME.iconset"
|
|
mkdir "$ICON_NAME.iconset"
|
|
cp ../res/"$ICON_NAME.png" "$ICON_NAME.iconset"/icon_512x512.png
|
|
iconutil -c icns -o "$ICON_NAME.icns" "$ICON_NAME.iconset"
|
|
|
|
rm -rf "$APP_NAME.app"
|
|
mkdir -p "$APP_NAME.app"/Contents/MacOS "$APP_NAME.app"/Contents/Resources
|
|
cp $PATH_TO_BINARY "$APP_NAME.app"/Contents/MacOS/touchHLE
|
|
cp -r ../touchHLE_dylibs "$APP_NAME.app"/Contents/Resources/
|
|
cp -r ../touchHLE_fonts "$APP_NAME.app"/Contents/Resources/
|
|
cp -r ../touchHLE_default_options.txt "$APP_NAME.app"/Contents/Resources/
|
|
cp "$ICON_NAME.icns" "$APP_NAME.app"/Contents/Resources/
|
|
|
|
plutil -create xml1 "$APP_NAME.app"/Contents/Info.plist
|
|
plutil -insert CFBundleName -string "$APP_NAME" "$APP_NAME.app"/Contents/Info.plist
|
|
plutil -insert CFBundleDisplayName -string "$APP_NAME" "$APP_NAME.app"/Contents/Info.plist
|
|
plutil -insert CFBundleShortVersionString -string "$VERSION" "$APP_NAME.app"/Contents/Info.plist
|
|
plutil -insert CFBundleExecutable -string touchHLE "$APP_NAME.app"/Contents/Info.plist
|
|
plutil -insert CFBundleIconFile -string "$ICON_NAME" "$APP_NAME.app"/Contents/Info.plist
|
|
else
|
|
echo "Incorrect usage."
|
|
exit 1
|
|
fi
|