cmake_minimum_required(VERSION 3.21) project(toddcox-visualize) set(CMAKE_CXX_STANDARD 17) include(FetchContent) include(External/glfw.cmake) include(External/imgui.cmake) include(External/eigen.cmake) include(External/glad.cmake) include(External/json.cmake) include_directories(include) add_subdirectory(tc) add_custom_target(resources DEPENDS resources_output) add_custom_command( OUTPUT resources_output COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_CURRENT_SOURCE_DIR}/res ${CMAKE_CURRENT_BINARY_DIR}/res COMMENT "Copying Resources") add_executable(vis src/main.cpp src/gl/debug.hpp src/gl/shader.hpp src/gl/buffer.hpp src/gl/vertexarray.hpp src/gl/types.hpp) target_link_libraries(vis glfw glad imgui eigen nlohmann_json) add_dependencies(vis resources) add_executable(serial src/serialtest.cpp) target_link_libraries(serial eigen nlohmann_json) add_executable(tctest src/tctest.cpp) target_link_libraries(tctest PUBLIC eigen tc)