From 0b43b0124f65418e5e9b82e07ad03dc1168fd0e8 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. --- SConstruct | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/SConstruct b/SConstruct index c7b9d5bc865..e8726b531eb 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