如何用ExternalProject_Add指定目标?
How to specify target with ExternalProject_Add?
使用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)
可能这会奏效。
使用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)
可能这会奏效。