CMake: Add support for the Vulkan backend

Bug: dawn:333
Change-Id: Id509e5f06862d6fee517ef47c40418077ccf4759
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/15941
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
diff --git a/third_party/CMakeLists.txt b/third_party/CMakeLists.txt
index 56993a1..72daa1b 100644
--- a/third_party/CMakeLists.txt
+++ b/third_party/CMakeLists.txt
@@ -77,3 +77,15 @@
 add_library(dawn_khronos_platform INTERFACE)
 target_sources(dawn_khronos_platform INTERFACE "${DAWN_THIRD_PARTY_DIR}/khronos/KHR/khrplatform.h")
 target_include_directories(dawn_khronos_platform INTERFACE "${DAWN_THIRD_PARTY_DIR}/khronos")
+
+# Header-only library for Vulkan headers
+add_library(dawn_vulkan_headers INTERFACE)
+target_sources(dawn_vulkan_headers INTERFACE
+    "${DAWN_THIRD_PARTY_DIR}/khronos/vulkan/vk_icd.h"
+    "${DAWN_THIRD_PARTY_DIR}/khronos/vulkan/vk_layer.h"
+    "${DAWN_THIRD_PARTY_DIR}/khronos/vulkan/vk_platform.h"
+    "${DAWN_THIRD_PARTY_DIR}/khronos/vulkan/vk_sdk_platform.h"
+    "${DAWN_THIRD_PARTY_DIR}/khronos/vulkan/vulkan.h"
+    "${DAWN_THIRD_PARTY_DIR}/khronos/vulkan/vulkan_core.h"
+)
+target_include_directories(dawn_vulkan_headers INTERFACE "${DAWN_THIRD_PARTY_DIR}/khronos")