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.
|
|
|
include(FetchContent)
|
|
|
|
|
|
|
|
FetchContent_Declare(
|
|
|
|
WithProject
|
|
|
|
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/WithProject
|
|
|
|
)
|
|
|
|
FetchContent_Declare(
|
|
|
|
WithoutProject
|
|
|
|
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/WithoutProject
|
|
|
|
)
|
|
|
|
FetchContent_Declare(
|
|
|
|
ProjectSubdir
|
|
|
|
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/WithoutProject
|
|
|
|
SOURCE_SUBDIR ProjectSubdir
|
|
|
|
)
|
|
|
|
|
|
|
|
# Order is important and will be verified by test output
|
|
|
|
FetchContent_MakeAvailable(WithProject WithoutProject ProjectSubdir)
|
|
|
|
|
|
|
|
get_property(addedWith GLOBAL PROPERTY FetchWithProject SET)
|
|
|
|
if(NOT addedWith)
|
|
|
|
message(SEND_ERROR "Project with top level CMakeLists.txt not added")
|
|
|
|
endif()
|
|
|
|
get_property(addedSubdir GLOBAL PROPERTY FetchWithSubProject SET)
|
|
|
|
if(NOT addedSubdir)
|
|
|
|
message(SEND_ERROR "Project with CMakeLists.txt in subdir not added")
|
|
|
|
endif()
|
|
|
|
|
|
|
|
include(${withoutproject_SOURCE_DIR}/confirmMessage.cmake)
|