Skip to content

Commit

Permalink
Merge pull request #4914 from kateinoigakukun/pr-0e428ab1d3cbb96680c2…
Browse files Browse the repository at this point in the history
…c10a64f35b9d4b23b71c

[wasm] Enable wasi-libc emulations for Foundation
  • Loading branch information
kateinoigakukun committed Mar 8, 2024
2 parents 514e2bd + ee05d2d commit f7d3cde
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 0 deletions.
12 changes: 12 additions & 0 deletions Sources/Foundation/CMakeLists.txt
Expand Up @@ -225,6 +225,18 @@ elseif(NOT CMAKE_SYSTEM_NAME STREQUAL Darwin)
target_link_options(Foundation PRIVATE "SHELL:-no-toolchain-stdlib-rpath")
endif()

if(CMAKE_SYSTEM_NAME STREQUAL WASI)
target_compile_options(Foundation PRIVATE
"SHELL:-Xcc -D_WASI_EMULATED_MMAN
-Xcc -D_WASI_EMULATED_SIGNAL
-Xcc -D_WASI_EMULATED_PROCESS_CLOCKS
-Xcc -D_WASI_EMULATED_GETPID")
# Link wasi-libc emulation libraries. Other emulation libs are also used in stdlib
target_compile_options(Foundation
PRIVATE
"SHELL:-Xfrontend -public-autolink-library -Xfrontend wasi-emulated-getpid")
endif()


set_property(GLOBAL APPEND PROPERTY Foundation_EXPORTS Foundation)
_install_target(Foundation)
6 changes: 6 additions & 0 deletions Sources/FoundationXML/CMakeLists.txt
Expand Up @@ -43,6 +43,12 @@ if(NOT CMAKE_SYSTEM_NAME MATCHES "Darwin|Windows")
target_link_options(FoundationXML PRIVATE "SHELL:-no-toolchain-stdlib-rpath")
endif()

if(CMAKE_SYSTEM_NAME STREQUAL WASI)
target_compile_options(FoundationXML PRIVATE
"SHELL:-Xcc -D_WASI_EMULATED_SIGNAL
-Xcc -D_WASI_EMULATED_PROCESS_CLOCKS
-Xcc -D_WASI_EMULATED_MMAN")
endif()

set_property(GLOBAL APPEND PROPERTY Foundation_EXPORTS FoundationXML)
_install_target(FoundationXML)

0 comments on commit f7d3cde

Please sign in to comment.