Commit ded76aa
committed
feat: fast-path fingerprint coherence + diagnostic + cxx_scan restat
P1: .build_cache now stores fingerprint hex (4th line). try_fast_build
validates that the cached fingerprint matches the outputDir basename;
if inconsistent (e.g. switched mcpp installation), the cache is
invalidated immediately instead of silently falling through to a
different fingerprint directory.
P1.5: run_build_plan prints a warning when the outputDir fingerprint
differs from the previous .build_cache entry, so users immediately
see why a full rebuild is happening instead of getting a silent 26s.
P2: cxx_scan rule now writes .ddi to $out.tmp first, then compares
with existing $out via cmp -s. If content is identical, old $out is
kept (preserving mtime). Combined with restat = 1, this prevents
downstream dyndep/compile edges from being marked dirty when a source
file's mtime changed but its module dependencies didn't.1 parent 9bd1a6d commit ded76aa
2 files changed
Lines changed: 58 additions & 11 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
243 | 243 | | |
244 | 244 | | |
245 | 245 | | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
246 | 250 | | |
247 | 251 | | |
248 | 252 | | |
249 | 253 | | |
250 | 254 | | |
251 | 255 | | |
252 | 256 | | |
253 | | - | |
254 | | - | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
255 | 264 | | |
256 | | - | |
257 | | - | |
258 | | - | |
| 265 | + | |
259 | 266 | | |
260 | | - | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
261 | 273 | | |
262 | | - | |
| 274 | + | |
| 275 | + | |
263 | 276 | | |
264 | 277 | | |
265 | 278 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2106 | 2106 | | |
2107 | 2107 | | |
2108 | 2108 | | |
2109 | | - | |
| 2109 | + | |
| 2110 | + | |
2110 | 2111 | | |
2111 | 2112 | | |
2112 | 2113 | | |
| |||
2115 | 2116 | | |
2116 | 2117 | | |
2117 | 2118 | | |
| 2119 | + | |
2118 | 2120 | | |
2119 | 2121 | | |
2120 | 2122 | | |
| |||
2173 | 2175 | | |
2174 | 2176 | | |
2175 | 2177 | | |
| 2178 | + | |
| 2179 | + | |
| 2180 | + | |
| 2181 | + | |
| 2182 | + | |
| 2183 | + | |
| 2184 | + | |
| 2185 | + | |
| 2186 | + | |
| 2187 | + | |
| 2188 | + | |
| 2189 | + | |
| 2190 | + | |
| 2191 | + | |
| 2192 | + | |
| 2193 | + | |
2176 | 2194 | | |
2177 | 2195 | | |
| 2196 | + | |
2178 | 2197 | | |
2179 | | - | |
| 2198 | + | |
2180 | 2199 | | |
2181 | 2200 | | |
2182 | 2201 | | |
| |||
2204 | 2223 | | |
2205 | 2224 | | |
2206 | 2225 | | |
2207 | | - | |
| 2226 | + | |
2208 | 2227 | | |
2209 | 2228 | | |
2210 | | - | |
| 2229 | + | |
| 2230 | + | |
2211 | 2231 | | |
2212 | 2232 | | |
2213 | 2233 | | |
2214 | 2234 | | |
2215 | 2235 | | |
| 2236 | + | |
| 2237 | + | |
| 2238 | + | |
| 2239 | + | |
| 2240 | + | |
| 2241 | + | |
| 2242 | + | |
| 2243 | + | |
| 2244 | + | |
| 2245 | + | |
| 2246 | + | |
| 2247 | + | |
| 2248 | + | |
| 2249 | + | |
2216 | 2250 | | |
2217 | 2251 | | |
2218 | 2252 | | |
| |||
0 commit comments