summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt21
1 files changed, 15 insertions, 6 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index da2c461..a4ab4ee 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,12 +1,14 @@
cmake_minimum_required(VERSION 3.13)
-project(opengltest)
+set(ENV{CUDAHOSTCXX} "g++-5")
+project(opengltest LANGUAGES C CXX CUDA)
set(CMAKE_CXX_STANDARD 14)
set(LIB_DIR "${CMAKE_CURRENT_SOURCE_DIR}/libraries")
find_package(OpenGL REQUIRED)
+find_package(CUDA)
-add_executable(${PROJECT_NAME} main.cpp point.h Canvas.h)
+add_executable(${PROJECT_NAME} main.cpp point.h Canvas/Canvas.h)
# GLFW
find_package(PkgConfig REQUIRED)
@@ -16,10 +18,11 @@ target_link_libraries(${PROJECT_NAME} ${GLFW_STATIC_LIBRARIES})
# GLAD
set(GLAD_DIR "${LIB_DIR}/glad")
-add_library("glad" "${GLAD_DIR}/src/glad.c")
-target_include_directories("glad" PRIVATE "${GLAD_DIR}/include")
+set(GLAD_NAME "glad")
+add_library(${GLAD_NAME} "${GLAD_DIR}/src/glad.c")
+target_include_directories(${GLAD_NAME} PRIVATE "${GLAD_DIR}/include")
target_include_directories(${PROJECT_NAME} PRIVATE "${GLAD_DIR}/include")
-target_link_libraries(${PROJECT_NAME} "glad" "${CMAKE_DL_LIBS}")
+target_link_libraries(${PROJECT_NAME} ${GLAD_NAME} "${CMAKE_DL_LIBS}")
# stb_image
target_include_directories(${PROJECT_NAME} PRIVATE "${LIB_DIR}/stb_image")
@@ -27,4 +30,10 @@ target_include_directories(${PROJECT_NAME} PRIVATE "${LIB_DIR}/stb_image")
# shader
target_include_directories(${PROJECT_NAME} PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/learnopengl")
-# Canvas
+# CUDA
+set(CUDA_LIB "cudalib")
+#target_include_directories(${PROJECT_NAME} PRIVATE "Canvas/")
+cuda_add_library(${CUDA_LIB} STATIC Canvas/cuda/CalculateCanvasGPU.cu Canvas/cuda/CalculateCanvasGPU.h OPTIONS -std=c++11)
+target_compile_features(${CUDA_LIB} PUBLIC cxx_std_11)
+set_target_properties(${CUDA_LIB} PROPERTIES CUDA_SEPARABLE_COMPILATION ON)
+target_link_libraries(${PROJECT_NAME} ${CUDA_LIB})