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.
(cherry picked from commit 22c718ab17
)
This commit is contained in:
parent
9aa4648579
commit
dcb68e0106
11
SConstruct
11
SConstruct
|
@ -258,13 +258,12 @@ 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']:
|
||||||
|
|
Loading…
Reference in New Issue