Update versioning script to match SourceMod changes

This commit is contained in:
xPaw 2014-06-05 14:37:37 +03:00
parent bbd6cc7dcb
commit 563e4fcdf4

View File

@ -1,5 +1,6 @@
# vim: set ts=8 sts=2 sw=2 tw=99 et ft=python: # vim: set ts=8 sts=2 sw=2 tw=99 et ft=python:
import os, sys import os, sys
import re
builder.SetBuildFolder('/') builder.SetBuildFolder('/')
@ -17,16 +18,19 @@ outputs = [
] ]
with open(os.path.join(builder.sourcePath, '.git', 'HEAD')) as fp: with open(os.path.join(builder.sourcePath, '.git', 'HEAD')) as fp:
head_contents = fp.read().strip()
if re.search('^[a-fA-F0-9]{40}$', head_contents):
git_head_path = os.path.join(builder.sourcePath, '.git', 'HEAD')
else:
git_state = fp.read().strip().split(':')[1].strip() git_state = fp.read().strip().split(':')[1].strip()
git_head_path = os.path.join(builder.sourcePath, '.git', git_state)
git_head_path = os.path.join(builder.sourcePath, '.git', git_state) if not os.path.exists(git_head_path):
if not os.path.exists(git_head_path):
git_head_path = os.path.join(builder.sourcePath, '.git', 'HEAD') git_head_path = os.path.join(builder.sourcePath, '.git', 'HEAD')
sources = [ sources = [
os.path.join(builder.sourcePath, 'product.version'), os.path.join(builder.sourcePath, 'product.version'),
# This is a hack, but we need some way to only run this script when HG changes. # This is a hack, but we need some way to only run this script when Git changes.
git_head_path, git_head_path,
# The script source is a dependency, of course... # The script source is a dependency, of course...