blob: 2db46f941d478f7e9c8505ba8568b6d55eaba126 [file] [log] [blame] [edit]
# Prereq: activate emsdk first (so emcmake/em++ are on PATH)
# Linux/macOS:
source /path/to/emsdk/emsdk_env.sh
# Windows PowerShell:
# & "C:\path\to\emsdk\emsdk_env.ps1"
# ===== Release (fast; same behavior as your original file) =====
emcmake cmake -S . -B build-release -DCMAKE_BUILD_TYPE=Release
cmake --build build-release -j
# ===== Debug (symbols + assertions) =====
emcmake cmake -S . -B build-debug -DCMAKE_BUILD_TYPE=Debug
cmake --build build-debug -j
# ===== SAN (ASan + UBSan; great for catching bugs) =====
emcmake cmake -S . -B build-san -DCMAKE_BUILD_TYPE=SAN
cmake --build build-san -j
# Build a single target (optional) instead of all three:
cmake --build build-release -j --target basis_encoder.js
cmake --build build-release -j --target basis_encoder_threads.js
cmake --build build-release -j --target basis_encoder_threads_wasm64.js
# Toggle Zstd (OFF = smaller binary, no KTX2 Zstd compression)
emcmake cmake -S . -B build-release -DCMAKE_BUILD_TYPE=Release -DKTX2_ZSTANDARD=OFF
cmake --build build-release -j