quickjs-tart

quickjs-based runtime for wallet-core logic
Log | Files | Refs | README | LICENSE

wasm32-wasi.sh (1087B)


      1 #! /bin/sh
      2 
      3 export PATH="/opt/zig/bin:/opt/zig:/opt/homebrew/bin:$PATH"
      4 
      5 export PREFIX="$(pwd)/libsodium-wasm32-wasi"
      6 
      7 mkdir -p $PREFIX || exit 1
      8 
      9 export CC="zig cc"
     10 export CFLAGS="--target=wasm32-wasi -O3"
     11 export LDFLAGS="-s"
     12 export AR="zig ar"
     13 export RANLIB="zig ranlib"
     14 
     15 make distclean >/dev/null
     16 
     17 if [ "x$1" = "x--bench" ]; then
     18   export BENCHMARKS=1
     19   export CPPFLAGS="-DBENCHMARKS -DITERATIONS=200"
     20 else
     21   export CPPFLAGS="-DED25519_NONDETERMINISTIC=1"
     22 fi
     23 
     24 if [ -n "$LIBSODIUM_MINIMAL_BUILD" ]; then
     25   export LIBSODIUM_ENABLE_MINIMAL_FLAG="--enable-minimal"
     26 else
     27   export LIBSODIUM_ENABLE_MINIMAL_FLAG=""
     28 fi
     29 
     30 if ! ./configure ${LIBSODIUM_ENABLE_MINIMAL_FLAG} \
     31   --prefix="$PREFIX" \
     32   --host=wasm32-wasi \
     33   --disable-pie --disable-ssp --disable-shared --without-pthreads; then
     34   cat config.log
     35   exit 1
     36 fi
     37 
     38 NPROCESSORS=$(getconf NPROCESSORS_ONLN 2>/dev/null || getconf _NPROCESSORS_ONLN 2>/dev/null)
     39 PROCESSORS=${NPROCESSORS:-3}
     40 
     41 if [ -z "$BENCHMARKS" ]; then
     42   make -j${PROCESSORS} check && make install && make distclean >/dev/null
     43 else
     44   make -j${PROCESSORS} && make check
     45 fi