From 93676365b74b7914ede90183be90648116f8a5ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B3zef=20Kucia?= Date: Mon, 29 Oct 2018 11:12:14 +0100 Subject: [PATCH] build: Check VK_HEADER_VERSION. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Józef Kucia Signed-off-by: Henri Verbeet Signed-off-by: Alexandre Julliard --- 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 58672c51..8c82741a 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 00000000..6ef5818c --- /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 + #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])])