# CMake script for finding AMGX # Thomas Zwinger, CSC - IT Center for Science Ltd. # 2020/03 # # AMGX_INCLUDE_DIR - user modifiable choice of where to AMGX include dir # AMGX_LIBRARY - user modifiable choice of where AMGX library is # his module returns these variables for the rest of the project to use. # # AMGX_FOUND - True if AMGX found # AMGX_LIBRARY - AMGX library # AMGX_INCLUDE_DIR - AMGX include dir. # CUDA_LIBRARIES - needed cuda libraries # CUDA_LIBDIR - needed cuda library directory #INCLUDE(${CMAKE_ROOT}/Modules/FindPackageHandleStandardArgs.cmake) MESSAGE ("----------------------") MESSAGE ("-- AMGX + CUDA:") FIND_PACKAGE(CUDA) MESSAGE("-- Cuda libraries: " ${CUDA_LIBRARIES}) SET(AMGX_FOUND FALSE) FIND_PATH(AMGX_INCLUDE_DIR amgx_c.h HINTS "${AMGXINCLUDE}" "${AMGX_ROOT}/include" ) FIND_LIBRARY(AMGX_LIBRARY NAMES amgx libamgx.a NAMES_PER_DIR HINTS "${AMGX_ROOT}/lib" "${AMGXLIB}" REQUIRED ) IF (AMGX_LIBRARY AND AMGX_INCLUDE_DIR) SET (AMGX_FOUND TRUE) ENDIF() IF (AMGX_FOUND) SET(AMGX_INCLUDE_DIRS "${AMGX_INCLUDE_DIR}") SET(CUDA_LIBRARIES ${CUDA_LIBRARIES} ${CUDA_cusparse_LIBRARY} ${CUDA_cublas_LIBRARY} ${CUDA_cusolver_LIBRARY} ${CUDA_nvToolsExt_LIBRARY}) SET(AMGX_LIBRARIES ${AMGX_LIBRARY} ${CUDA_LIBRARIES}) MESSAGE ("-- AMGX found") MESSAGE ("-- AMGX_ROOT= ${AMGX_ROOT}") MESSAGE ("----------------------") ELSE() MESSAGE (FATAL_ERROR, "AMGX not found") ENDIF() MARK_AS_ADVANCED( AMGX_FOUND AMGX_INCLUDE_DIR AMGX_LIBRARY CUDA_LIBRARIES CUDA_LIBDIR)