aboutsummaryrefslogtreecommitdiff
path: root/CMakeModules/FindSPIRV-Tools.cmake
diff options
context:
space:
mode:
authorcrueter <crueter@eden-emu.dev>2025-08-29 00:18:02 +0200
committercrueter <crueter@eden-emu.dev>2025-08-29 00:18:02 +0200
commit702a2beb7c3b30f84b90e88fc06ece2cd64d36f4 (patch)
treeea6ea569fe9c5769225daa240d0e070ec18ff0d1 /CMakeModules/FindSPIRV-Tools.cmake
parentd709771d67d9405edaa215d25af2d521cdb1983b (diff)
[cmake] refactor: cpmfile, deps prefetch, force system and more (#322)
CPM Dependencies are now managed in a singular json file, where each can be properly prefetched at-will via `tools/cpm-fetch.sh <packages...>`, or all at once via `tools/cpm-fetch-all.sh`. Adds docs for CPMUtil as well. Also adds `<package>_FORCE_{BUNDLED,SYSTEM}` overrides Signed-off-by: crueter <crueter@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/322 Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Diffstat (limited to 'CMakeModules/FindSPIRV-Tools.cmake')
-rw-r--r--CMakeModules/FindSPIRV-Tools.cmake19
1 files changed, 19 insertions, 0 deletions
diff --git a/CMakeModules/FindSPIRV-Tools.cmake b/CMakeModules/FindSPIRV-Tools.cmake
new file mode 100644
index 0000000000..aef74df5d9
--- /dev/null
+++ b/CMakeModules/FindSPIRV-Tools.cmake
@@ -0,0 +1,19 @@
+# SPDX-FileCopyrightText: 2022 yuzu Emulator Project
+# SPDX-License-Identifier: GPL-2.0-or-later
+
+include(FindPackageHandleStandardArgs)
+
+find_package(PkgConfig QUIET)
+pkg_search_module(SPIRV-Tools QUIET IMPORTED_TARGET SPIRV-Tools)
+find_package_handle_standard_args(SPIRV-Tools
+ REQUIRED_VARS SPIRV-Tools_LINK_LIBRARIES
+ VERSION_VAR SPIRV-Tools_VERSION
+)
+
+if (SPIRV-Tools_FOUND AND NOT TARGET SPIRV-Tools::SPIRV-Tools)
+ if (TARGET SPIRV-Tools)
+ add_library(SPIRV-Tools::SPIRV-Tools ALIAS SPIRV-Tools)
+ else()
+ add_library(SPIRV-Tools::SPIRV-Tools ALIAS PkgConfig::SPIRV-Tools)
+ endif()
+endif()