ppsspp/ios/iosbundle.sh

43 lines
1.5 KiB
Bash
Executable File

#!/bin/bash
echo "iosbundle.sh params 0: ${0} 1: ${1} 2: ${2}"
echo $(pwd)
PPSSPP="${1}"
GIT_VERSION_FILE="${2}/git-version.cpp"
if [ ! -f "${GIT_VERSION_FILE}" ]; then
echo "iosbundle.sh: No git-version.cpp file: ${GIT_VERSION_FILE}"
exit 0
fi
echo "GIT_VERSION_FILE: ${GIT_VERSION_FILE}"
GIT_VERSION_LINE=$(grep "PPSSPP_GIT_VERSION = " $GIT_VERSION_FILE)
SHORT_VERSION_MATCH='.*"v([0-9\.]+(-[0-9]+)?).*";'
LONG_VERSION_MATCH='.*"v(.*)";'
FULL_VERSION=$(echo ${GIT_VERSION_LINE} | perl -pe "s/${LONG_VERSION_MATCH}/\$1/g")
echo "Full version string: $FULL_VERSION"
# Crunches to version number to something that XCode will validate.
SHORT_VERSION=$(perl $2/../ios/version-transform.pl $FULL_VERSION)
#LONG_VERSION=$FULL_VERSION
# Turns out we can't have anything except numbers or dots, or XCode will crash
# during validation. So for now, let's set them to the same thing. Not really sure
# why you'd differentiate.
LONG_VERSION=$SHORT_VERSION
echo "Writing versions to Info.plist. Short: $SHORT_VERSION Long: $LONG_VERSION"
if [[ "${GIT_VERSION_LINE}" =~ ^${SHORT_VERSION_MATCH}$ ]]; then
plutil -replace CFBundleShortVersionString -string $SHORT_VERSION ${PPSSPP}/Info.plist
plutil -replace CFBundleVersion -string $LONG_VERSION ${PPSSPP}/Info.plist
else
plutil -replace CFBundleShortVersionString -string "" ${PPSSPP}/Info.plist
plutil -replace CFBundleVersion -string "" ${PPSSPP}/Info.plist
fi
echo "iosbundle.sh: Updated ${PPSSPP}/Info.plist"