yum-mirror/slang

Making it easier to work with shaders

git clone https://git.yummers.dev/yum-mirror/slang

Gangzheng TongAdd WASM FS module support for slang-playground (#8459)206f6cf56

master
978 B34 linesraw
1#
2# WebAssembly bindings for Slang
3#
4# This is an executable target because emcmake produces .a files without bindings if you just create a static library
5# https://stackoverflow.com/questions/63622009/static-library-built-with-cmake-as-a-with-emscripten-instead-of-wasm-js
6if(EMSCRIPTEN)
7    slang_add_target(
8        .
9        EXECUTABLE
10        EXCLUDE_FROM_ALL
11        USE_FEWER_WARNINGS
12        LINK_WITH_PRIVATE
13            miniz
14            lz4_static
15            slang
16            core
17            compiler-core
18            slang-capability-defs
19            slang-capability-lookup
20            slang-fiddle-output
21            slang-lookup-tables
22        INCLUDE_DIRECTORIES_PUBLIC ${slang_SOURCE_DIR}/include .
23    )
24    # To generate binding code
25    target_link_options(
26        slang-wasm
27        PUBLIC
28        "--bind"
29        "--emit-tsd" "interface.d.ts"
30        "-sEXPORT_ES6=1"
31        "-sMODULARIZE=1"
32        "-sEXPORTED_RUNTIME_METHODS=['FS']"
33    )
34endif()