SCons: Fix Ninja compilation with MSVC

This commit is contained in:
Thaddeus Crews 2024-04-04 09:49:56 -05:00
parent 7a42afbba0
commit 7918d50297
No known key found for this signature in database
GPG Key ID: 62181B86FE9E5D84
3 changed files with 10 additions and 9 deletions

1
.gitignore vendored
View File

@ -38,6 +38,7 @@ platform/windows/godot_res.res
# Ninja build files # Ninja build files
build.ninja build.ninja
.ninja .ninja
run_ninja_env.bat
# Generated by Godot binary # Generated by Godot binary
.import/ .import/

View File

@ -21,9 +21,9 @@ if is_builtin or not has_module:
# to make a "light" build with only the necessary mbedtls files. # to make a "light" build with only the necessary mbedtls files.
if not has_module: if not has_module:
# Minimal mbedTLS config file # Minimal mbedTLS config file
env_crypto.Append( config_path = "thirdparty/mbedtls/include/godot_core_mbedtls_config.h"
CPPDEFINES=[("MBEDTLS_CONFIG_FILE", '\\"thirdparty/mbedtls/include/godot_core_mbedtls_config.h\\"')] config_path = f"<{config_path}>" if env_crypto["ninja"] and env_crypto.msvc else f'\\"{config_path}\\"'
) env_crypto.Append(CPPDEFINES=[("MBEDTLS_CONFIG_FILE", config_path)])
# Build minimal mbedTLS library (MD5/SHA/Base64/AES). # Build minimal mbedTLS library (MD5/SHA/Base64/AES).
env_thirdparty = env_crypto.Clone() env_thirdparty = env_crypto.Clone()
env_thirdparty.disable_warnings() env_thirdparty.disable_warnings()
@ -46,9 +46,9 @@ if not has_module:
env.core_sources += thirdparty_obj env.core_sources += thirdparty_obj
elif is_builtin: elif is_builtin:
# Module mbedTLS config file # Module mbedTLS config file
env_crypto.Append( config_path = "thirdparty/mbedtls/include/godot_module_mbedtls_config.h"
CPPDEFINES=[("MBEDTLS_CONFIG_FILE", '\\"thirdparty/mbedtls/include/godot_module_mbedtls_config.h\\"')] config_path = f"<{config_path}>" if env_crypto["ninja"] and env_crypto.msvc else f'\\"{config_path}\\"'
) env_crypto.Append(CPPDEFINES=[("MBEDTLS_CONFIG_FILE", config_path)])
# Needed to force rebuilding the core files when the configuration file is updated. # Needed to force rebuilding the core files when the configuration file is updated.
thirdparty_obj = ["#thirdparty/mbedtls/include/godot_module_mbedtls_config.h"] thirdparty_obj = ["#thirdparty/mbedtls/include/godot_module_mbedtls_config.h"]

View File

@ -100,9 +100,9 @@ if env["builtin_mbedtls"]:
thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources] thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
env_mbed_tls.Prepend(CPPPATH=["#thirdparty/mbedtls/include/"]) env_mbed_tls.Prepend(CPPPATH=["#thirdparty/mbedtls/include/"])
env_mbed_tls.Append( config_path = "thirdparty/mbedtls/include/godot_module_mbedtls_config.h"
CPPDEFINES=[("MBEDTLS_CONFIG_FILE", '\\"thirdparty/mbedtls/include/godot_module_mbedtls_config.h\\"')] config_path = f"<{config_path}>" if env_mbed_tls["ninja"] and env_mbed_tls.msvc else f'\\"{config_path}\\"'
) env_mbed_tls.Append(CPPDEFINES=[("MBEDTLS_CONFIG_FILE", config_path)])
env_thirdparty = env_mbed_tls.Clone() env_thirdparty = env_mbed_tls.Clone()
env_thirdparty.disable_warnings() env_thirdparty.disable_warnings()