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