From 7b9c58fec35f80103e5167cc931b76e5b54a410c Mon Sep 17 00:00:00 2001 From: Jinny You Date: Mon, 2 Dec 2024 13:30:32 +0900 Subject: [PATCH] wasm: add gl option to combined binary --- cross/wasm32.txt | 21 +++++++++++++++++++++ wasm_build.sh | 4 ++-- 2 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 cross/wasm32.txt diff --git a/cross/wasm32.txt b/cross/wasm32.txt new file mode 100644 index 00000000..4b4d4343 --- /dev/null +++ b/cross/wasm32.txt @@ -0,0 +1,21 @@ +[binaries] +cpp = 'EMSDK:upstream/emscripten/em++.py' +ar = 'EMSDK:upstream/emscripten/emar.py' +strip = '-strip' + +[properties] +root = 'EMSDK:upstream/emscripten/system' +shared_lib_suffix = 'js' +static_lib_suffix = 'js' +shared_module_suffix = 'js' +exe_suffix = 'js' + +[built-in options] +cpp_args = ['-Wshift-negative-value', '-flto', '-Os', '-fno-exceptions'] +cpp_link_args = ['-Wshift-negative-value', '-flto', '-Os', '-fno-exceptions', '--bind', '-sWASM=1', '-sALLOW_MEMORY_GROWTH=1', '-sEXPORT_ES6=1', '-sFORCE_FILESYSTEM=1', '-sMODULARIZE=1', '-sEXPORTED_RUNTIME_METHODS=FS', '-sUSE_WEBGPU=1', '-sASYNCIFY=1', '-sSTACK_SIZE=4MB', '-sMAX_WEBGL_VERSION=2', '-sFULL_ES3'] + +[host_machine] +system = 'emscripten' +cpu_family = 'wasm32' +cpu = 'wasm32' +endian = 'little' diff --git a/wasm_build.sh b/wasm_build.sh index 2fbeccbb..a1199fd6 100755 --- a/wasm_build.sh +++ b/wasm_build.sh @@ -21,8 +21,8 @@ if [ ! -d "./build_wasm" ]; then sed "s|EMSDK:|$EMSDK|g" ./cross/wasm32_gl.txt > /tmp/.wasm_cross.txt meson -Db_lto=true -Ddefault_library=static -Dstatic=true -Dloaders="all" -Dsavers="all" -Dthreads=false -Dbindings="wasm_beta" -Dengines="gl" --cross-file /tmp/.wasm_cross.txt build_wasm else - sed "s|EMSDK:|$EMSDK|g" ./cross/wasm32_wg.txt > /tmp/.wasm_cross.txt - meson -Db_lto=true -Ddefault_library=static -Dstatic=true -Dloaders="all" -Dsavers="all" -Dthreads=false -Dbindings="wasm_beta" -Dengines="wg, sw" --cross-file /tmp/.wasm_cross.txt build_wasm + sed "s|EMSDK:|$EMSDK|g" ./cross/wasm32.txt > /tmp/.wasm_cross.txt + meson -Db_lto=true -Ddefault_library=static -Dstatic=true -Dloaders="all" -Dsavers="all" -Dthreads=false -Dbindings="wasm_beta" -Dengines="wg, gl, sw" --cross-file /tmp/.wasm_cross.txt build_wasm fi fi