summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarco Rebhan <me@dblsaiko.net>2025-02-17 05:59:58 +0100
committerDylan Baker <dylan@pnwbakers.com>2025-02-17 15:01:46 -0800
commit1b54239a88261cbb679a342162d72632cd6b8093 (patch)
treed8b47b487ed06fd95d7b728ed2c34f9650a046e6
parent5442f04f47f01a7b2fb768ff9500e21810a23f35 (diff)
downloadmeson-1b54239a88261cbb679a342162d72632cd6b8093.tar.gz
Add restat = 1 to Swift compile rule
The swift compiler does not update the modification time of output object files when the code has not changed. Without this, Swift targets may continuously be rebuilt.
-rw-r--r--mesonbuild/backend/ninjabackend.py2
1 files changed, 1 insertions, 1 deletions
diff --git a/mesonbuild/backend/ninjabackend.py b/mesonbuild/backend/ninjabackend.py
index 57d73ed18..ce82d7845 100644
--- a/mesonbuild/backend/ninjabackend.py
+++ b/mesonbuild/backend/ninjabackend.py
@@ -2449,7 +2449,7 @@ class NinjaBackend(backends.Backend):
command = invoc + ['$ARGS', '$in']
description = 'Compiling Swift source $in'
- self.add_rule(NinjaRule(rule, command, [], description))
+ self.add_rule(NinjaRule(rule, command, [], description, extra='restat = 1'))
def use_dyndeps_for_fortran(self) -> bool:
'''Use the new Ninja feature for scanning dependencies during build,