import re
import subprocess

from parse import remove_comments, remove_ifdefs

with open('../../slsSupportLib/include/sls/sls_detector_defs.h') as f:
    data = f.read()

data = remove_comments(data)
data = data.splitlines()
# data = remove_ifdefs(data)


ignore = ['#define MYROOT', '#define __cplusplus']

defines = {}
for i, line in enumerate(data):
    if line.startswith('#define') and line not in ignore:
        _, name, value = line.split(maxsplit = 2)
        print(f'{name}={value}')
        defines[name]=value


warning = '#WARINING This file is auto generated any edits might be overwritten without warning\n\n'
with open('../slsdet/defines.py', 'w') as f:
    f.write(warning)
    for key, value in defines.items():
        f.write(f'{key}={value}\n')