diff --git a/meson.build b/meson.build index f23af107966..64d9a5cfabc 100644 --- a/meson.build +++ b/meson.build @@ -426,6 +426,15 @@ if system_has_kms_drm and not with_platform_android c_args += '-DVK_USE_PLATFORM_DISPLAY_KHR' cpp_args += '-DVK_USE_PLATFORM_DISPLAY_KHR' endif +if host_machine.system() == 'darwin' + c_args += '-DVK_USE_PLATFORM_MACOS_MVK' + cpp_args += '-DVK_USE_PLATFORM_MACOS_MVK' + c_args += '-DVK_USE_PLATFORM_METAL_EXT' + cpp_args += '-DVK_USE_PLATFORM_METAL_EXT' + #macOS seems to need beta extensions to build for now: + c_args += '-DVK_ENABLE_BETA_EXTENSIONS' + cpp_args += '-DVK_ENABLE_BETA_EXTENSIONS' +endif _egl = get_option('egl') if _egl == 'true' diff --git a/src/gallium/drivers/zink/zink_resource.c b/src/gallium/drivers/zink/zink_resource.c index 205d32c8fb5..5b1d439f843 100644 --- a/src/gallium/drivers/zink/zink_resource.c +++ b/src/gallium/drivers/zink/zink_resource.c @@ -45,7 +45,7 @@ #include "util/os_file.h" #include "frontend/sw_winsys.h" -#ifndef _WIN32 +#if !defined(_WIN32) && !defined(__APPLE__) #define ZINK_USE_DMABUF #endif @@ -58,6 +58,10 @@ #define DRM_FORMAT_MOD_LINEAR 0 #endif +#if defined(__APPLE__) +// Source of MVK_VERSION +#include "MoltenVK/vk_mvk_moltenvk.h" +#endif static bool equals_ivci(const void *a, const void *b)