build: Place cache file in output directory

This improves support for the --out option.  Previously, the cache file
was placed in the source directory under "build/...".  Now, it is placed
in the output directory, which is "build" by default.  So, if you don't
use the --out option nothing changes.  However, if you use the --out
option, then the cache file is placed under the specified directory.
This commit is contained in:
Sebastian Huber
2020-11-05 16:58:36 +01:00
parent da9cc0b50c
commit 6cf0c559dc

View File

@@ -1135,8 +1135,8 @@ def load_from_yaml(load, ctx, data_by_uid, base, path):
def load_items_in_directory(ctx, ctors, path):
f = ctx.path.make_node(
"build/c4che/" + re.sub(r"[^\w]", "_", path) + ".pickle"
f = ctx.bldnode.make_node(
"c4che/" + re.sub(r"[^\w]", "_", path) + ".pickle"
)
f.parent.mkdir()
cache_file = f.abspath()