CONFIGURE_FILE(gincsvd_config.h.in gincsvd_config.h)
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR})

SET(CUDA_SRCS gincsvd_kernels_inst.cu)
CUDA_COMPILE(CUDA_OBJS ${CUDA_SRCS})

SET(SOURCES gincsvd.cpp gincsvd.hpp)
ADD_LIBRARY(gincsvd ${SOURCES} ${CUDA_OBJS})

IF(GINCSVD_USE_CULA_CUDA_LIBS)
  TARGET_LINK_LIBRARIES(gincsvd ${libcula_cudart})
  TARGET_LINK_LIBRARIES(gincsvd ${libcula_cublas})
ELSE()
  TARGET_LINK_LIBRARIES(gincsvd ${CUDA_CUDART_LIBRARY})
  CUDA_ADD_CUBLAS_TO_TARGET(gincsvd)
ENDIF()

TARGET_LINK_LIBRARIES(gincsvd ${libcula_lapack})
TARGET_LINK_LIBRARIES(gincsvd ${libcula_core})
