diff --git a/CMakeLists.txt b/CMakeLists.txt index 71345e74..235c3f79 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -354,7 +354,8 @@ if(WEBP_BUILD_WEBP_JS) target_link_libraries(webp_js webpdecoder SDL) set(WEBP_HAVE_SDL 1) set_target_properties(webp_js PROPERTIES LINK_FLAGS - "-s EXPORTED_FUNCTIONS='[\"_WebpToSDL\"]' -s INVOKE_RUN=0") + "-s EXPORTED_FUNCTIONS='[\"_WebpToSDL\"]' -s INVOKE_RUN=0 \ + -s EXTRA_EXPORTED_RUNTIME_METHODS='[\"cwrap\"]'") set_target_properties(webp_js PROPERTIES OUTPUT_NAME webp) target_compile_definitions(webp_js PUBLIC EMSCRIPTEN WEBP_HAVE_SDL) @@ -364,7 +365,8 @@ if(WEBP_BUILD_WEBP_JS) target_link_libraries(webp_wasm webpdecoder SDL) set_target_properties(webp_wasm PROPERTIES LINK_FLAGS "-s WASM=1 -s 'BINARYEN_METHOD=\"native-wasm\"' \ - -s EXPORTED_FUNCTIONS='[\"_WebpToSDL\"]' -s INVOKE_RUN=0") + -s EXPORTED_FUNCTIONS='[\"_WebpToSDL\"]' -s INVOKE_RUN=0 \ + -s EXTRA_EXPORTED_RUNTIME_METHODS='[\"cwrap\"]'") target_compile_definitions(webp_wasm PUBLIC EMSCRIPTEN WEBP_HAVE_SDL) target_compile_definitions(webpdecoder PUBLIC EMSCRIPTEN) diff --git a/README.webp_js b/README.webp_js index 04f4970b..2805354d 100644 --- a/README.webp_js +++ b/README.webp_js @@ -32,7 +32,8 @@ using Emscripten and CMake. webp.js.mem files generated. The callable JavaScript function is WebPToSDL(), which decodes a raw WebP -bitstream into a canvas. See webp_js/index.html for a simple usage sample. +bitstream into a canvas. See webp_js/index.html for a simple usage sample +(see below for instructions). Demo HTML page: ===============