mirror of
https://github.com/Kitware/CMake.git
synced 2026-04-24 07:08:38 -05:00
29e31e2825
Allow FetchContent_MakeAvailable() to try a call to find_package() first, or redirect a find_package() call to FetchContent_MakeAvailable(). The user can set variables to control which of these are allowed or tried by default. Fixes: #21687
19 lines
500 B
CMake
19 lines
500 B
CMake
include(FetchContent)
|
|
|
|
set(CMAKE_PREFIX_PATH ${CMAKE_CURRENT_LIST_DIR}/PackageConfigs)
|
|
set(FETCHCONTENT_TRY_FIND_PACKAGE_MODE ALWAYS)
|
|
|
|
FetchContent_Declare(
|
|
FirstProject
|
|
# Ensure failure if we don't re-route to find_package()
|
|
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/FatalIfAdded
|
|
)
|
|
|
|
FetchContent_Declare(
|
|
SecondProject
|
|
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/AddedProject
|
|
OVERRIDE_FIND_PACKAGE # Takes precedence over ALWAYS mode
|
|
)
|
|
|
|
FetchContent_MakeAvailable(FirstProject SecondProject)
|