From 0320d20a477e2edbf15f3d961add7c9cd5be7f94 Mon Sep 17 00:00:00 2001 From: Magnus Auvinen Date: Wed, 22 Aug 2007 21:13:33 +0000 Subject: fixed network hash versioning --- scripts/cmd5.py | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 scripts/cmd5.py (limited to 'scripts/cmd5.py') diff --git a/scripts/cmd5.py b/scripts/cmd5.py new file mode 100644 index 00000000..2e20ff5b --- /dev/null +++ b/scripts/cmd5.py @@ -0,0 +1,32 @@ +import md5, sys, re +m = md5.new() + +alphanum = "0123456789abcdefghijklmnopqrstuvwzyxABCDEFGHIJKLMNOPQRSTUVWXYZ_" + +def cstrip(lines): + d = "" + for l in lines: + l = re.sub("#.*", "", l) + l = re.sub("//.*", "", l) + d += l + " " + d = re.sub("\/\*.*?\*/", "", d) # remove /* */ comments + d = d.replace("\t", " ") # tab to space + d = re.sub(" *", " ", d) # remove double spaces + d = re.sub("", "", d) # remove /* */ comments + + d = d.strip() + + # this eats up cases like 'n {' + i = 1 + while i < len(d)-2: + if d[i] == ' ': + if not (d[i-1] in alphanum and d[i+1] in alphanum): + d = d[:i] + d[i+1:] + i += 1 + return d + +f = "" +for filename in sys.argv[1:]: + f += cstrip([l.strip() for l in file(filename)]) + +print '#define TEEWARS_NETVERSION_HASH "%s"' % md5.new(f).hexdigest().lower()[16:] -- cgit 1.4.1