You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-08 12:40:44 +00:00
Add THREADS_ENABLED macro in order to compile Godot to run on the main thread
This commit is contained in:
@@ -8,6 +8,7 @@ from emscripten_helpers import (
|
||||
add_js_pre,
|
||||
add_js_externs,
|
||||
create_template_zip,
|
||||
get_template_zip_path,
|
||||
)
|
||||
from methods import get_compiler_version
|
||||
from SCons.Util import WhereIs
|
||||
@@ -161,6 +162,9 @@ def configure(env: "Environment"):
|
||||
# Add method that joins/compiles our Engine files.
|
||||
env.AddMethod(create_engine_file, "CreateEngineFile")
|
||||
|
||||
# Add method for getting the final zip path
|
||||
env.AddMethod(get_template_zip_path, "GetTemplateZipPath")
|
||||
|
||||
# Add method for creating the final zip file
|
||||
env.AddMethod(create_template_zip, "CreateTemplateZip")
|
||||
|
||||
@@ -209,13 +213,17 @@ def configure(env: "Environment"):
|
||||
stack_size_opt = "STACK_SIZE" if cc_semver >= (3, 1, 25) else "TOTAL_STACK"
|
||||
env.Append(LINKFLAGS=["-s", "%s=%sKB" % (stack_size_opt, env["stack_size"])])
|
||||
|
||||
# Thread support (via SharedArrayBuffer).
|
||||
env.Append(CPPDEFINES=["PTHREAD_NO_RENAME"])
|
||||
env.Append(CCFLAGS=["-s", "USE_PTHREADS=1"])
|
||||
env.Append(LINKFLAGS=["-s", "USE_PTHREADS=1"])
|
||||
env.Append(LINKFLAGS=["-s", "DEFAULT_PTHREAD_STACK_SIZE=%sKB" % env["default_pthread_stack_size"]])
|
||||
env.Append(LINKFLAGS=["-s", "PTHREAD_POOL_SIZE=8"])
|
||||
env.Append(LINKFLAGS=["-s", "WASM_MEM_MAX=2048MB"])
|
||||
if env["threads"]:
|
||||
# Thread support (via SharedArrayBuffer).
|
||||
env.Append(CPPDEFINES=["PTHREAD_NO_RENAME"])
|
||||
env.Append(CCFLAGS=["-s", "USE_PTHREADS=1"])
|
||||
env.Append(LINKFLAGS=["-s", "USE_PTHREADS=1"])
|
||||
env.Append(LINKFLAGS=["-s", "DEFAULT_PTHREAD_STACK_SIZE=%sKB" % env["default_pthread_stack_size"]])
|
||||
env.Append(LINKFLAGS=["-s", "PTHREAD_POOL_SIZE=8"])
|
||||
env.Append(LINKFLAGS=["-s", "WASM_MEM_MAX=2048MB"])
|
||||
elif env["proxy_to_pthread"]:
|
||||
print('"threads=no" support requires "proxy_to_pthread=no", disabling proxy to pthread.')
|
||||
env["proxy_to_pthread"] = False
|
||||
|
||||
if env["lto"] != "none":
|
||||
# Workaround https://github.com/emscripten-core/emscripten/issues/19781.
|
||||
@@ -224,7 +232,7 @@ def configure(env: "Environment"):
|
||||
|
||||
if env["dlink_enabled"]:
|
||||
if env["proxy_to_pthread"]:
|
||||
print("GDExtension support requires proxy_to_pthread=no, disabling")
|
||||
print("GDExtension support requires proxy_to_pthread=no, disabling proxy to pthread.")
|
||||
env["proxy_to_pthread"] = False
|
||||
|
||||
if cc_semver < (3, 1, 14):
|
||||
|
||||
Reference in New Issue
Block a user