if(NOT IS_MSVC) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC") endif() add_definitions("-DSIFTGPU_NO_DEVIL") # OpenGL find_package(OpenGL REQUIRED) # GLUT find_package(GLUT REQUIRED) # Glew find_package(GLEW REQUIRED) find_package(CUDA REQUIRED) set(SIFT_GPU_SOURCE_FILES FrameBufferObject.cpp FrameBufferObject.h GlobalUtil.cpp GlobalUtil.h GLTexImage.cpp GLTexImage.h ProgramGLSL.cpp ProgramGLSL.h ProgramGPU.h PyramidGL.cpp PyramidGL.h ShaderMan.cpp ShaderMan.h SiftGPU.cpp SiftGPU.h SiftMatch.cpp SiftMatch.h SiftPyramid.cpp SiftPyramid.h ) find_package(CUDA) if(CUDA_FOUND) add_definitions("-DCUDA_SIFTGPU_ENABLED") # Fix for Ubuntu 16.04. add_definitions("-D_FORCE_INLINES") set(SIFT_GPU_SOURCE_FILES ${SIFT_GPU_SOURCE_FILES} CuTexImage.cpp CuTexImage.h ProgramCU.cu ProgramCU.h PyramidCU.cpp PyramidCU.h SiftMatchCU.cpp SiftMatchCU.h ) cuda_add_library(sift_gpu SHARED ${SIFT_GPU_SOURCE_FILES}) else() infrascal_library(sift_gpu SHARED ${SIFT_GPU_SOURCE_FILES}) endif() target_link_libraries(sift_gpu ${SIFT_GPU_LIBRARIES} ${GLEW_LIBRARIES} ${GLUT_LIBRARIES} ${OPENGL_LIBRARIES} )