| 
									
										
										
										
											2016-10-17 08:50:25 +02:00
										 |  |  | #!/usr/bin/env python | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-02-09 22:10:30 -03:00
										 |  |  | Import('env') | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | javascript_files = [ | 
					
						
							| 
									
										
										
										
											2018-03-21 15:51:44 +01:00
										 |  |  |     'audio_driver_javascript.cpp', | 
					
						
							|  |  |  |     'http_client_javascript.cpp', | 
					
						
							|  |  |  |     'javascript_eval.cpp', | 
					
						
							|  |  |  |     'javascript_main.cpp', | 
					
						
							|  |  |  |     'os_javascript.cpp', | 
					
						
							| 
									
										
										
										
											2014-02-09 22:10:30 -03:00
										 |  |  | ] | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-03-21 15:51:44 +01:00
										 |  |  | build = env.add_program(['#bin/godot${PROGSUFFIX}.js', '#bin/godot${PROGSUFFIX}.wasm'], javascript_files); | 
					
						
							| 
									
										
										
										
											2018-01-13 18:47:28 +01:00
										 |  |  | js, wasm = build | 
					
						
							| 
									
										
										
										
											2017-02-20 13:36:54 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-03-21 15:51:44 +01:00
										 |  |  | js_libraries = [ | 
					
						
							|  |  |  |     'http_request.js', | 
					
						
							|  |  |  | ] | 
					
						
							| 
									
										
										
										
											2017-10-26 03:39:41 +02:00
										 |  |  | for lib in js_libraries: | 
					
						
							| 
									
										
										
										
											2018-03-21 15:51:44 +01:00
										 |  |  |     env.Append(LINKFLAGS=['--js-library', env.File(lib).path]) | 
					
						
							| 
									
										
										
										
											2017-11-18 05:50:26 +01:00
										 |  |  | env.Depends(build, js_libraries) | 
					
						
							| 
									
										
										
										
											2017-10-26 03:39:41 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-08-09 02:58:39 +02:00
										 |  |  | js_modules = [ | 
					
						
							|  |  |  |     'id_handler.js', | 
					
						
							|  |  |  | ] | 
					
						
							|  |  |  | for module in js_modules: | 
					
						
							|  |  |  |     env.Append(LINKFLAGS=['--pre-js', env.File(module).path]) | 
					
						
							|  |  |  | env.Depends(build, js_modules) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-01-13 18:47:28 +01:00
										 |  |  | wrapper_start = env.File('pre.js') | 
					
						
							|  |  |  | wrapper_end = env.File('engine.js') | 
					
						
							| 
									
										
										
										
											2018-03-21 15:51:44 +01:00
										 |  |  | js_wrapped = env.Textfile('#bin/godot', [wrapper_start, js, wrapper_end], TEXTFILESUFFIX='${PROGSUFFIX}.wrapped.js') | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | zip_dir = env.Dir('#bin/.javascript_zip') | 
					
						
							|  |  |  | zip_files = env.InstallAs([ | 
					
						
							|  |  |  |     zip_dir.File('godot.js'), | 
					
						
							|  |  |  |     zip_dir.File('godot.wasm'), | 
					
						
							|  |  |  |     zip_dir.File('godot.html') | 
					
						
							|  |  |  | ], [ | 
					
						
							| 
									
										
										
										
											2018-05-14 15:07:29 +02:00
										 |  |  |     js_wrapped, | 
					
						
							|  |  |  |     wasm, | 
					
						
							| 
									
										
										
										
											2018-08-23 20:01:30 +02:00
										 |  |  |     '#misc/dist/html/full-size.html' | 
					
						
							| 
									
										
										
										
											2018-03-21 15:51:44 +01:00
										 |  |  | ]) | 
					
						
							|  |  |  | env.Zip('#bin/godot', zip_files, ZIPROOT=zip_dir, ZIPSUFFIX='${PROGSUFFIX}${ZIPSUFFIX}', ZIPCOMSTR='Archving $SOURCES as $TARGET') |