mirror of
				https://github.com/godotengine/godot.git
				synced 2025-10-31 13:41:03 +00:00 
			
		
		
		
	[HTML5] Reorganize build script.
Simplify helper functions, fix env/sys_env confusion and depends for externs and pre-js.
This commit is contained in:
		
							parent
							
								
									ecf432abc7
								
							
						
					
					
						commit
						6988b21d00
					
				
					 3 changed files with 11 additions and 17 deletions
				
			
		|  | @ -26,8 +26,13 @@ if env["tools"]: | |||
|     sys_env.AddJSLibraries(["js/libs/library_godot_editor_tools.js"]) | ||||
| if env["javascript_eval"]: | ||||
|     sys_env.AddJSLibraries(["js/libs/library_godot_eval.js"]) | ||||
| 
 | ||||
| for lib in sys_env["JS_LIBS"]: | ||||
|     sys_env.Append(LINKFLAGS=["--js-library", lib]) | ||||
| for js in env["JS_PRE"]: | ||||
|     sys_env.Append(LINKFLAGS=["--pre-js", env.File(js).path]) | ||||
| for ext in env["JS_EXTERNS"]: | ||||
|     sys_env["ENV"]["EMCC_CLOSURE_ARGS"] += " --externs " + ext.path | ||||
| 
 | ||||
| build = [] | ||||
| if env["gdnative_enabled"]: | ||||
|  | @ -65,16 +70,8 @@ else: | |||
|     build = sys_env.Program(build_targets, javascript_files + ["javascript_runtime.cpp"]) | ||||
| 
 | ||||
| sys_env.Depends(build[0], sys_env["JS_LIBS"]) | ||||
| 
 | ||||
| if "JS_PRE" in env: | ||||
|     for js in env["JS_PRE"]: | ||||
|         env.Append(LINKFLAGS=["--pre-js", env.File(js).path]) | ||||
|     env.Depends(build, env["JS_PRE"]) | ||||
| 
 | ||||
| if "JS_EXTERNS" in env: | ||||
|     for ext in env["JS_EXTERNS"]: | ||||
|         env["ENV"]["EMCC_CLOSURE_ARGS"] += " --externs " + ext.path | ||||
|     env.Depends(build, env["JS_EXTERNS"]) | ||||
| sys_env.Depends(build[0], sys_env["JS_PRE"]) | ||||
| sys_env.Depends(build[0], sys_env["JS_EXTERNS"]) | ||||
| 
 | ||||
| engine = [ | ||||
|     "js/engine/preloader.js", | ||||
|  |  | |||
|  | @ -131,7 +131,10 @@ def configure(env): | |||
|         jscc = env.Builder(generator=run_closure_compiler, suffix=".cc.js", src_suffix=".js") | ||||
|         env.Append(BUILDERS={"BuildJS": jscc}) | ||||
| 
 | ||||
|     # Add helper method for adding libraries. | ||||
|     # Add helper method for adding libraries, externs, pre-js. | ||||
|     env["JS_LIBS"] = [] | ||||
|     env["JS_PRE"] = [] | ||||
|     env["JS_EXTERNS"] = [] | ||||
|     env.AddMethod(add_js_libraries, "AddJSLibraries") | ||||
|     env.AddMethod(add_js_pre, "AddJSPre") | ||||
|     env.AddMethod(add_js_externs, "AddJSExterns") | ||||
|  |  | |||
|  | @ -22,18 +22,12 @@ def create_engine_file(env, target, source, externs): | |||
| 
 | ||||
| 
 | ||||
| def add_js_libraries(env, libraries): | ||||
|     if "JS_LIBS" not in env: | ||||
|         env["JS_LIBS"] = [] | ||||
|     env.Append(JS_LIBS=env.File(libraries)) | ||||
| 
 | ||||
| 
 | ||||
| def add_js_pre(env, js_pre): | ||||
|     if "JS_PRE" not in env: | ||||
|         env["JS_PRE"] = [] | ||||
|     env.Append(JS_PRE=env.File(js_pre)) | ||||
| 
 | ||||
| 
 | ||||
| def add_js_externs(env, externs): | ||||
|     if "JS_EXTERNS" not in env: | ||||
|         env["JS_EXTERNS"] = [] | ||||
|     env.Append(JS_EXTERNS=env.File(externs)) | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Fabio Alessandrelli
						Fabio Alessandrelli