Add generate dependency on IWAD file

Rather than asserting at dependency build time, this allows some (PWAD)
demos to be run without having any of the commercial IWAD files.
This commit is contained in:
Simon Howard 2024-09-01 00:52:26 -04:00
parent 4a101e2f3d
commit 10ebb82329

View file

@ -14,17 +14,18 @@ for filename in glob("expected/**/*.txt", recursive=True):
lmp_file = filename.replace("expected/", "demos/").replace(".txt", ".lmp")
cfg = read_config(lmp_file)
iwad = cfg.get("iwad")
assert exists(join("iwads", iwad)), (
"IWAD file %r not found in iwads/ directory." % iwad)
depends = [join("iwads", cfg["iwad"])]
pwad = cfg.get("pwad")
if pwad is not None:
out_file = filename.replace("expected/", "output/")
dependencies[out_file] = [os.path.join("extract", pwad)]
depends.append(os.path.join("extract", pwad))
out_file = filename.replace("expected/", "output/")
dependencies[out_file] = depends
with open(depends_file, "w") as f:
for out_file, depends in sorted(dependencies.items()):
out_file = out_file.replace("#", "\\#")
f.write("%s: %s\n" % (
out_file, " ".join(depends),
))