xref: /nrf52832-nimble/rt-thread/tools/genconf.py (revision 104654410c56c573564690304ae786df310c91fc)
1import os
2
3def genconfig() :
4    from SCons.Script import SCons
5
6    PreProcessor = SCons.cpp.PreProcessor()
7
8    try:
9        f = open('rtconfig.h', 'r')
10        contents = f.read()
11        f.close()
12    except :
13        print("Open rtconfig.h file failed.")
14
15    PreProcessor.process_contents(contents)
16    options = PreProcessor.cpp_namespace
17
18    try:
19        f = open('.config', 'w')
20        for (opt, value) in options.items():
21            if type(value) == type(1):
22                f.write("CONFIG_%s=%d\n" % (opt, value))
23
24            if type(value) == type('') and value == '':
25                f.write("CONFIG_%s=y\n" % opt)
26            elif type(value) == type('str'):
27                f.write("CONFIG_%s=%s\n" % (opt, value))
28
29        print("Generate .config done!")
30        f.close()
31    except:
32        print("Generate .config file failed.")
33