dmlc--dgl
66eb240d15
* Add NCCL as a submodule * Allow using third_party/nccl or system nccl * Add nccl_external as a dependency * Fix conditional Co-authored-by: Quan (Andy) Gan <coin2028@hotmail.com>
25 行
612 B
CMake
25 行
612 B
CMake
include(ExternalProject)
|
|
|
|
# set path to submodule
|
|
set(NCCL_BUILD_DIR "${CMAKE_CURRENT_BINARY_DIR}/nccl")
|
|
|
|
# NCCL doesn't have CMAKE, so build externally
|
|
ExternalProject_Add(nccl_external
|
|
SOURCE_DIR ${PROJECT_SOURCE_DIR}/third_party/nccl
|
|
BUILD_IN_SOURCE 1
|
|
CONFIGURE_COMMAND ""
|
|
BUILD_COMMAND
|
|
env
|
|
make
|
|
"src.build"
|
|
"-j"
|
|
"BUILDDIR=${NCCL_BUILD_DIR}"
|
|
BUILD_BYPRODUCTS "${NCCL_BUILD_DIR}/lib/libnccl_static.a"
|
|
INSTALL_COMMAND ""
|
|
)
|
|
|
|
# set output variables
|
|
set(NCCL_FOUND TRUE)
|
|
set(NCCL_LIBRARY "${NCCL_BUILD_DIR}/lib/libnccl_static.a")
|
|
set(NCCL_INCLUDE_DIR "${NCCL_BUILD_DIR}/include")
|