mirror of
				https://github.com/godotengine/godot.git
				synced 2025-11-04 07:31:16 +00:00 
			
		
		
		
	[Web] Add workaround for missing export in threaded builds
The offending symbol gets stripped away by wasm-dce but it's used on the JavaScript side and causes and undefined symbol which also causes the closure compiler to throw an error.
This commit is contained in:
		
							parent
							
								
									91eb688e17
								
							
						
					
					
						commit
						26f17c33a5
					
				
					 1 changed files with 5 additions and 0 deletions
				
			
		| 
						 | 
					@ -227,6 +227,11 @@ def configure(env: "SConsEnvironment"):
 | 
				
			||||||
        env.Append(LINKFLAGS=["-sDEFAULT_PTHREAD_STACK_SIZE=%sKB" % env["default_pthread_stack_size"]])
 | 
					        env.Append(LINKFLAGS=["-sDEFAULT_PTHREAD_STACK_SIZE=%sKB" % env["default_pthread_stack_size"]])
 | 
				
			||||||
        env.Append(LINKFLAGS=["-sPTHREAD_POOL_SIZE=8"])
 | 
					        env.Append(LINKFLAGS=["-sPTHREAD_POOL_SIZE=8"])
 | 
				
			||||||
        env.Append(LINKFLAGS=["-sWASM_MEM_MAX=2048MB"])
 | 
					        env.Append(LINKFLAGS=["-sWASM_MEM_MAX=2048MB"])
 | 
				
			||||||
 | 
					        if not env["dlink_enabled"]:
 | 
				
			||||||
 | 
					            # Workaround https://github.com/emscripten-core/emscripten/issues/21844#issuecomment-2116936414.
 | 
				
			||||||
 | 
					            # Not needed (and potentially dangerous) when dlink_enabled=yes, since we set EXPORT_ALL=1 in that case.
 | 
				
			||||||
 | 
					            env.Append(LINKFLAGS=["-sEXPORTED_FUNCTIONS=['__emscripten_thread_crashed','_main']"])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    elif env["proxy_to_pthread"]:
 | 
					    elif env["proxy_to_pthread"]:
 | 
				
			||||||
        print_warning('"threads=no" support requires "proxy_to_pthread=no", disabling proxy to pthread.')
 | 
					        print_warning('"threads=no" support requires "proxy_to_pthread=no", disabling proxy to pthread.')
 | 
				
			||||||
        env["proxy_to_pthread"] = False
 | 
					        env["proxy_to_pthread"] = False
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue