#!/usr/bin/env bash set -euo pipefail repo_root="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" build_dir="${repo_root}/build-wasm" native_build_dir="${repo_root}/build-native" emcmake cmake -S "${repo_root}/wasm-core" -B "${build_dir}" -G Ninja -DCMAKE_BUILD_TYPE=Release cmake --build "${build_dir}" -j8 node "${build_dir}/sim_kinematics_wasm_test.js" node "${build_dir}/sim_hal_wasm_test.js" node "${build_dir}/sim_source_unit_adapter_wasm_test.js" cmake -S "${repo_root}/wasm-core" -B "${native_build_dir}" -G Ninja -DCMAKE_BUILD_TYPE=Release cmake --build "${native_build_dir}" -j8 ctest --test-dir "${native_build_dir}" --output-on-failure printf 'wasm_build=%s\n' "${build_dir}/linuxcnc-sim-core.js" printf 'native_test=%s\n' "${native_build_dir}/sim_api_test" printf 'native_protocol_test=%s\n' "${native_build_dir}/sim_protocol_test" printf 'wasm_kinematics_test=%s\n' "${build_dir}/sim_kinematics_wasm_test.js" printf 'wasm_hal_test=%s\n' "${build_dir}/sim_hal_wasm_test.js" printf 'wasm_source_unit_test=%s\n' "${build_dir}/sim_source_unit_adapter_wasm_test.js"