SCons: Improve registration of compilation_db tool, check version

There's a builtin `toolpath` option we can use for that, so no need to hack
around a custom `scons_site` path.

The script requires SCons 3.1.1 or later, so we enable it conditionally.

Follow-up to #32848.
This commit is contained in:
Rémi Verschelde 2020-05-18 13:58:27 +02:00
parent 37efaad8fb
commit 22c718ab17
2 changed files with 6 additions and 7 deletions

View File

@ -272,14 +272,13 @@ if selected_platform in platform_list:
else:
env = env_base.Clone()
# Custom tools are loaded automatically by SCons from site_scons/site_tools,
# but we want to use a different folder, so we register it manually.
from SCons.Script.Main import _load_site_scons_dir
# Compilation DB requires SCons 3.1.1+.
from SCons import __version__ as scons_raw_version
_load_site_scons_dir(".", "misc/scons")
env.Tool("compilation_db")
env.Alias("compiledb", env.CompilationDatabase("compile_commands.json"))
scons_ver = env._get_major_minor_revision(scons_raw_version)
if scons_ver >= (3, 1, 1):
env.Tool("compilation_db", toolpath=["misc/scons"])
env.Alias("compiledb", env.CompilationDatabase("compile_commands.json"))
if env["dev"]:
env["verbose"] = True