From fa57282a1e76cf295b6ca20bbf98e2798660bc27 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Verschelde?= Date: Wed, 8 Oct 2025 15:47:07 +0200 Subject: [PATCH] SCons: Don't activate `fast_unsafe` automatically on `dev_build` We experienced first hand why it's called unsafe, and so we should leave it as an explicit choice for contributors, informing themselves of the caveats. See #111408. --- SConstruct | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/SConstruct b/SConstruct index c2c6966e263..8bdc5f96a11 100644 --- a/SConstruct +++ b/SConstruct @@ -210,7 +210,7 @@ opts.Add( ) ) opts.Add(BoolVariable("tests", "Build the unit tests", False)) -opts.Add(BoolVariable("fast_unsafe", "Enable unsafe options for faster rebuilds", False)) +opts.Add(BoolVariable("fast_unsafe", "Enable unsafe options for faster incremental builds", False)) opts.Add(BoolVariable("ninja", "Use the ninja backend for faster rebuilds", False)) opts.Add(BoolVariable("ninja_auto_run", "Run ninja automatically after generating the ninja file", True)) opts.Add("ninja_file", "Path to the generated ninja file", "build.ninja") @@ -520,10 +520,10 @@ env.Decider("MD5-timestamp") # SCons speed optimization controlled by the `fast_unsafe` option, which provide # more than 10 s speed up for incremental rebuilds. -# Unsafe as they reduce the certainty of rebuilding all changed files, so it's -# enabled by default for `debug` builds, and can be overridden from command line. +# Unsafe as they reduce the certainty of rebuilding all changed files. +# If you use it and run into corrupted incremental builds, try to turn it off. # Ref: https://github.com/SCons/scons/wiki/GoFastButton -if methods.get_cmdline_bool("fast_unsafe", env.dev_build): +if env["fast_unsafe"]: env.SetOption("implicit_cache", 1) env.SetOption("max_drift", 60)