diff options
| author | noasakurajin <dev@noasakurajin.de> | 2022-11-04 16:39:10 +0000 |
|---|---|---|
| committer | Marge Bot <emma+marge@anholt.net> | 2022-11-22 19:04:13 +0000 |
| commit | 8b8d14f9066560d305b8df8244b57f11cd2697e7 (patch) | |
| tree | da4ce03692097a6e3d304b9769795e08046489dc | |
| parent | e244b0f8b20a136182cfbd9f4360d90882c14799 (diff) | |
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>
| -rw-r--r-- | .github/workflows/macos.yml | 3 | ||||
| -rw-r--r-- | src/gallium/drivers/zink/meson.build | 13 |
2 files changed, 12 insertions, 4 deletions
diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 5db4ee82ec1..d1b66ef4cad 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -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 diff --git a/src/gallium/drivers/zink/meson.build b/src/gallium/drivers/zink/meson.build index f7fc960df6d..a1c0c2562b8 100644 --- a/src/gallium/drivers/zink/meson.build +++ b/src/gallium/drivers/zink/meson.build @@ -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( |