Fix build when nvtools is missing (#3698)

This commit is contained in:
bnellnm 2024-03-29 21:52:39 -04:00 committed by GitHub
parent 203d4f82ac
commit 3ad438c66f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 15 additions and 5 deletions

View File

@ -70,10 +70,11 @@ find_package(Torch REQUIRED)
# config is used for standalone C++ binaries that link against torch). # config is used for standalone C++ binaries that link against torch).
# The `libtorch_python.so` library defines some of the glue code between # The `libtorch_python.so` library defines some of the glue code between
# torch/python via pybind and is required by VLLM extensions for this # torch/python via pybind and is required by VLLM extensions for this
# reason. So, add it by manually using `append_torchlib_if_found` from # reason. So, add it by manually with `find_library` using torch's
# torch's cmake setup. # installed library path.
# #
append_torchlib_if_found(torch_python) find_library(torch_python_LIBRARY torch_python PATHS
"${TORCH_INSTALL_PREFIX}/lib")
# #
# Set up GPU language and check the torch version and warn if it isn't # Set up GPU language and check the torch version and warn if it isn't

View File

@ -281,7 +281,7 @@ endmacro()
# not provided. # not provided.
# COMPILE_FLAGS <flags> - Extra compiler flags passed to NVCC/hip. # COMPILE_FLAGS <flags> - Extra compiler flags passed to NVCC/hip.
# INCLUDE_DIRECTORIES <dirs> - Extra include directories. # INCLUDE_DIRECTORIES <dirs> - Extra include directories.
# LINK_LIBRARIES <libraries> - Extra link libraries. # LIBRARIES <libraries> - Extra link libraries.
# WITH_SOABI - Generate library with python SOABI suffix name. # WITH_SOABI - Generate library with python SOABI suffix name.
# #
# Note: optimization level/debug info is set via cmake build type. # Note: optimization level/debug info is set via cmake build type.
@ -327,8 +327,17 @@ function (define_gpu_extension_target GPU_MOD_NAME)
target_include_directories(${GPU_MOD_NAME} PRIVATE csrc target_include_directories(${GPU_MOD_NAME} PRIVATE csrc
${GPU_INCLUDE_DIRECTORIES}) ${GPU_INCLUDE_DIRECTORIES})
target_link_libraries(${GPU_MOD_NAME} PRIVATE ${TORCH_LIBRARIES} target_link_libraries(${GPU_MOD_NAME} PRIVATE torch ${torch_python_LIBRARY}
${GPU_LIBRARIES}) ${GPU_LIBRARIES})
# Don't use `TORCH_LIBRARIES` for CUDA since it pulls in a bunch of
# dependencies that are not necessary and may not be installed.
if (GPU_LANGUAGE STREQUAL "CUDA")
target_link_libraries(${GPU_MOD_NAME} PRIVATE ${CUDA_CUDA_LIB}
${CUDA_LIBRARIES})
else()
target_link_libraries(${GPU_MOD_NAME} PRIVATE ${TORCH_LIBRARIES})
endif()
install(TARGETS ${GPU_MOD_NAME} LIBRARY DESTINATION ${GPU_DESTINATION}) install(TARGETS ${GPU_MOD_NAME} LIBRARY DESTINATION ${GPU_DESTINATION})
endfunction() endfunction()