summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRĂ©mi Verschelde <rverschelde@gmail.com>2020-10-06 09:54:12 +0200
committerGitHub <noreply@github.com>2020-10-06 09:54:12 +0200
commit3249305892f006ff99632431fbdf1fbb3327181a (patch)
treeabf3de99e52dc371680db17b116a0b4f1ab85078
parent3a54fd94b0cca19710674a22ee2c6504045c4923 (diff)
parent182d6d6f4273f79a7b379f69d33249df5b74e670 (diff)
Merge pull request #42591 from akien-mga/windows-subsystem-default
SCons: Add 'default' parameter for windows_subsystem, restores original behavior
-rw-r--r--platform/windows/detect.py15
1 files changed, 14 insertions, 1 deletions
diff --git a/platform/windows/detect.py b/platform/windows/detect.py
index 6b503c1561..63f31307e7 100644
--- a/platform/windows/detect.py
+++ b/platform/windows/detect.py
@@ -65,7 +65,7 @@ def get_opts():
# Vista support dropped after EOL due to GH-10243
("target_win_version", "Targeted Windows version, >= 0x0601 (Windows 7)", "0x0601"),
EnumVariable("debug_symbols", "Add debugging symbols to release builds", "yes", ("yes", "no", "full")),
- EnumVariable("windows_subsystem", "Windows subsystem", "gui", ("console", "gui")),
+ EnumVariable("windows_subsystem", "Windows subsystem", "default", ("default", "console", "gui")),
BoolVariable("separate_debug_symbols", "Create a separate file containing debugging symbols", False),
("msvc_version", "MSVC version to use. Ignored if VCINSTALLDIR is set in shell env.", None),
BoolVariable("use_mingw", "Use the Mingw compiler, even if MSVC is installed. Only used on Windows.", False),
@@ -178,8 +178,15 @@ def configure_msvc(env, manual_msvc_config):
"""Configure env to work with MSVC"""
# Build type
+
if env["tests"]:
env["windows_subsystem"] = "console"
+ elif env["windows_subsystem"] == "default":
+ # Default means we use console for debug, gui for release.
+ if "debug" in env["target"]:
+ env["windows_subsystem"] = "console"
+ else:
+ env["windows_subsystem"] = "gui"
if env["target"] == "release":
if env["optimize"] == "speed": # optimize for speed (default)
@@ -311,6 +318,12 @@ def configure_mingw(env):
if env["tests"]:
env["windows_subsystem"] = "console"
+ elif env["windows_subsystem"] == "default":
+ # Default means we use console for debug, gui for release.
+ if "debug" in env["target"]:
+ env["windows_subsystem"] = "console"
+ else:
+ env["windows_subsystem"] = "gui"
if env["target"] == "release":
env.Append(CCFLAGS=["-msse2"])