diff options
author | Alon Zakai <alonzakai@gmail.com> | 2012-11-28 16:36:40 -0800 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2012-12-07 14:23:19 -0800 |
commit | 709d9bf788b78992ab6aa7676e6a9f59ac696efa (patch) | |
tree | 4af48c9337a0a7161a86d485d3b43f4599423282 /emscripten.py | |
parent | 0ec22e206f7b552897dd2c303c84c70b742d0208 (diff) |
export asm.js exports to outside scope
Diffstat (limited to 'emscripten.py')
-rwxr-xr-x | emscripten.py | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/emscripten.py b/emscripten.py index a93095a9..26d4a24e 100755 --- a/emscripten.py +++ b/emscripten.py @@ -254,6 +254,8 @@ def emscript(infile, settings, outfile, libraries=[]): # sent data basics = ['buffer', 'Int8Array', 'Int16Array', 'Int32Array', 'Uint8Array', 'Uint16Array', 'Uint32Array', 'Float32Array', 'Float64Array'] sending = '{ ' + ', '.join([s + ': ' + s for s in basics + global_vars + global_funcs]) + ' }' + # received + receiving = ';\n'.join(['var ' + s + ' = Module["' + s + '"] = asm.' + s for s in exported_implemented_functions]) # finalize funcs_js = ''' var asm = (function(env, buffer) { @@ -270,8 +272,8 @@ var asm = (function(env, buffer) { return %s; })(%s, buffer); -for (var _export in asm) Module[_export] = asm[_export]; -''' % (exports, sending) +%s; +''' % (exports, sending, receiving) outputs = None if DEBUG: print >> sys.stderr, ' emscript: phase 2b took %s seconds' % (time.time() - t) |