SDL_shadercross: Bump to vkd3d 1.16

From ad79e445735e9e51ab1f25bcf269a5a462005649 Mon Sep 17 00:00:00 2001
From: Anonymous Maarten <[EMAIL REDACTED]>
Date: Tue, 20 May 2025 19:11:17 +0200
Subject: [PATCH] Bump to vkd3d 1.16

---
 .github/workflows/main.yml | 7 +++++--
 CMakeLists.txt             | 4 ++--
 2 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index 93352a1..c189bcd 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -62,14 +62,17 @@ jobs:
           echo "${PWD}/bin" >>$GITHUB_PATH
 
           # libxrandr-dev is needed by vulkan-loader
+          # libjson-perl is a (build-time) dependency of vkd3d 3.16+
           sudo apt-get update -y
-          sudo apt-get install -y patchelf libxrandr-dev
+          sudo apt-get install -y patchelf libxrandr-dev libjson-perl
       - name: Install macOS requirements
         if: ${{ runner.os == 'macOS' }}
         run: |
           # bison is needed by vkd3d
-          brew install bison
+          # perl-json is needed by vkd3d 1.16+
+          brew install bison cpanm
           echo "/opt/homebrew/opt/bison/bin" >>$GITHUB_PATH
+          cpanm install JSON
       - name: Download DirectXShaderCompiler binaries
         if: ${{ !matrix.platform.vendored && runner.os != 'macOS' }}
         run: |
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 8d7a1ae..ad55bcf 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -515,8 +515,8 @@ if(SDLSHADERCROSS_INSTALL_RUNTIME)
 		find_package(BISON REQUIRED)
 		ExternalProject_Add(vkd3d
 			DEPENDS 			spirv_headers vulkan_headers vulkan_loader
-			URL					"https://dl.winehq.org/vkd3d/source/vkd3d-1.15.tar.xz"
-			URL_HASH			"SHA256=c35366f6f39b5e89ed9b77ef21520f1b8d689ac9c4dcabee360e72dd9b75c471"
+			URL					"https://dl.winehq.org/vkd3d/source/vkd3d-1.16.tar.xz"
+			URL_HASH			"SHA256=b4aef432ba1b533465b959d0e1bd22fac4610b7e178c95b3ff153854ef0f4136"
 			DOWNLOAD_EXTRACT_TIMESTAMP "1"
 			CONFIGURE_COMMAND 	"sh" "<SOURCE_DIR>/configure" "--prefix=<INSTALL_DIR>" "--enable-tests=no" "--enable-demos=no" "--disable-doxygen-doc" "CFLAGS=-I${spirv_headers_install_dir}/include -I${vulkan_headers_install_dir}/include -I${vulkan_loader_install_dir}/include ${configure_CFLAGS}" "LDFLAGS=-L${vulkan_loader_install_dir}/lib" "BISON=${BISON_EXECUTABLE}"
 			BUILD_COMMAND	 	"make"