mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2025-07-19 09:15:30 +03:00
40 lines
2 KiB
Diff
40 lines
2 KiB
Diff
From: Jakub Jirutka <jakub@jirutka.cz>
|
|
Date: Sun, 02 Mar 2017 22:42:00 +0200
|
|
Subject: [PATCH] Allow to specify path to wasm.js
|
|
|
|
Add configuration variable BINARYEN_WASM_JS that allows to specify location of
|
|
the Binaryen's wasm.js file.
|
|
|
|
--- a/emcc.py
|
|
+++ b/emcc.py
|
|
@@ -1282,6 +1282,11 @@
|
|
shared.Settings.BINARYEN_ROOT = shared.BINARYEN_ROOT
|
|
except:
|
|
pass
|
|
+ if not shared.Settings.BINARYEN_WASM_JS:
|
|
+ try:
|
|
+ shared.Settings.BINARYEN_WASM_JS = shared.BINARYEN_WASM_JS
|
|
+ except:
|
|
+ shared.Settings.BINARYEN_WASM_JS = os.path.join(BINARYEN_ROOT, 'bin', 'wasm.js')
|
|
# default precise-f32 to on, since it works well in wasm
|
|
# also always use f32s when asm.js is not in the picture
|
|
if ('PRECISE_F32=0' not in settings_changes and 'PRECISE_F32=2' not in settings_changes) or 'asmjs' not in shared.Settings.BINARYEN_METHOD:
|
|
@@ -2110,7 +2115,7 @@
|
|
# BINARYEN_METHOD with something that doesn't use the polyfill, then we don't need it.
|
|
if not shared.Settings.BINARYEN_METHOD or 'interpret' in shared.Settings.BINARYEN_METHOD:
|
|
logging.debug('integrating wasm.js polyfill interpreter')
|
|
- wasm_js = open(os.path.join(binaryen_bin, 'wasm.js')).read()
|
|
+ wasm_js = open(shared.Settings.BINARYEN_WASM_JS).read()
|
|
wasm_js = wasm_js.replace('EMSCRIPTEN_', 'emscripten_') # do not confuse the markers
|
|
js = open(js_target).read()
|
|
combined = open(js_target, 'w')
|
|
--- a/src/settings.js
|
|
+++ b/src/settings.js
|
|
@@ -709,6 +709,7 @@
|
|
// required for all but the smallest modules to run in V8
|
|
var BINARYEN_ROOT = ""; // Directory where we can find Binaryen. Will be automatically set for you,
|
|
// but you can set it to override if you are a Binaryen developer.
|
|
+var BINARYEN_WASM_JS = ""; // Path to the file wasm.js, the Binaryen components compiled to JavaScript.
|
|
|
|
var WASM = 0; // Alias for BINARYEN, the two are identical. Both make us compile code to WebAssembly.
|
|
|