add zink to macos ci

This commit causes zink to be build in the macos ci on every commit.
 In addition to that meson will now error if there is no moltenvk-dir
 given on macos since the build would fail anyways.

 Reviewed-by: Eric Engestrom <eric@igalia.com>
 Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19531>
This commit is contained in:
noasakurajin 2022-11-04 16:39:10 +00:00 committed by Marge Bot
parent e244b0f8b2
commit 8b8d14f906
2 changed files with 12 additions and 4 deletions

View File

@ -26,6 +26,7 @@ jobs:
brew "libxcb"
brew "libxdamage"
brew "libxext"
brew "molten-vk"
brew "ninja"
brew "pkg-config"
brew "python@3.10"
@ -41,7 +42,7 @@ jobs:
[binaries]
llvm-config = '/usr/local/opt/llvm/bin/llvm-config'
EOL
$MESON_EXEC . build --native-file=native_config -Dbuild-tests=true -Dosmesa=true -Dgallium-drivers=swrast -Dglx=${{ matrix.glx_option }}
$MESON_EXEC . build --native-file=native_config -Dmoltenvk-dir=$(brew --prefix molten-vk) -Dbuild-tests=true -Dosmesa=true -Dgallium-drivers=swrast,zink -Dglx=${{ matrix.glx_option }}
- name: Build
run: $MESON_EXEC compile -C build
- name: Test

View File

@ -76,11 +76,18 @@ zink_nir_algebraic_c = custom_target(
zink_c_args = []
inc_zink_vk = []
# MoltenVK options
if with_moltenvk_dir != ''
inc_zink_vk = [inc_zink_vk, include_directories( join_paths(with_moltenvk_dir, 'include') )]
if host_machine.system() == 'darwin'
# MoltenVK options
if with_moltenvk_dir != ''
inc_zink_vk += include_directories(join_paths(with_moltenvk_dir, 'include'))
else
error('moltenvk-dir is required but not set.')
endif
zink_c_args += ['-x','objective-c'] # Put compiler into objective-C mode to allow for MacOS types, like IOSurface and CAMetalLayer
zink_c_args += ['-iframework' , 'Foundation']
endif
libzink = static_library(