diff --git a/meson.build b/meson.build index 6fe910d41be..b80949067b1 100644 --- a/meson.build +++ b/meson.build @@ -256,6 +256,10 @@ with_microsoft_vk = _vulkan_drivers.contains('microsoft-experimental') with_nouveau_vk = _vulkan_drivers.contains('nouveau') with_any_vk = _vulkan_drivers.length() != 0 +if with_any_vk and host_machine.system() == 'windows' and meson.version().version_compare('< 1.3') + error('Vulkan drivers on Windows require meson 1.3 or newer') +endif + with_vk_compiler = [ with_intel_vk, with_intel_hasvk, diff --git a/src/amd/vulkan/meson.build b/src/amd/vulkan/meson.build index 3d9d952664b..da41dc776f0 100644 --- a/src/amd/vulkan/meson.build +++ b/src/amd/vulkan/meson.build @@ -246,7 +246,7 @@ endif icd_lib_path = join_paths(get_option('prefix'), get_option('libdir')) icd_file_name = 'libvulkan_radeon.so' if with_platform_windows - icd_lib_path = join_paths(get_option('prefix'), get_option('bindir')) + icd_lib_path = import('fs').relative_to(get_option('bindir'), with_vulkan_icd_dir) icd_file_name = 'vulkan_radeon.dll' endif diff --git a/src/gallium/targets/lavapipe/meson.build b/src/gallium/targets/lavapipe/meson.build index 9351505904e..253eb0996f5 100644 --- a/src/gallium/targets/lavapipe/meson.build +++ b/src/gallium/targets/lavapipe/meson.build @@ -17,7 +17,7 @@ libvulkan_lvp = shared_library( icd_lib_path = join_paths(get_option('prefix'), get_option('libdir')) icd_file_name = 'libvulkan_lvp.so' if with_platform_windows - icd_lib_path = join_paths(get_option('prefix'), get_option('bindir')) + icd_lib_path = import('fs').relative_to(get_option('bindir'), with_vulkan_icd_dir) icd_file_name = 'vulkan_lvp.dll' endif diff --git a/src/microsoft/vulkan/meson.build b/src/microsoft/vulkan/meson.build index 0c7e2d42568..adcd2ea1ebf 100644 --- a/src/microsoft/vulkan/meson.build +++ b/src/microsoft/vulkan/meson.build @@ -94,7 +94,7 @@ libvulkan_dzn = shared_library( icd_file_name = 'libvulkan_dzn.so' icd_lib_path = join_paths(get_option('prefix'), get_option('libdir')) if with_platform_windows - icd_lib_path = join_paths(get_option('prefix'), get_option('bindir')) + icd_lib_path = import('fs').relative_to(get_option('bindir'), with_vulkan_icd_dir) icd_file_name = 'vulkan_dzn.dll' endif diff --git a/src/nouveau/vulkan/meson.build b/src/nouveau/vulkan/meson.build index ad831c74131..5e5996994b7 100644 --- a/src/nouveau/vulkan/meson.build +++ b/src/nouveau/vulkan/meson.build @@ -114,7 +114,7 @@ libvulkan_nouveau = shared_library( icd_lib_path = join_paths(get_option('prefix'), get_option('libdir')) icd_file_name = 'libvulkan_nouveau.so' if with_platform_windows - icd_lib_path = join_paths(get_option('prefix'), get_option('bindir')) + icd_lib_path = import('fs').relative_to(get_option('bindir'), with_vulkan_icd_dir) icd_file_name = 'vulkan_nouveau.dll' endif