diff options
author | Alon Zakai <alonzakai@gmail.com> | 2013-09-24 18:25:09 -0700 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2013-09-24 18:25:09 -0700 |
commit | 05b6aa32a5f1633797f7eae390b3a8048b29ca69 (patch) | |
tree | 43543261bb5485b1c109e0e9f93dcb2f7bcd227d /tools/shared.py | |
parent | 6010666be99cd0322babba1174cfbc65c776deb5 (diff) | |
parent | 8e2d812b49f7de9487e1c816229106af0cf39d0d (diff) |
Merge branch 'incoming'
Diffstat (limited to 'tools/shared.py')
-rw-r--r-- | tools/shared.py | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/tools/shared.py b/tools/shared.py index 94daadae..2d9ae9f6 100644 --- a/tools/shared.py +++ b/tools/shared.py @@ -304,7 +304,7 @@ def find_temp_directory(): # we re-check sanity when the settings are changed) # We also re-check sanity and clear the cache when the version changes -EMSCRIPTEN_VERSION = '1.5.6' +EMSCRIPTEN_VERSION = '1.6.1' def generate_sanity(): return EMSCRIPTEN_VERSION + '|' + get_llvm_target() + '|' + LLVM_ROOT @@ -1413,22 +1413,24 @@ class Building: emcc_debug = os.environ.get('EMCC_DEBUG') if emcc_debug: del os.environ['EMCC_DEBUG'] + emcc_leave_inputs_raw = os.environ.get('EMCC_LEAVE_INPUTS_RAW') + if emcc_leave_inputs_raw: del os.environ['EMCC_LEAVE_INPUTS_RAW'] + def make(opt_level): raw = relooper + '.raw.js' Building.emcc(os.path.join('relooper', 'Relooper.cpp'), ['-I' + os.path.join('relooper'), '--post-js', os.path.join('relooper', 'emscripten', 'glue.js'), '--memory-init-file', '0', - '-s', 'TOTAL_MEMORY=67108864', '-s', 'EXPORTED_FUNCTIONS=["_rl_set_output_buffer","_rl_make_output_buffer","_rl_new_block","_rl_delete_block","_rl_block_add_branch_to","_rl_new_relooper","_rl_delete_relooper","_rl_relooper_add_block","_rl_relooper_calculate","_rl_relooper_render", "_rl_set_asm_js_mode"]', '-s', 'DEFAULT_LIBRARY_FUNCS_TO_INCLUDE=["memcpy", "memset", "malloc", "free", "puts"]', '-s', 'RELOOPER="' + relooper + '"', '-O' + str(opt_level), '--closure', '0'], raw) f = open(relooper, 'w') f.write("// Relooper, (C) 2012 Alon Zakai, MIT license, https://github.com/kripken/Relooper\n") - f.write("var Relooper = (function() {\n") + f.write("var Relooper = (function(Module) {\n") f.write(open(raw).read()) f.write('\n return Module.Relooper;\n') - f.write('})();\n') + f.write('})(RelooperModule);\n') f.close() # bootstrap phase 1: generate unrelooped relooper, for which we do not need a relooper (so we cannot recurse infinitely in this function) @@ -1443,8 +1445,10 @@ class Building: finally: os.chdir(curr) if emcc_debug: os.environ['EMCC_DEBUG'] = emcc_debug + if emcc_leave_inputs_raw: os.environ['EMCC_LEAVE_INPUTS_RAW'] = emcc_leave_inputs_raw if not ok: logging.error('bootstrapping relooper failed. You may need to manually create relooper.js by compiling it, see src/relooper/emscripten') + try_delete(relooper) # do not leave a phase-1 version if phase 2 broke 1/0 @staticmethod |