【发布时间】:2015-08-22 07:36:36
【问题描述】:
假设我的目录结构如下:
/main.cpp
/CMakeLists.txt
/foo/foo.cpp
/foo/CMakeLists.txt
我的/CMakeLists.txt 文件包含以下内容:
project(Test)
add_subdirectory("foo")
add_executable(Test main.cpp foo/foo.cpp)
target_link_libraries(Test ${OpenNI_LIB})
我的/foo/CMakeLists.txt 文件包含以下内容:
find_library(OpenNI REQUIRED)
当我在第一个CMakeLists.txt 中使用add_subdirectory("foo") 行时,实际发生了什么?它是否在foo 中搜索第二个CMakeLists.txt 文件,并将内容添加到第一个文件中?定义第二个文件的任何变量在第一个文件中是否可用?特别是在这个例子中,变量${OpenNI_LIB} 是否会在第一个中被识别,因为它是在第二个中定义的?
谢谢。
【问题讨论】:
标签: cmake