mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-05 21:31:08 -06:00
FindVulkan: Restore tolerance of unknown FATAL_ERROR component
`find_package(Vulkan REQUIRED FATAL_ERROR)` calls exist in the wild, but
`find_package` does not have a `FATAL_ERROR` option. We silently
tolerated such calls prior to commit 6e4d20921d (FindVulkan: Add
component for `shaderc_combined`, 2022-05-18, v3.24.0-rc1~111^2~5), by
treating the argument as a component and ignoring it. Restore tolerance
by removing the component and warning about it.
Fixes: #23849
This commit is contained in:
@@ -172,6 +172,16 @@ environment.
|
|||||||
cmake_policy(PUSH)
|
cmake_policy(PUSH)
|
||||||
cmake_policy(SET CMP0057 NEW)
|
cmake_policy(SET CMP0057 NEW)
|
||||||
|
|
||||||
|
# Provide compatibility with a common invalid component request that
|
||||||
|
# was silently ignored prior to CMake 3.24.
|
||||||
|
if("FATAL_ERROR" IN_LIST Vulkan_FIND_COMPONENTS)
|
||||||
|
message(AUTHOR_WARNING
|
||||||
|
"Ignoring unknown component 'FATAL_ERROR'.\n"
|
||||||
|
"The find_package() command documents no such argument."
|
||||||
|
)
|
||||||
|
list(REMOVE_ITEM Vulkan_FIND_COMPONENTS "FATAL_ERROR")
|
||||||
|
endif()
|
||||||
|
|
||||||
# For backward compatibility as `FindVulkan` in previous CMake versions allow to retrieve `glslc`
|
# For backward compatibility as `FindVulkan` in previous CMake versions allow to retrieve `glslc`
|
||||||
# and `glslangValidator` without requesting the corresponding component.
|
# and `glslangValidator` without requesting the corresponding component.
|
||||||
if(NOT glslc IN_LIST Vulkan_FIND_COMPONENTS)
|
if(NOT glslc IN_LIST Vulkan_FIND_COMPONENTS)
|
||||||
|
|||||||
Reference in New Issue
Block a user