Add perforce support to showrev.sh

In order to generate meaningful output from SDL_GetRevision()
diff --git a/build-scripts/showrev.sh b/build-scripts/showrev.sh
index 517992d..788d7ef 100755
--- a/build-scripts/showrev.sh
+++ b/build-scripts/showrev.sh
@@ -2,4 +2,24 @@
 #
 # Print the current source revision, if available
 
-hg parents --template 'hg-{rev}:{node|short}' || (echo "hg-0:baadf00d"; exit 1)
+SDL_ROOT=$(dirname $0)/..
+cd $SDL_ROOT
+
+if [ -x "$(command -v hg)" ]; then
+    rev="$(hg parents --template 'hg-{rev}:{node|short}' 2>/dev/null)"
+    if [ "$?" == 0 ]; then
+        echo $rev
+        exit 0
+    fi
+fi
+
+if [ -x "$(command -v p4)" ]; then
+    rev="$(p4 changes -m1 ./...\#have 2>/dev/null| awk '{print $2}')"
+    if [ "$?" == 0 ]; then
+        echo $rev
+        exit 0
+    fi
+fi
+
+echo "hg-0:baadf00d"
+exit 1