将多个目标分组为一个目标
Grouping several targets into a single one
假设我有一个具有以下目录结构的项目:
project
src
file1.cpp
file2.cpp
CMakeLists.txt
demos
demo1.cpp
demo2.cpp
CMakeLists.txt
CMakeLists.txt
在主CMakeLists.txt
文件中,我有以下几行:
add_subdirectory(src)
add_subdirectory(demos EXCLUDE_FROM_ALL)
据我所知,用于demos
目录的EXCLUDE_FROM_ALL
参数只具有显式构建它的效果。也就是说,要同时构建目标demo1
和demo2
,我需要执行:
make demo1
make demo2
我的问题是:有没有办法将所有这些demo1
和demo2
目标分组为一个demos
目标,然后只键入:
make demos
在一个有几十个演示的项目中,显式地构建每个演示是非常烦人的。
如果我没记错,你可以转到demos(cd demos)并在那里键入make,使所有demo成为目标。
好的,找到了解决方案!如果其他人需要这种行为,我会在这里发帖。唯一需要的是定义一个自定义目标如下:
# Add target "demos" for building the demos
add_custom_target(demos
COMMAND ${CMAKE_BUILD_TOOL}
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/demos")
相关文章:
- 如何(从固定列表中)选择一个数字序列,该序列将与目标数字相加
- 我的目标是编写一个程序来计算和存储字符串在字符数组中出现的位置
- C++ 如何将两个 makefile 对象目标规则(位于另一个文件夹中)合并到一个目标/规则中?
- 目标c是否需要一个标准来定义像c++11这样的内存模型
- 在VC++中从DLLMAIN内部调用D3D的CREATEDEVICE时,它会创建一个死锁(loaderlock?)。有没有办法克服这个问题?最终目标内
- 执行CMAKE目标的输出作为另一个目标的依赖
- 从源开始,在C++中找到网格上最接近目标的下一个点
- 如何在不定义目标变量大小的情况下逐个字符将字符串变量复制到另一个字符
- 一个函数怎么能完成它的目标,只是在返回主函数后崩溃?
- 如何根据目标体系结构将共享库链接到另一个共享库
- 如何只构建一个依赖项目标
- CMAKE:使用来自另一个目标的功能,而无需直接target_link_libraries
- 我有一个构造函数,但我需要将输出返回到 main.cpp.我无法使用获取字符串功能!!任何想法如何实现这一目标?
- 如何创建一个qmake函数来创建一个自定义的make目标
- 我如何在makefile中实现目标,在makefile中调用另一个目标
- DirectX10仅绘制一个渲染目标
- CMAKE:创建一个由预构建库组成的新库目标
- 在 Xcode 中创建一个新的"Shell Tool"目标以供使用 Google 测试
- 我可以从多个目标制作一个库吗
- 目标C++ 11 - 为什么我们不能给 lambda 分配一个块?