From 18c543d31258eb500f4c109706a78a9f02ac26bc Mon Sep 17 00:00:00 2001 From: Andreia Gaita Date: Tue, 6 Feb 2024 18:49:50 +0100 Subject: [PATCH] Use an absolute path for SConsignFile so all Sconscript invocations share the same database SConscript("some SCsub path") calls create a new context where a relative path to the .sconsign file is interpreted as being next to the currently executing SCsub, and not the one at the root. This breaks incremental build detection because scons can't find the build information of dependent files outside of the SCsub directory and just rebuilds everything every time. (cherry picked from commit 0b43b0124f65418e5e9b82e07ad03dc1168fd0e8) --- SConstruct | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/SConstruct b/SConstruct index 534d5bd95d2..0afdb07b356 100644 --- a/SConstruct +++ b/SConstruct @@ -152,7 +152,7 @@ env_base["x86_libtheora_opt_gcc"] = False env_base["x86_libtheora_opt_vc"] = False # avoid issues when building with different versions of python out of the same directory -env_base.SConsignFile(".sconsign{0}.dblite".format(pickle.HIGHEST_PROTOCOL)) +env_base.SConsignFile(File("#.sconsign{0}.dblite".format(pickle.HIGHEST_PROTOCOL)).abspath) # Build options