cmake_minimum_required(VERSION 3.12)  # You can adjust the minimum required version
set(CMAKE_CUDA_ARCHITECTURES 70 75 89)  # Ti 2080 uses 75. V100 uses 70. RTX 4090 uses 89.

project(water_splatting CXX CUDA)
set(CMAKE_CXX_STANDARD 14)
set(CMAKE_CXX_EXTENSIONS OFF)
set(CMAKE_CUDA_STANDARD 14)

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")

# our library library
add_library(water_splatting forward.cu backward.cu helpers.cuh)
target_link_libraries(water_splatting PUBLIC cuda)
target_include_directories(water_splatting PRIVATE
    ${PROJECT_SOURCE_DIR}/third_party/glm
    ${CMAKE_CUDA_TOOLKIT_INCLUDE_DIRECTORIES}
)
set_target_properties(water_splatting PROPERTIES CUDA_ARCHITECTURES "70;75;89")





# # To add an executable that uses the water_splatting library,
# # follow example in the comments for a script `run_forward.cpp`
# # Add the executable
# add_executable(run_forward run_forward.cpp)

# # Link against CUDA runtime library
#target_link_libraries(run_forward PUBLIC cuda water_splatting)

# # Include directories for the header-only library
#target_include_directories(run_forward PRIVATE
#    ${PROJECT_SOURCE_DIR}/third_party/glm
#)


