blob: 6fa55a30f913392ea2bc037c00fe0a5cd413e665 [file] [log] [blame]
import argparse
import subprocess
import os
import re
if __name__== '__main__':
parser = argparse.ArgumentParser()
parser.add_argument('input')
parser.add_argument('output')
args = parser.parse_known_args()
print (args[0].output)
cpp = args[1]
ret = subprocess.run(cpp + [args[0].input], stdout=subprocess.PIPE)
stdout = ret.stdout.decode('utf8')
with open(args[0].output, 'w') as out:
write = True
for l in stdout.split('\n'):
l = l.strip('\r')
if l.startswith('CUT_OUT_BEGIN'):
write = False
if write and l:
stripped = re.sub('^\s+', '', l)
stripped = re.sub('\s*,\s*', ',', stripped)
if not stripped.isspace() and stripped:
out.write('%s\n' % stripped)
if l.startswith('CUT_OUT_END'):
write = True