sglang.0.4.8.post1/nvshmem_src/cmake_config/NVSHMEMConfig.cmake.in

90 lines
2.5 KiB
CMake

get_filename_component(PACKAGE_PREFIX_DIR "${CMAKE_CURRENT_LIST_DIR}/../../../" ABSOLUTE)
macro(set_and_check _var _file)
set(${_var} "${_file}")
if(NOT EXISTS "${_file}")
set(${_var} "")
endif()
endmacro()
macro(check_required_components _NAME)
foreach(comp ${${_NAME}_FIND_COMPONENTS})
if(NOT ${_NAME}_${comp}_FOUND)
if(${_NAME}_FIND_REQUIRED_${comp})
set(${_NAME}_FOUND FALSE)
endif()
endif()
endforeach()
endmacro()
set(NVSHMEM_VERSION @PACKAGE_VERSION@)
get_filename_component(NVSHMEM_RHEL_INCL_BIN_BASE "${CMAKE_CURRENT_LIST_DIR}/../../../../../" ABSOLUTE)
get_filename_component(NVSHMEM_DEB_INCL_BIN_BASE "${CMAKE_CURRENT_LIST_DIR}/../../../../../.." ABSOLUTE)
get_filename_component(NVSHMEM_RHEL_BACKUP_INCL_BIN_BASE "${CMAKE_CURRENT_LIST_DIR}/../../../../" ABSOLUTE)
set(NVSHMEM_INCLUDE_FINAL "include/nvshmem_@CUDAToolkit_VERSION_MAJOR@")
set(NVSHMEM_BIN_FINAL "bin/nvshmem_@CUDAToolkit_VERSION_MAJOR@")
set(INCLUDE_DIRS
${PACKAGE_PREFIX_DIR}/include
${NVSHMEM_DEB_INCL_BIN_BASE}/${NVSHMEM_INCLUDE_FINAL}
${NVSHMEM_RHEL_INCL_BIN_BASE}/${NVSHMEM_INCLUDE_FINAL}
${NVSHMEM_RHEL_BACKUP_INCL_BIN_BASE}/${NVSHMEM_INCLUDE_FINAL}
)
set(BIN_DIRS
${PACKAGE_PREFIX_DIR}/bin
${NVSHMEM_DEB_INCL_BIN_BASE}/${NVSHMEM_BIN_FINAL}
${NVSHMEM_RHEL_INCL_BIN_BASE}/${NVSHMEM_BIN_FINAL}
${NVSHMEM_RHEL_BACKUP_INCL_BIN_BASE}/${NVSHMEM_BIN_FINAL}
)
set(LIB_DIRS
${PACKAGE_PREFIX_DIR}/lib
${CMAKE_CURRENT_LIST_DIR}/../..
)
foreach(INCLUDE_PATH IN LISTS INCLUDE_DIRS)
set_and_check(NVSHMEM_INCLUDE_DIR "${INCLUDE_PATH}")
if (NVSHMEM_INCLUDE_DIR)
break()
endif ()
endforeach()
foreach(BIN_PATH IN LISTS BIN_DIRS)
set_and_check(NVSHMEM_BIN_DIR "${BIN_PATH}")
if (NVSHMEM_BIN_DIR)
break()
endif ()
endforeach()
foreach(LIB_PATH IN LISTS LIB_DIRS)
set_and_check(NVSHMEM_LIB_DIR "${LIB_PATH}")
if (NVSHMEM_LIB_DIR)
break()
endif ()
endforeach()
if (NOT NVSHMEM_INCLUDE_DIR)
message(FATAL_ERROR "Unable to find NVSHMEM Include directory!")
endif ()
if (NOT NVSHMEM_BIN_DIR)
message(FATAL_ERROR "Unable to find NVSHMEM Binary directory!")
endif ()
if (NOT NVSHMEM_LIB_DIR)
message(FATAL_ERROR "Unable to find NVSHMEM Library directory!")
endif ()
include(CMakeFindDependencyMacro)
check_required_components(NVSHMEM)
# Capturing values from configure (optional)
set(my-config-var @my-config-var@)
# Add the targets file
include(${CMAKE_CURRENT_LIST_DIR}/NVSHMEMTargets.cmake)
include(${CMAKE_CURRENT_LIST_DIR}/NVSHMEMDeviceTargets.cmake)