web: Fix emscripten build

The web/emscripten build has been broken for an unknown amount of time
and for multiple reasons:
  - Calling `cat` on Windows
  - The latest version of wasm-ld does not support the `--no-undefined`
    flag
  - `ccall` was not being exported

Fixes #3272.
This commit is contained in:
Nathaniel Cesario
2023-07-20 10:46:47 -06:00
committed by arcady-lunarg
parent 77417d5c9e
commit 45ce545ad3
3 changed files with 18 additions and 5 deletions

View File

@@ -159,8 +159,8 @@ elseif(${CMAKE_CXX_COMPILER_ID} MATCHES "Clang" AND NOT MSVC)
add_compile_options(-fno-exceptions)
endif()
if(NOT CMAKE_SYSTEM_NAME STREQUAL "OpenBSD")
# Error if there's symbols that are not found at link time.
if(NOT (CMAKE_SYSTEM_NAME STREQUAL "OpenBSD" OR CMAKE_SYSTEM_NAME STREQUAL "Emscripten"))
# Error if there's symbols that are not found at link time. Some linkers do not support this flag.
if (CMAKE_CXX_COMPILER_ID STREQUAL "AppleClang")
add_link_options("-Wl,-undefined,error")
elseif(NOT APPLE)