From 37d6fe61baec2f17e6ac03dca67aea9832844063 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joshua=20Vanda=C3=ABle?= Date: Mon, 13 Oct 2025 01:43:08 +0200 Subject: [PATCH] CMakeLists: Fix compilation of glslang in cases where it hasn't been linked against SPIRV-Tools --- CMakeLists.txt | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 7febb808463..4d4e495a75a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -651,7 +651,15 @@ dolphin_find_optional_system_library_pkgconfig(FMT add_subdirectory(Externals/imgui) add_subdirectory(Externals/implot) -dolphin_find_optional_system_library(glslang Externals/glslang 15.0) + +# A few distributions (mainly Debian-based ones) distribute glslang without linking it against SPIRV-Tools +find_package(SPIRV-Tools) +if(SPIRV-Tools_FOUND) + dolphin_find_optional_system_library(glslang Externals/glslang 15.0) + target_link_libraries(glslang::glslang INTERFACE SPIRV-Tools) +else() + dolphin_add_bundled_library(glslang OFF Externals/glslang) +endif() # SPIRV-Cross is used on Windows for GLSL to HLSL conversion for the Direct3D 11 and Direct3D 12 # video backends, and on Apple devices for the Metal video backend. if(WIN32 OR APPLE)