31 lines
1005 B
Bash
Executable File
31 lines
1005 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
ROOT_DIR="$(cd "$(dirname "$0")/../../.." && pwd)"
|
|
BUILD_DIR="$ROOT_DIR/build/wasm/task-hal"
|
|
NATIVE_BUILD_DIR="$ROOT_DIR/build/native/hal-runtime"
|
|
|
|
if ! command -v emcc >/dev/null 2>&1 && [[ -f "$HOME/emsdk/emsdk_env.sh" ]]; then
|
|
# shellcheck source=/dev/null
|
|
source "$HOME/emsdk/emsdk_env.sh" >/dev/null
|
|
fi
|
|
|
|
if command -v emcc >/dev/null 2>&1; then
|
|
if [[ "${SKIP_TASK_HAL_BUILD:-0}" != "1" ]]; then
|
|
"$ROOT_DIR/tools/build_task_hal_wasm.sh"
|
|
fi
|
|
node "$ROOT_DIR/tests/wasm/node/verify_hal_runtime.mjs"
|
|
exit 0
|
|
fi
|
|
|
|
mkdir -p "$NATIVE_BUILD_DIR" "$BUILD_DIR"
|
|
g++ -std=c++20 \
|
|
-I"$ROOT_DIR/runtime/core/shims" \
|
|
-I"$ROOT_DIR/runtime/core/linuxcnc_wrap" \
|
|
"$ROOT_DIR/runtime/core/linuxcnc_wrap/linuxcnc_hal_runtime.cpp" \
|
|
"$ROOT_DIR/runtime/core/linuxcnc_wrap/linuxcnc_hal_runtime_probe.cpp" \
|
|
-o "$NATIVE_BUILD_DIR/linuxcnc_hal_runtime_probe"
|
|
|
|
"$NATIVE_BUILD_DIR/linuxcnc_hal_runtime_probe"
|
|
echo "hal_runtime_wasm_node_smoke=skipped_missing_emcc"
|