summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/buildtool/main/build_utils.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/buildtool/main/build_utils.cpp b/src/buildtool/main/build_utils.cpp
index 5b8d142d..b29ff0c5 100644
--- a/src/buildtool/main/build_utils.cpp
+++ b/src/buildtool/main/build_utils.cpp
@@ -83,8 +83,15 @@ auto CreateTargetCacheWriterMap(
TargetCacheKey tc_key{key};
// check if entry actually needs storing
if (not cache_targets.contains(tc_key)) {
- // entry already in target-cache, so nothing to be done
- (*setter)(nullptr);
+ if (tc.Read(tc_key)) {
+ // entry already in target-cache, so nothing to be done
+ (*setter)(nullptr);
+ return;
+ }
+ (*logger)(fmt::format("Export target {} not analysed locally; "
+ "not caching anything depending on it",
+ key.ToString()),
+ true);
return;
}
auto const& target = cache_targets.at(tc_key);