MCPcopy Create free account
hub / github.com/FastLED/FastLED / _load_emcc_module

Function _load_emcc_module

ci/wasm_tools.py:250–275  ·  view source on GitHub ↗

Lazily load emcc.py as a Python module for in-process invocation.

()

Source from the content-addressed store, hash-verified

248
249
250def _load_emcc_module():
251 """Lazily load emcc.py as a Python module for in-process invocation."""
252 global _emcc_module
253 if _emcc_module is not None:
254 return _emcc_module
255
256 setup_emscripten_env()
257 if _emscripten_dir is None:
258 return None
259
260 emcc_py = _emscripten_dir / "emcc.py"
261 if not emcc_py.exists():
262 return None
263
264 # Add emscripten dir to sys.path so emcc.py can import its 'tools' package
265 emscripten_str = str(_emscripten_dir)
266 if emscripten_str not in sys.path:
267 sys.path.insert(0, emscripten_str)
268
269 spec = importlib.util.spec_from_file_location("emcc", str(emcc_py))
270 if spec is None or spec.loader is None:
271 return None
272 mod = importlib.util.module_from_spec(spec)
273 spec.loader.exec_module(mod)
274 _emcc_module = mod
275 return _emcc_module
276
277
278def run_emcc(args: list[str], cwd: Optional[str] = None) -> int:

Callers 1

run_emccFunction · 0.85

Calls 2

setup_emscripten_envFunction · 0.85
insertMethod · 0.45

Tested by

no test coverage detected