Samsung / rlottie

A platform independent standalone library that plays Lottie Animation.
Other
1.15k stars 223 forks source link

Cannot build for wasm, trying fix security issue #540

Open BusinessDuck opened 1 year ago

BusinessDuck commented 1 year ago

I am using docker from travis for build docker pull smohantty/rlottie-ci-setup with installed: ninja 1.8.2 meson 0.49.2 emsdk 1.39.18

command execution ./wasm_build.sh /tmp/emsdk/ looks successfully but js and wasm files didn't generated after execution.

Execution Listing:

root@5eefc4562118:/tmp/rlottie# ./wasm_build.sh /tmp/emsdk/
The Meson build system
Version: 0.49.2
Source dir: /tmp/rlottie
Build dir: /tmp/rlottie/builddir_wasm
Build type: cross build
Project name: rlottie
Project version: 0.2
Native C++ compiler: c++ (clang 6.0.0-1ubuntu2 "clang version 6.0.0-1ubuntu2 (tags/RELEASE_600/final)")
Cross C++ compiler: /tmp/emsdk/upstream/emscripten/em++.py (clang 1.39.18)
Host machine cpu family: x86
Host machine cpu: i686
Target machine cpu family: x86
Target machine cpu: i686
Build machine cpu family: x86_64
Build machine cpu: x86_64
Configuring config.h using configuration
Message: 

Summary:
    rlottie version :        0.2
    Build type      :        minsize
    Thread Support  :        false
    Module Support  :        false
    Cache  Support  :        false
    Example         :        false
    Test            :        false
    Prefix          :        /usr/local

Build targets in project: 1
Found ninja-1.8.2 at /usr/bin/ninja
WARNING: Cross file does not specify strip binary, result will not be stripped.
ninja: Entering directory `builddir_wasm/'
[35/35] Linking static target src/librlottie.a.
RESULT:
 rlottie-wasm.wasm and rlottie-wasm.js can be found in builddir_wasm/src folder
ls: cannot access 'builddir_wasm/src/rlottie-wasm.*': No such file or directory

Can you please clarify how to build wasm corretcly and what i did wrong? One of main reason why i need to build my own wasm is file vulnerability in rlottie-wasm.js https://github.com/rlottie/rlottie.github.io/blob/master/rlottie-wasm.js

Generated code hidden eval see inside of rlottie-wasm.js code return new Function("body","return function "+name+"()

smohantty commented 1 year ago

I used to build and test using the commands in this repo https://github.com/smohantty/smohantty.github.io

could you please try it and see if it works for you ?