|
|
|
@@ -56,6 +56,8 @@ wasm_python_c_api_build_dir_log=$(mktemp "${TMPDIR:-/tmp}/cnc_sim_wasm_python_c_
|
|
|
|
wasm_interp_find_build_dir_log=$(mktemp "${TMPDIR:-/tmp}/cnc_sim_wasm_interp_find_build_dir.XXXXXX.log")
|
|
|
|
wasm_interp_find_build_dir_log=$(mktemp "${TMPDIR:-/tmp}/cnc_sim_wasm_interp_find_build_dir.XXXXXX.log")
|
|
|
|
wasm_tooldata_mmap_build_dir_log=$(mktemp "${TMPDIR:-/tmp}/cnc_sim_wasm_tooldata_mmap_build_dir.XXXXXX.log")
|
|
|
|
wasm_tooldata_mmap_build_dir_log=$(mktemp "${TMPDIR:-/tmp}/cnc_sim_wasm_tooldata_mmap_build_dir.XXXXXX.log")
|
|
|
|
wasm_tooldata_runtime_build_dir_log=$(mktemp "${TMPDIR:-/tmp}/cnc_sim_wasm_tooldata_runtime_build_dir.XXXXXX.log")
|
|
|
|
wasm_tooldata_runtime_build_dir_log=$(mktemp "${TMPDIR:-/tmp}/cnc_sim_wasm_tooldata_runtime_build_dir.XXXXXX.log")
|
|
|
|
|
|
|
|
smoke_wasm_probe_cmake_dir=$(mktemp -d "${TMPDIR:-/tmp}/cnc_sim_smoke_wasm_probe_cmake.XXXXXX")
|
|
|
|
|
|
|
|
smoke_wasm_probe_cmake_log=$(mktemp "${TMPDIR:-/tmp}/cnc_sim_smoke_wasm_probe_cmake.XXXXXX.log")
|
|
|
|
|
|
|
|
|
|
|
|
cleanup_wasm_cmake_probe_temps() {
|
|
|
|
cleanup_wasm_cmake_probe_temps() {
|
|
|
|
local temp_path
|
|
|
|
local temp_path
|
|
|
|
@@ -76,6 +78,8 @@ cleanup_wasm_cmake_probe_temps() {
|
|
|
|
"$wasm_interp_find_build_dir_log" \
|
|
|
|
"$wasm_interp_find_build_dir_log" \
|
|
|
|
"$wasm_tooldata_mmap_build_dir_log" \
|
|
|
|
"$wasm_tooldata_mmap_build_dir_log" \
|
|
|
|
"$wasm_tooldata_runtime_build_dir_log" \
|
|
|
|
"$wasm_tooldata_runtime_build_dir_log" \
|
|
|
|
|
|
|
|
"$smoke_wasm_probe_cmake_dir" \
|
|
|
|
|
|
|
|
"$smoke_wasm_probe_cmake_log" \
|
|
|
|
"${build_next_signature:-}" \
|
|
|
|
"${build_next_signature:-}" \
|
|
|
|
"${unknown_manifest_filter_log:-}" \
|
|
|
|
"${unknown_manifest_filter_log:-}" \
|
|
|
|
"${unknown_manifest_output_log:-}" \
|
|
|
|
"${unknown_manifest_output_log:-}" \
|
|
|
|
@@ -576,7 +580,7 @@ for build_dir_probe_script in \
|
|
|
|
exit 1
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
done
|
|
|
|
grep -F 'trap '\''rm -f "$missing_manifest" "$missing_manifest_log" "$missing_root_log" "$missing_source_manifest" "$missing_source_log" "$duplicate_manifest" "$duplicate_manifest_log" "$missing_replacement_manifest" "$missing_replacement_log"'\'' EXIT' test-linuxcnc-wasm-blockers.sh >/dev/null
|
|
|
|
grep -F 'trap '\''rm -f "$missing_manifest" "$missing_manifest_log" "$missing_root_log" "$missing_source_manifest" "$missing_source_log" "$duplicate_manifest" "$duplicate_manifest_log" "$bad_line_manifest" "$bad_line_log" "$missing_replacement_manifest" "$missing_replacement_log"'\'' EXIT' test-linuxcnc-wasm-blockers.sh >/dev/null
|
|
|
|
grep -F 'self_checks=${CNC_SIM_WASM_BLOCKERS_SELF_CHECKS:-0}' test-linuxcnc-wasm-blockers.sh >/dev/null
|
|
|
|
grep -F 'self_checks=${CNC_SIM_WASM_BLOCKERS_SELF_CHECKS:-0}' test-linuxcnc-wasm-blockers.sh >/dev/null
|
|
|
|
grep -F 'CNC_SIM_WASM_BLOCKERS_SELF_CHECKS must be 0 or 1: $self_checks' test-linuxcnc-wasm-blockers.sh >/dev/null
|
|
|
|
grep -F 'CNC_SIM_WASM_BLOCKERS_SELF_CHECKS must be 0 or 1: $self_checks' test-linuxcnc-wasm-blockers.sh >/dev/null
|
|
|
|
if grep -F 'rm -f "$missing_source_manifest" "$missing_source_log"' test-linuxcnc-wasm-blockers.sh >/dev/null; then
|
|
|
|
if grep -F 'rm -f "$missing_source_manifest" "$missing_source_log"' test-linuxcnc-wasm-blockers.sh >/dev/null; then
|
|
|
|
@@ -774,7 +778,7 @@ grep -F 'exists(path: string): Promise<boolean>;' web/src/wasm-core.d.ts >/dev/n
|
|
|
|
grep -F 'stat(path: string): Promise<WasmOpfsEntryStat>;' web/src/wasm-core.d.ts >/dev/null
|
|
|
|
grep -F 'stat(path: string): Promise<WasmOpfsEntryStat>;' web/src/wasm-core.d.ts >/dev/null
|
|
|
|
grep -F 'LinuxCNC source basis: rs274ngc_pre.cc restore_parameters() reads the' web/src/wasm-core.js >/dev/null
|
|
|
|
grep -F 'LinuxCNC source basis: rs274ngc_pre.cc restore_parameters() reads the' web/src/wasm-core.js >/dev/null
|
|
|
|
grep -F 'before replacing the main file and managing filename + ".bak".' web/src/wasm-core.js >/dev/null
|
|
|
|
grep -F 'before replacing the main file and managing filename + ".bak".' web/src/wasm-core.js >/dev/null
|
|
|
|
grep -F 'await removeOpfsEntry(workspacePath, `${path}.new`, false);' web/src/wasm-core.js >/dev/null
|
|
|
|
grep -F 'await removeOpfsFileEntry(workspacePath, `${path}.new`);' web/src/wasm-core.js >/dev/null
|
|
|
|
grep -F 'OPFS workspace is required for browser program parsing' web/src/app.js >/dev/null
|
|
|
|
grep -F 'OPFS workspace is required for browser program parsing' web/src/app.js >/dev/null
|
|
|
|
grep -F 'const events = await simulator.parseFileWithParameterFile(programPath, parameterPath, "linuxcnc", parseOptions);' web/src/app.js >/dev/null
|
|
|
|
grep -F 'const events = await simulator.parseFileWithParameterFile(programPath, parameterPath, "linuxcnc", parseOptions);' web/src/app.js >/dev/null
|
|
|
|
grep -F 'default browser simulator did not create an OPFS workspace' web/test-browser-wasm-smoke-opfs-policy-sections.js >/dev/null
|
|
|
|
grep -F 'default browser simulator did not create an OPFS workspace' web/test-browser-wasm-smoke-opfs-policy-sections.js >/dev/null
|
|
|
|
@@ -1469,6 +1473,7 @@ awk '
|
|
|
|
grep -F "LinuxCNC wasm source manifest has no core entries" core/CMakeLists.txt >/dev/null
|
|
|
|
grep -F "LinuxCNC wasm source manifest has no core entries" core/CMakeLists.txt >/dev/null
|
|
|
|
grep -F "LinuxCNC wasm source manifest has no blocked entries" core/CMakeLists.txt >/dev/null
|
|
|
|
grep -F "LinuxCNC wasm source manifest has no blocked entries" core/CMakeLists.txt >/dev/null
|
|
|
|
grep -F "WASM builds must enable CNC_SIM_ENABLE_LINUXCNC_WASM_SAFE_PROBE so LinuxCNC rs274 sources are linked" core/CMakeLists.txt >/dev/null
|
|
|
|
grep -F "WASM builds must enable CNC_SIM_ENABLE_LINUXCNC_WASM_SAFE_PROBE so LinuxCNC rs274 sources are linked" core/CMakeLists.txt >/dev/null
|
|
|
|
|
|
|
|
grep -F "CNC_SIM_ENABLE_SMOKE_BACKEND cannot be combined with CNC_SIM_ENABLE_LINUXCNC_WASM_SAFE_PROBE" core/CMakeLists.txt >/dev/null
|
|
|
|
grep -F -- '-DCNC_SIM_ENABLE_LINUXCNC_WASM_SAFE_PROBE=ON' build-wasm.sh >/dev/null
|
|
|
|
grep -F -- '-DCNC_SIM_ENABLE_LINUXCNC_WASM_SAFE_PROBE=ON' build-wasm.sh >/dev/null
|
|
|
|
grep -F 'if(CNC_SIM_ENABLE_LINUXCNC_WASM_SAFE_PROBE)' core/CMakeLists.txt >/dev/null
|
|
|
|
grep -F 'if(CNC_SIM_ENABLE_LINUXCNC_WASM_SAFE_PROBE)' core/CMakeLists.txt >/dev/null
|
|
|
|
grep -F 'list(APPEND cnc_sim_core_sources ${cnc_sim_linuxcnc_rs274_backend_sources})' core/CMakeLists.txt >/dev/null
|
|
|
|
grep -F 'list(APPEND cnc_sim_core_sources ${cnc_sim_linuxcnc_rs274_backend_sources})' core/CMakeLists.txt >/dev/null
|
|
|
|
@@ -1539,6 +1544,24 @@ grep -F '$<TARGET_OBJECTS:linuxcnc_rs274_wasm_safe_probe_objects>' core/CMakeLis
|
|
|
|
grep -F '$<TARGET_OBJECTS:cnc_sim_objects>' core/CMakeLists.txt >/dev/null
|
|
|
|
grep -F '$<TARGET_OBJECTS:cnc_sim_objects>' core/CMakeLists.txt >/dev/null
|
|
|
|
grep -F 'CNC_SIM_ENABLE_LINUXCNC_RS274_BACKEND' core/CMakeLists.txt >/dev/null
|
|
|
|
grep -F 'CNC_SIM_ENABLE_LINUXCNC_RS274_BACKEND' core/CMakeLists.txt >/dev/null
|
|
|
|
grep -F '#ifndef CNC_SIM_ENABLE_LINUXCNC_WASM_SAFE_PROBE' core/src/linuxcnc_rs274_backend.cpp >/dev/null
|
|
|
|
grep -F '#ifndef CNC_SIM_ENABLE_LINUXCNC_WASM_SAFE_PROBE' core/src/linuxcnc_rs274_backend.cpp >/dev/null
|
|
|
|
|
|
|
|
if command -v cmake >/dev/null 2>&1; then
|
|
|
|
|
|
|
|
if cmake -S core -B "$smoke_wasm_probe_cmake_dir" \
|
|
|
|
|
|
|
|
-DCMAKE_BUILD_TYPE=Release \
|
|
|
|
|
|
|
|
-DCNC_SIM_LINUXCNC_ROOT="$linuxcnc_root" \
|
|
|
|
|
|
|
|
-DCNC_SIM_LINUXCNC_WASM_SOURCE_MANIFEST="$manifest" \
|
|
|
|
|
|
|
|
-DCNC_SIM_ENABLE_LINUXCNC_WASM_SAFE_PROBE=ON \
|
|
|
|
|
|
|
|
-DCNC_SIM_ENABLE_SMOKE_BACKEND=ON \
|
|
|
|
|
|
|
|
>"$smoke_wasm_probe_cmake_log" 2>&1; then
|
|
|
|
|
|
|
|
echo "CMake accepted legacy smoke backend with LinuxCNC wasm-safe probe enabled" >&2
|
|
|
|
|
|
|
|
exit 1
|
|
|
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
if ! grep -F "CNC_SIM_ENABLE_SMOKE_BACKEND cannot be combined with" "$smoke_wasm_probe_cmake_log" >/dev/null ||
|
|
|
|
|
|
|
|
! grep -F "CNC_SIM_ENABLE_LINUXCNC_WASM_SAFE_PROBE" "$smoke_wasm_probe_cmake_log" >/dev/null; then
|
|
|
|
|
|
|
|
echo "CMake did not report smoke/wasm-safe probe conflict clearly" >&2
|
|
|
|
|
|
|
|
sed -n '1,40p' "$smoke_wasm_probe_cmake_log" >&2
|
|
|
|
|
|
|
|
exit 1
|
|
|
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
|
|
|