From b0e472c8e456ce721745a3aa435921012aaca0d8 Mon Sep 17 00:00:00 2001 From: Adam Scott Date: Sat, 26 Apr 2025 13:48:04 -0400 Subject: [PATCH] [Web] Include emscripten headers by default --- platform/web/detect.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/platform/web/detect.py b/platform/web/detect.py index c6f29c4274b..33317fe8d00 100644 --- a/platform/web/detect.py +++ b/platform/web/detect.py @@ -1,5 +1,6 @@ import os import sys +from pathlib import Path from typing import TYPE_CHECKING from emscripten_helpers import ( @@ -112,6 +113,14 @@ def configure(env: "SConsEnvironment"): print_error("Initial memory must be a valid integer") sys.exit(255) + # Add Emscripten to the included paths (for compile_commands.json completion) + emcc_path = Path(str(WhereIs("emcc"))) + while emcc_path.is_symlink(): + # For some reason, mypy trips on `Path.readlink` not being defined, somehow. + emcc_path = emcc_path.readlink() # type: ignore[attr-defined] + emscripten_include_path = emcc_path.parent.joinpath("cache", "sysroot", "include") + env.Append(CPPPATH=[emscripten_include_path]) + ## Build type if env.debug_features: