Commit cafca76f authored by Hamish Arblaster's avatar Hamish Arblaster Committed by Marge Bot
Browse files

zink: Fix building on macOS



This fixes building on macOS:
  Disable ZINK_USE_DMABUF on macOS, it is unsupported.
  Import vk_mvk_moltenvk.h for MVK_VERSION in zink_resource.c.
  Add additional build arguments (see meson.build) to build properly.

To build on macOS, you will probably need to run:
  brew install bison llvm cmake libxext xquartz ninja xorgproto meson

And you also need to setup meson with something like:
  -Dmoltenvk-dir=/Users/<Username>/VulkanSDK/<VersionNumber>/MoltenVK
  -Dc_std=c11
Reviewed-by: He Haocheng's avatarHoe Hao Cheng <haochengho12907@gmail.com>
Part-of: <mesa/mesa!14255>
parent eca7b24e
Pipeline #473644 passed with stage
in 9 minutes and 20 seconds
......@@ -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'
......
......@@ -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)
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment