From 87a7c1df934588c8aa3d9ab7e960d33225ef5724 Mon Sep 17 00:00:00 2001 From: Andreia Gaita Date: Thu, 19 Jun 2025 14:06:21 +0200 Subject: [PATCH] Add module defines to the per-platform generated props file so VS knows which ones are enabled. --- methods.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/methods.py b/methods.py index 2e71d7b8b9..0071d3f683 100644 --- a/methods.py +++ b/methods.py @@ -1293,6 +1293,11 @@ def generate_vs_project(env, original_args, project_name="godot"): ) output = os.path.join("bin", f"godot{env['PROGSUFFIX']}") + # The modules_enabled.gen.h header containing the defines is only generated on build, and only for the most recently built + # platform, which means VS can't properly render code that's inside module-specific ifdefs. This adds those defines to the + # platform-specific VS props file, so that VS knows which defines are enabled for the selected platform. + env.Append(VSHINT_DEFINES=[f"MODULE_{module.upper()}_ENABLED" for module in env.module_list]) + with open("misc/msvs/props.template", "r", encoding="utf-8") as file: props_template = file.read()