您好我正在构建基于Cmake的构建系统。 我想在一般文件夹Headr Files下将头文件分组到文件夹中(VC ++可以做到)。 类似我想将相应的.cpp文件分组到Source Files目录下的文件夹中。 很遗憾,我找不到任何关于如何操作的说明。
请帮忙。
Dimitre
答案 0 :(得分:0)
你应该看看CMake source_group命令。
答案 1 :(得分:0)
您可以使用source_group。这是一个具体的例子。
假设您的目录结构如下:
|-include
| some.h
|-sub
| someother.h
|-src
| some.cpp
|-sub
|-someother.cpp
收集文件(有些人(包括文档)不鼓励使用GLOB,但我将其留给您,如果愿意,可以列出其中的一个,尽管我发现GLOB多次都可以): / p>
file(GLOB HEADER_FILES "${CMAKE_CURRENT_SOURCE_DIR}/include/*.h")
file(GLOB HEADER_FILES_SUB "${CMAKE_CURRENT_SOURCE_DIR}/include/sub/*.h")
file(GLOB SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/src/*.h")
file(GLOB SOURCE_FILES_SUB "${CMAKE_CURRENT_SOURCE_DIR}/src/sub/*.h")
# Setup your library or executable:
add_library(MY_LIB ${HEADER_FILES} ${HEADER_FILES_SUB}
${SOURCE_FILES} ${SOURCE_FILES_SUB})
# Here's the important part ("Header Files" and "Source Files" are literals.)
source_group("Header Files\\sub" ${HEADER_FILES_SUB})
source_group("Source Files\\sub" ${SOURCE_FILES_SUB})