22 lines
864 B
Python
22 lines
864 B
Python
def config_doit(sysentry, files, params):
|
|
script = files["script"].single(Types.SCRIPT)
|
|
outdir = sysentry.bin_dir("arch", "kernel", "compiler")
|
|
indir = sysentry.sys.source_dir
|
|
sysentry.command("%s --genfiles_dir=%s --source_dir=%s" % (script, outdir, indir))
|
|
gen_headers = ["base/basic_types.h"]
|
|
return [(Types.HEADER, sysentry.file(h, "arch", "kernel", "compiler"))
|
|
for h in gen_headers]
|
|
|
|
customrule(
|
|
name = "config_headers",
|
|
dependencies =
|
|
{"script": [sourcerule(Types.SCRIPT, "../script/config.py")],
|
|
"sources": sourcerules(Types.ANY, lglob("config/*.c"))},
|
|
doit_fn = config_doit)
|
|
|
|
librule(
|
|
sources = ["common.c", "cc.cc", "ccmem.cc"],
|
|
headers = ["cc.h", "ccmem.h", "common.h", "compiler.h",
|
|
"compiler_impl.h", "test.h", "fortran.h",
|
|
"debug.h", "scale.h", ":config_headers"])
|