You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

25 lines
932 B

if(CMAKE_VERSION VERSION_LESS "3.28.0")
macro(FetchContent_Declare_ExcludeFromAll)
FetchContent_Declare(${ARGV})
endmacro()
# Like `FetchContent_MakeAvailable` but passes EXCLUDE_FROM_ALL to `add_subdirectory`.
macro(FetchContent_MakeAvailable_ExcludeFromAll)
foreach(name ${ARGV})
string(TOLOWER ${name} nameLower)
FetchContent_GetProperties(${name})
if(NOT ${${nameLower}_POPULATED})
FetchContent_Populate(${name})
if(EXISTS ${${nameLower}_SOURCE_DIR}/CMakeLists.txt)
add_subdirectory(${${nameLower}_SOURCE_DIR} ${${nameLower}_BINARY_DIR} EXCLUDE_FROM_ALL)
endif()
endif()
endforeach()
endmacro()
else()
macro(FetchContent_Declare_ExcludeFromAll)
FetchContent_Declare(${ARGV} EXCLUDE_FROM_ALL)
endmacro()
macro(FetchContent_MakeAvailable_ExcludeFromAll)
FetchContent_MakeAvailable(${ARGV})
endmacro()
endif()