我有一个目录和不同的子文件夹,如下所示:
home
|
|-library1
|-library2
|
|-libraryn
每个子文件夹都包含一个可以自行编译的完整库(每个库都有不同的mantainer)。在每个子文件夹中都有一个允许编译项目的CMakeLists.txt
。
我想找到一种在主文件夹上创建CMakeLists.txt
的方法,它调用每个项目的编译,所以在此之后我可以简单地在主文件夹上调用make
(或者我在哪里调用cmake)为了让所有图书馆一次就绪。
我想避免在每个项目文件夹中手动输入CMakeLists.txt
,因为它们很多。
我该怎么做?
编辑:
简单地使用add_subdirectory
不起作用:正如我所说,这些是独立的项目。其中一些具有相同的目标(例如,示例,doc等),当我使用此命令添加它们时,cmake返回错误,指出不同的CMakeFiles.txt不能具有相同的目标。我喜欢像
for every folder
create build/projec folder
cd into that folder
call cmake for specific folder project.
使用bash脚本可能更简单,但是我想使用cmake来在其他平台而不是Linux上编译这些库。