# Locate Vulkan SDK + glslangValidator (needed for offline shader compilation). # On macOS this expects MoltenVK to be present (provided by Vulkan SDK 1.3.290+). find_package(Vulkan REQUIRED COMPONENTS glslangValidator) if(NOT Vulkan_glslangValidator_FOUND) message(FATAL_ERROR "glslangValidator not found. Install Vulkan SDK from https://vulkan.lunarg.com/") endif() message(STATUS "Vulkan version: ${Vulkan_VERSION}") message(STATUS "Vulkan include dir: ${Vulkan_INCLUDE_DIRS}") message(STATUS "glslangValidator: ${Vulkan_GLSLANG_VALIDATOR_EXECUTABLE}") if(APPLE) # MoltenVK ships with the SDK; it's loaded as ICD at runtime, no link change needed, # but we set MVK_CONFIG_USE_METAL_PRIVATE_API=0 in env when running. message(STATUS "macOS detected — Vulkan via MoltenVK (Apple Silicon arm64 only)") endif()