SCons: Include pre-release in MSVC detection
This commit is contained in:
parent
72cff2ed59
commit
1d3c4e192c
17
methods.py
17
methods.py
|
@ -807,7 +807,20 @@ def get_compiler_version(env):
|
|||
|
||||
if env.msvc and not using_clang(env):
|
||||
try:
|
||||
args = [env["VSWHERE"], "-latest", "-products", "*", "-requires", "Microsoft.Component.MSBuild", "-utf8"]
|
||||
# FIXME: `-latest` works for most cases, but there are edge-cases where this would
|
||||
# benefit from a more nuanced search.
|
||||
# https://github.com/godotengine/godot/pull/91069#issuecomment-2358956731
|
||||
# https://github.com/godotengine/godot/pull/91069#issuecomment-2380836341
|
||||
args = [
|
||||
env["VSWHERE"],
|
||||
"-latest",
|
||||
"-prerelease",
|
||||
"-products",
|
||||
"*",
|
||||
"-requires",
|
||||
"Microsoft.Component.MSBuild",
|
||||
"-utf8",
|
||||
]
|
||||
version = subprocess.check_output(args, encoding="utf-8").strip()
|
||||
for line in version.splitlines():
|
||||
split = line.split(":", 1)
|
||||
|
@ -816,6 +829,8 @@ def get_compiler_version(env):
|
|||
ret["major"] = int(sem_ver[0])
|
||||
ret["minor"] = int(sem_ver[1])
|
||||
ret["patch"] = int(sem_ver[2])
|
||||
# Could potentially add section for determining preview version, but
|
||||
# that can wait until metadata is actually used for something.
|
||||
if split[0] == "catalog_buildVersion":
|
||||
ret["metadata1"] = split[1]
|
||||
except (subprocess.CalledProcessError, OSError):
|
||||
|
|
Loading…
Reference in New Issue