| # Copyright 2021 The Dawn Authors |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| add_library(dawn_node_binding STATIC |
| "AsyncRunner.cpp" |
| "AsyncRunner.h" |
| "Converter.cpp" |
| "Converter.h" |
| "Errors.cpp" |
| "Errors.h" |
| "Flags.cpp" |
| "Flags.h" |
| "GPU.cpp" |
| "GPU.h" |
| "GPUAdapter.cpp" |
| "GPUAdapter.h" |
| "GPUBindGroup.cpp" |
| "GPUBindGroup.h" |
| "GPUBindGroupLayout.cpp" |
| "GPUBindGroupLayout.h" |
| "GPUBuffer.cpp" |
| "GPUBuffer.h" |
| "GPUCommandBuffer.cpp" |
| "GPUCommandBuffer.h" |
| "GPUCommandEncoder.cpp" |
| "GPUCommandEncoder.h" |
| "GPUComputePassEncoder.cpp" |
| "GPUComputePassEncoder.h" |
| "GPUComputePipeline.cpp" |
| "GPUComputePipeline.h" |
| "GPUDevice.cpp" |
| "GPUDevice.h" |
| "GPUPipelineLayout.cpp" |
| "GPUPipelineLayout.h" |
| "GPUQuerySet.cpp" |
| "GPUQuerySet.h" |
| "GPUQueue.cpp" |
| "GPUQueue.h" |
| "GPURenderBundle.cpp" |
| "GPURenderBundle.h" |
| "GPURenderBundleEncoder.cpp" |
| "GPURenderBundleEncoder.h" |
| "GPURenderPassEncoder.cpp" |
| "GPURenderPassEncoder.h" |
| "GPURenderPipeline.cpp" |
| "GPURenderPipeline.h" |
| "GPUSampler.cpp" |
| "GPUSampler.h" |
| "GPUShaderModule.cpp" |
| "GPUShaderModule.h" |
| "GPUSupportedLimits.cpp" |
| "GPUSupportedLimits.h" |
| "GPUTexture.cpp" |
| "GPUTexture.h" |
| "GPUTextureView.cpp" |
| "GPUTextureView.h" |
| ) |
| |
| target_include_directories(dawn_node_binding |
| PRIVATE |
| "${CMAKE_SOURCE_DIR}" |
| "${NODE_API_HEADERS_DIR}/include" |
| "${NODE_ADDON_API_DIR}" |
| "${GEN_DIR}" |
| ) |
| |
| target_link_libraries(dawn_node_binding |
| PRIVATE |
| dawncpp |
| dawn_node_interop |
| ) |
| |
| # dawn_node targets require C++17 |
| set_property( |
| TARGET dawn_node_binding |
| PROPERTY CXX_STANDARD 17 |
| ) |