[PATCH v2 vkd3d 2/6] build: Check VK_HEADER_VERSION.
Józef Kucia
joseph.kucia at gmail.com
Mon Oct 29 05:12:14 CDT 2018
From: Józef Kucia <jkucia at codeweavers.com>
Signed-off-by: Józef Kucia <jkucia at codeweavers.com>
---
Version 2: Use AC_LINK_IFELSE() instead of AC_RUN_IFELSE().
---
configure.ac | 2 ++
m4/vulkan.m4 | 18 ++++++++++++++++++
2 files changed, 20 insertions(+)
create mode 100644 m4/vulkan.m4
diff --git a/configure.ac b/configure.ac
index 58672c510ab9..8c82741a9bae 100644
--- a/configure.ac
+++ b/configure.ac
@@ -61,6 +61,8 @@ AS_IF([test "x$ac_cv_header_spirv_unified1_GLSL_std_450_h" != "xyes" \
-a "x$ac_cv_header_vulkan_GLSL_std_450_h" != "xyes"],
[AC_MSG_ERROR([GLSL.std.450.h not found.])])
+VKD3D_CHECK_VULKAN_HEADER_VERSION([84], [AC_MSG_ERROR([Vulkan headers are too old, 1.1.84 is required.])])
+
dnl Check for libraries
m4_ifdef([PKG_PROG_PKG_CONFIG], [PKG_PROG_PKG_CONFIG], [m4_fatal([pkg-config autoconf macros not found.])])
diff --git a/m4/vulkan.m4 b/m4/vulkan.m4
new file mode 100644
index 000000000000..6ef5818c8fd6
--- /dev/null
+++ b/m4/vulkan.m4
@@ -0,0 +1,18 @@
+dnl VKD3D_CHECK_VULKAN_HEADER_VERSION
+AC_DEFUN([VKD3D_CHECK_VULKAN_HEADER_VERSION],
+
+[AS_VAR_PUSHDEF([vkd3d_vk_version], vkd3d_cv_vk_header_version_[[$1]])
+
+AC_CACHE_CHECK([whether VK_HEADER_VERSION >= [$1]], vkd3d_vk_version,
+ [AC_LINK_IFELSE(
+ [AC_LANG_SOURCE([#include <vulkan/vulkan.h>
+ #if VK_HEADER_VERSION < $1
+ #error "Vulkan headers are too old"
+ #endif
+ int main(void) { return 0; }])],
+ [AS_VAR_SET([vkd3d_vk_version], [yes])],
+ [AS_VAR_SET([vkd3d_vk_version], [no])])])
+
+AS_IF([test "x$vkd3d_vk_version" != "xyes"], [$2])
+
+AS_VAR_POPDEF([vkd3d_vk_version])])
--
2.18.1
More information about the wine-devel
mailing list