CMake检查主项目是否被调用

Dej*_*jwi 4 cmake

我有这种项目目录设计:

Main:
    CMakeLists.txt
    subproject1:
         CMakeLists.txt   
    subproject2
         CMakeLists.txt   
Run Code Online (Sandbox Code Playgroud)

如果主项目调用subproject1 cmake,或者作为独立项目,我如何检查subproject1/CMakeLists.txt文件?

arr*_*owd 6

干得好:

if( CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR )
# We are building as stand-alone project
project(subproject1)
...
else()
# We are building as part of Main project
endif()
Run Code Online (Sandbox Code Playgroud)