resgen.swift/scripts/version.sh
2021-12-10 09:47:55 +01:00

34 lines
860 B
Bash
Executable File

#!/bin/bash
if [[ "$BUILD_DIR" == *"IBDesignables"* ]] || [[ "$BUILD_DIR" == *"Previews"* ]] ; then
echo "do nothing when building for IBDesignables/SwiftUI Previews builds";
exit 0
fi
set -e
if [[ -z "$MARKETING_VERSION" ]] ; then
VERS="$MARKETING_VERSION"
else
VERS=$(/usr/libexec/PlistBuddy "${INFOPLIST_FILE}" -c "print CFBundleShortVersionString")
fi
REV=$(git rev-parse --short HEAD)
if [ "$?" -eq "0" ] && [ "$CONFIGURATION" == "Debug" ] ; then
REV=$VERS"-"$REV;
if ! git diff-index --quiet HEAD -- ; then
REV="$REV-mod"
fi
else
REV=$VERS;
fi
TMPFILE=$(mktemp /tmp/version.h.XXXXXXXXXX)
echo "#define AppVersionString @\"$REV\"" > $TMPFILE
if [[ ! -e ${PROJECT_DIR}/version.h ]] || [[ ! -z $(diff ${PROJECT_DIR}/version.h $TMPFILE) ]] ; then
mv $TMPFILE ${PROJECT_DIR}/version.h
else
rm $TMPFILE
fi