是否可以在使用 ExternalProject 时只构建特定目标?特别是,我只需要下载和构建 OpenCoarrays 库的 MPI 版本。我试过了
ExternalProject_Add(
OpenCoarrays-fallback
EXCLUDE_FROM_ALL 1
URL https://github.com/sourceryinstitute/opencoarrays/archive/1.0.1.tar.gz
BUILD_COMMAND make caf_mpi
)
但它同时构建串行和 MPI 版本。如果不可能,也欢迎任何 hack。
最佳答案
make install
安装 OpenCoarrays
的所有流程,因此即使您在构建阶段仅构建 caf_mpi
,caf_single
在安装阶段自动构建。
对于仅安装 caf_mpi
库流程,您可以尝试使用 ExternalProject_add
命令的 PATCH_COMMAND
参数修改包源。
例如,您可以将 src/CMakeLists.txt
文件的内容替换为这个:
add_subdirectory(mpi)
这可能会奏效。
关于cmake - 如何使用 ExternalProject_Add 指定目标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31785165/