Download:
child 31:de57950795c0
parent 29:df7b709d3bbc
30:b02a3ab35cfe
Anton Shestakov <av6@dwimlabs.net>, Wed, 20 Jun 2018 17:56:57 +0800
recipe: adjust for newer Emscripten (1.38.6) 1.37.23 needs EXTRA_EXPORTED_RUNTIME_METHODS 1.38.1 emits WebAssembly by default and needs -s WASM=0 Let's stick to regular asm.js code and not wasm for now, just to support older/non-mainstream browsers.

1 файлов изменено, 9 вставок(+), 3 удалений(-) [+]
recipe.sh file | annotate | diff | comparison | revisions
--- a/recipe.sh Wed Jun 20 17:48:52 2018 +0800
+++ b/recipe.sh Wed Jun 20 17:56:57 2018 +0800
@@ -10,8 +10,14 @@
emcmake cmake ../
emmake make gme
+(
+ printf '['
+ grep -P '(?<=Module\.)[a-zA-Z][a-zA-Z0-9_]+' -o player.js | sort -u | awk '{printf "\"" $0 "\", "}' | sed '$s/, $//'
+ echo ']'
+) > runtime_methods.json
+
# Original, big and inclusive
-emcc gme/libgme.so -o libgme.O0.js -s LINKABLE=1 -s EXPORT_ALL=1 -O0
+emcc gme/libgme.so -o libgme.O0.js -O0 -s LINKABLE=1 -s EXPORT_ALL=1 -s EXTRA_EXPORTED_RUNTIME_METHODS=@runtime_methods.json -s WASM=0
(
echo '['
@@ -20,7 +26,7 @@
) > exported_functions.json
# Smaller and hand-picked
-emcc gme/libgme.so -o libgme.O2.js -s NO_FILESYSTEM=1 -s EXPORTED_FUNCTIONS=@exported_functions.json -O2
+emcc gme/libgme.so -o libgme.O2.js -O2 -s NO_FILESYSTEM=1 -s EXPORTED_FUNCTIONS=@exported_functions.json -s EXTRA_EXPORTED_RUNTIME_METHODS=@runtime_methods.json -s WASM=0
# Smaller still
-emcc gme/libgme.so -o libgme.Oz.js -s NO_FILESYSTEM=1 -s EXPORTED_FUNCTIONS=@exported_functions.json -Oz --llvm-lto 1
+emcc gme/libgme.so -o libgme.Oz.js -Oz --llvm-lto 1 -s NO_FILESYSTEM=1 -s EXPORTED_FUNCTIONS=@exported_functions.json -s EXTRA_EXPORTED_RUNTIME_METHODS=@runtime_methods.json -s WASM=0