# Globally-Optimal Gaussian Mixture Alignment (GOGMA): CMakeLists
# 
# Campbell, D., and Petersson, L., "GOGMA: Globally-Optimal Gaussian
# Mixture Alignment", IEEE Conference on Computer Visision and
# Pattern Recognition (CVPR), Las Vegas, USA, IEEE, Jun. 2016
# 
# For the full license, see license.txt in the root directory
# 
# Author: Dylan Campbell
# Date: 20160212
# Revision: 1.1

PROJECT(GOGMA)

CMAKE_MINIMUM_REQUIRED(VERSION 2.8 FATAL_ERROR)

# Set to appropriate folder
SET(VXL_DIR /home/users/dylan/vxl/bin)

FIND_PACKAGE(VXL REQUIRED)

IF(VXL_FOUND)
	INCLUDE(${VXL_CMAKE_DIR}/UseVXL.cmake)
ENDIF(VXL_FOUND)

INCLUDE_DIRECTORIES(${VXL_VNL_INCLUDE_DIR})

FIND_PACKAGE(CUDA REQUIRED)

SET(CUDA_NVCC_FLAGS ${CUDA_NVCC_FLAGS}; -arch=sm_30)

SET(GOGMA_SRCS
	gogma_api.cpp
	gogma.cu
	svgm.cpp
	l2_cost_function.cpp
	config_map.cpp
	string_tokenizer.cpp
	svm.cpp
)

CUDA_ADD_EXECUTABLE(gogma ${GOGMA_SRCS})

TARGET_LINK_LIBRARIES(gogma vnl_algo vnl vcl)
