diff --git a/fml/cleanup_source.py b/fml/cleanup_source.py new file mode 100644 index 000000000..e4e6644f7 --- /dev/null +++ b/fml/cleanup_source.py @@ -0,0 +1,42 @@ +import sys +import os, os.path, shutil +import fnmatch +import re + +def main(): + sys.stdout.flush() + for x in range(1, len(sys.argv): + cleanup_source(sys.argv[x]) + +count = 0 +def cleanup_source(path): + print 'Cleaning %s' % path + path = os.path.normpath(path) + regex_cases = re.compile(r'\r?\n(\r?\n[ \t]+case)', re.MULTILINE) + + def updatefile(src_file): + global count + tmp_file = src_file + '.tmp' + count = 0 + with open(src_file, 'r') as fh: + buf = fh.read() + + def fix_cases(match): + global count + count += 1 + return match.group(1) + + buf = regex_cases.sub(fix_cases, buf) + if count > 0: + with open(tmp_file, 'w') as fh: + fh.write(buf) + shutil.move(tmp_file, src_file) + + for path, _, filelist in os.walk(path, followlinks=True): + sub_dir = os.path.relpath(path, path) + for cur_file in fnmatch.filter(filelist, '*.java'): + src_file = os.path.normpath(os.path.join(path, cur_file)) + updatefile(src_file) + +if __name__ == '__main__': + main() diff --git a/fml/setup.bat b/fml/setup.bat index e3ec4cdc9..1f8c3b498 100644 --- a/fml/setup.bat +++ b/fml/setup.bat @@ -26,6 +26,7 @@ pushd .. >nul xcopy /Y /E /Q src\* src-base xcopy /Y /E /Q src\* src-work popd >nul +..\runtime\bin\python\python_mcp cleanup_source.py ..\src-base ..\src-work ..\runtime\bin\python\python_mcp applypatches.py patches ..\src-work .. echo =================================== Setup Finished =================================