Automated update from: http://smariot.no-ip.org/translate
[QuestHelper.git] / Development / build2 / build_04_update
blobcf9ce633aaf7c16ea8a16980fcfacb905fb88996
1 #!/usr/local/bin/python3.0
3 import re
4 import os
5 import sys
6 import hashlib
8 import utility
10 if not os.path.exists("data/04"):
11   os.makedirs("data/04")
13 collatefiles = {}
14 for path, dirs, files in os.walk("data/03"):
15   collatefiles.update({file:os.path.join(path, file) for file in files})
16 print("Collatefiles isolated: %d" % len(collatefiles))
18 treg = re.compile("data/04/[0-9a-f]{2,2}/([0-9a-f]{32,32})")
19 upgradefiles = {}
20 for path, dirs, files in os.walk("data/04"):
21   match = treg.match(path)
22   if match:
23     upgradefiles[match.group(1)] = path
24 print("Upgradefiles isolated: %d" % len(upgradefiles))
26 touchfiles = sorted(set([tag for tag in collatefiles.keys()]) | set([tag for tag in upgradefiles.keys()]))
28 utility.exe_bin("rm -rf upgradetemp")
30 for tag in touchfiles:
31   assert(tag in collatefiles)
32   if not tag in upgradefiles:
33     print("Upgrading %s" % tag)
34     
35     os.makedirs("upgradetemp")
36     
37     utility.exe_bin("luajit -O2 build_04_update_core.lua %s upgradetemp" % collatefiles[tag])
38     
39     try:
40       os.makedirs("data/04/%s" % (tag[0:2]))
41     except OSError:
42       pass
43     
44     os.rename("upgradetemp", "data/04/%s/%s" % (tag[0:2], tag))