Przeglądaj źródła

SCons: Fix parsing PATH when constructing base environment

We constructed the SCons environment without taking any (shell) environment
variables into account, and then appended a few, but too late. This would
cause variables like `env[CXX]` not to be properly expanded to respect a
non-standard `PATH`.

With this fix, setting:
```
PATH=$GODOT_SDK/bin:$PATH
```
will now properly use `$GODOT_SDK/bin/gcc` if available over `/usr/bin/gcc`.

(cherry picked from commit 5d217a94414117438d92b094956baead8ec942fb)
Rémi Verschelde 4 lat temu
rodzic
commit
6b48fce2b5
1 zmienionych plików z 8 dodań i 5 usunięć
  1. 8 5
      SConstruct

+ 8 - 5
SConstruct

@@ -61,11 +61,14 @@ elif platform_arg == "javascript":
     # Use generic POSIX build toolchain for Emscripten.
     custom_tools = ["cc", "c++", "ar", "link", "textfile", "zip"]
 
-env_base = Environment(tools=custom_tools)
-if "TERM" in os.environ:
-    env_base["ENV"]["TERM"] = os.environ["TERM"]
-env_base.AppendENVPath("PATH", os.getenv("PATH"))
-env_base.AppendENVPath("PKG_CONFIG_PATH", os.getenv("PKG_CONFIG_PATH"))
+env_base = Environment(
+    ENV={
+        "PATH": os.getenv("PATH"),
+        "PKG_CONFIG_PATH": os.getenv("PKG_CONFIG_PATH"),
+        "TERM": os.getenv("TERM"),
+    },
+    tools=custom_tools,
+)
 env_base.disabled_modules = []
 env_base.use_ptrcall = False
 env_base.module_version_string = ""