diff --git a/packaging/osx/OpenRA.app/Contents/MacOS/OpenRA b/packaging/osx/OpenRA.app/Contents/MacOS/OpenRA index 7865887461..e4e9f43d40 100755 --- a/packaging/osx/OpenRA.app/Contents/MacOS/OpenRA +++ b/packaging/osx/OpenRA.app/Contents/MacOS/OpenRA @@ -27,6 +27,7 @@ CNC_MIXEN="http://open-ra.org/packages/cnc-packages.zip" APP_PATH=`echo $0 | awk '{split($0,patharr,"/"); idx=1; while(patharr[idx+3] != "") { if (patharr[idx] != "/") {printf("%s/", patharr[idx]); idx++ }} }'` EXE_PATH="$APP_PATH/Contents/MacOS/" PAYLOAD="$APP_PATH/Contents/Resources/payload.zip" +VERSION=`cat "$APP_PATH/Contents/Resources/VERSION"` export LD_LIBRARY_PATH="$EXE_PATH/lib":$LD_LIBRARY_PATH export MONO_PATH="$EXE_PATH/lib" @@ -100,6 +101,13 @@ if [ ! -e "$GAME_PATH/OpenRA.Game.exe" ]; then fi fi +# Is the installed version older than the current version? +INSTVER=`cat "$GAME_PATH/VERSION"` +if [ $INSTVER -lt $VERSION ]; then + echo "Updating installed version $INSTVER to $VERSION" + unzip -o "$PAYLOAD" -d "$GAME_PATH" +fi + # Prompt for the mod to run MODBUTTON=`osascript -e 'tell application "Finder" display dialog "Choose a mod" buttons {"Red Alert", "C&C"} \ diff --git a/packaging/osx/package-game.sh b/packaging/osx/package-game.sh index 92331c2dde..5a6f6c0f6e 100755 --- a/packaging/osx/package-game.sh +++ b/packaging/osx/package-game.sh @@ -25,13 +25,15 @@ cd $PAYLOAD for i in $EXCLUDE; do find . -path "$i" -delete done +date "+%Y%m%d%H" >> "VERSION" zip payload -r -9 * - cd $PACKAGING_PATH # Move everything into the app bundle cp -r "$LAUNCHER_PATH" . cp "$PAYLOAD/payload.zip" "OpenRA.app/Contents/Resources/" +cp "$PAYLOAD/VERSION" "OpenRA.app/Contents/Resources/" + rm -rf $PAYLOAD zip OpenRA -r -9 OpenRA.app echo "Done!" \ No newline at end of file