@@ -85,87 +85,7 @@ if (MSVC)
8585 add_compile_options (/Zc:__cplusplus )
8686endif ()
8787
88- if (EMSCRIPTEN)
89- set (SHELL_FILE shell.html)
90-
91- include_directories (BEFORE
92- "${CMAKE_BINARY_DIR} /_deps/emdawn-src/include/"
93- )
94-
95- add_library (webgpu_layer
96- "${CMAKE_BINARY_DIR} /_deps/emdawn-src/webgpu.cpp"
97- )
98- target_link_libraries (${PROJECT_NAME}
99- webgpu_layer
100- )
101-
102- add_compile_options (
103- # "-fno-exceptions"
104- "$<$<CONFIG :Release >:-flto >"
105- )
106-
107- add_link_options (
108- # "-fno-exceptions"
109- "$<$<CONFIG :Release >:-flto >"
110- )
111-
112- # See https://github.com/kainino0x/webgpu-cross-platform-demo/tree/dawnwasm for a sample setup
113-
114- # Add Embind bindings to JS from the engine's binding file
115- target_sources (${PROJECT_NAME} PRIVATE ${SAMPLE_PROJECT_DIR_LIBS} /wgpuEngine/embind_bindings.cpp )
116-
117- target_link_options (${PROJECT_NAME} PRIVATE
118-
119- # -sVERBOSE
120-
121- # We are using Dawn-generated bindings, not built-in ones
122- -sUSE_WEBGPU=0
123- # The JS libraries needed for bindings
124- "--js-library=${CMAKE_BINARY_DIR} /_deps/emdawn-src/library_webgpu_enum_tables.js"
125- "--js-library=${CMAKE_BINARY_DIR} /_deps/emdawn-src/library_webgpu_generated_struct_info.js"
126- "--js-library=${CMAKE_BINARY_DIR} /_deps/emdawn-src/library_webgpu_generated_sig_info.js"
127- "--js-library=${CMAKE_BINARY_DIR} /_deps/emdawn-src/library_webgpu.js"
128- "--closure-args=--externs=${CMAKE_BINARY_DIR} /_deps/emdawn-src/webgpu-externs.js"
129-
130- -sEXPORTED_FUNCTIONS=_main,_malloc,_free
131- -sUSE_GLFW=3
132- -sALLOW_MEMORY_GROWTH
133- -sASYNCIFY
134- # -sASSERTIONS
135- # -fsanitize=address
136- -Wdeprecated-literal-operator
137- -sSTACK_SIZE=5MB
138- -sASYNCIFY_STACK_SIZE=10000
139- -lembind # to bind functions from c++ to javascript
140- -sWASM_BIGINT
141-
142- # only for dev
143- #-sERROR_ON_WASM_CHANGES_AFTER_LINK
144- #-sWASM=0
145- # For faster debug builds
146- -O1
147- # ------------
148- #--post-js "${CMAKE_BINARY_DIR}/glue.js"
149- --shell-file "${SAMPLE_PROJECT_DIR_ROOT} /${SHELL_FILE} "
150- --preload-file "${SAMPLE_PROJECT_DIR_ROOT} /data@/data"
151- )
152-
153- # Make sure to re-link when the shell file changes
154- set_property (
155- TARGET ${PROJECT_NAME}
156- PROPERTY LINK_DEPENDS
157- "${SAMPLE_PROJECT_DIR_ROOT} /${SHELL_FILE} "
158- )
159-
160- set_target_properties (${PROJECT_NAME} PROPERTIES SUFFIX ".html" )
161- endif ()
162-
16388# wgpuEngine
16489add_subdirectory (libraries/wgpuEngine )
165- target_link_libraries (${PROJECT_NAME} webgpuEngine )
166-
167- # Enable multicore compile on VS solution
168- if (MSVC )
169- add_definitions (/MP )
170- endif ()
90+ target_link_libraries (${PROJECT_NAME} PUBLIC webgpuEngine )
17191
0 commit comments