From 9894ce1c01f35c174a038250a9b5d04de2eaf1b9 Mon Sep 17 00:00:00 2001
From: "Daniel M. Weeks" <dan@danweeks.net>
Date: Tue, 19 Jun 2018 15:58:28 -0400
Subject: [PATCH] Check common subdirs for vulkan/spirv headers (#1298)

---
 cmake/util/FindVulkan.cmake            | 5 +++++
 src/codegen/spirv/build_vulkan.cc      | 2 +-
 src/codegen/spirv/intrin_rule_spirv.cc | 2 +-
 src/codegen/spirv/ir_builder.h         | 2 +-
 4 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/cmake/util/FindVulkan.cmake b/cmake/util/FindVulkan.cmake
index 5dfd89891..6ca089ad1 100644
--- a/cmake/util/FindVulkan.cmake
+++ b/cmake/util/FindVulkan.cmake
@@ -46,5 +46,10 @@ macro(find_vulkan use_vulkan)
     get_filename_component(VULKAN_LIBRARY_PATH ${Vulkan_LIBRARY} DIRECTORY)
     find_library(Vulkan_SPIRV_TOOLS_LIBRARY SPIRV-Tools
       ${VULKAN_LIBRARY_PATH}/spirv-tools)
+
+    find_path(_libspirv libspirv.h HINTS ${Vulkan_INCLUDE_DIRS} PATH_SUFFIXES vulkan spirv-tools)
+    find_path(_spirv spirv.hpp HINTS ${Vulkan_INCLUDE_DIRS} PATH_SUFFIXES vulkan spirv/unified1)
+    find_path(_glsl_std GLSL.std.450.h HINTS ${Vulkan_INCLUDE_DIRS} PATH_SUFFIXES vulkan spirv/unified1)
+    list(APPEND Vulkan_INCLUDE_DIRS ${_libspirv} ${_spirv} ${_glsl_std})
   endif(Vulkan_FOUND)
 endmacro(find_vulkan)
diff --git a/src/codegen/spirv/build_vulkan.cc b/src/codegen/spirv/build_vulkan.cc
index 2d4b35daa..3cd1b56cd 100644
--- a/src/codegen/spirv/build_vulkan.cc
+++ b/src/codegen/spirv/build_vulkan.cc
@@ -4,7 +4,7 @@
  * \brief Build SPIRV block
  */
 // Use libspirv for parsing and validating code.
-#include <vulkan/libspirv.h>
+#include <libspirv.h>
 #include <dmlc/memory_io.h>
 #include <tvm/ir_pass.h>
 
diff --git a/src/codegen/spirv/intrin_rule_spirv.cc b/src/codegen/spirv/intrin_rule_spirv.cc
index 1f9c56c56..29d8de9df 100644
--- a/src/codegen/spirv/intrin_rule_spirv.cc
+++ b/src/codegen/spirv/intrin_rule_spirv.cc
@@ -4,7 +4,7 @@
  */
 #include <tvm/packed_func_ext.h>
 #include <tvm/ir.h>
-#include <vulkan/GLSL.std.450.h>
+#include <GLSL.std.450.h>
 
 namespace tvm {
 namespace codegen {
diff --git a/src/codegen/spirv/ir_builder.h b/src/codegen/spirv/ir_builder.h
index e652a0068..fc2d5bc68 100644
--- a/src/codegen/spirv/ir_builder.h
+++ b/src/codegen/spirv/ir_builder.h
@@ -15,7 +15,7 @@
 #include <string>
 #include <map>
 
-#include <vulkan/spirv.hpp>
+#include <spirv.hpp>
 
 namespace tvm {
 namespace codegen {
-- 
GitLab