|
|
|
cmake_minimum_required(VERSION 3.16)
|
|
|
|
project(static_simulation_gui)
|
|
|
|
|
|
|
|
list(PREPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
|
|
|
|
|
|
|
|
## libigl options
|
|
|
|
#option(LIBIGL_USE_STATIC_LIBRARY "Use libigl as static library" OFF)
|
|
|
|
#option(LIBIGL_WITH_PREDICATES "Use exact predicates" ON)
|
|
|
|
#set(LIBIGL_WITH_OPENGL_GLFW_IMGUI ON CACHE BOOL "Use OpenGL" FORCE)
|
|
|
|
#set(LIBIGL_WITH_OPENGL_GLFW ON CACHE BOOL "Use GLFW" FORCE)
|
|
|
|
#set(LIBIGL_WITH_OPENGL ON CACHE BOOL "Use IMGUI" FORCE)
|
|
|
|
#set(LIBIGL_WITH_PNG ON CACHE BOOL "Use PNG" FORCE)
|
|
|
|
|
|
|
|
# Libigl
|
|
|
|
include(libigl)
|
|
|
|
|
|
|
|
# Enable the target igl::glfw
|
|
|
|
igl_include(core)
|
|
|
|
igl_include(glfw)
|
|
|
|
igl_include(imgui)
|
|
|
|
igl_include(png)
|
|
|
|
igl_include(predicates)
|
|
|
|
|
|
|
|
# Add your project files
|
|
|
|
file(GLOB SRC_FILES src/main.cpp src/viewer/*.cpp)
|
|
|
|
add_executable(${PROJECT_NAME} ${SRC_FILES})
|
|
|
|
target_link_libraries(${PROJECT_NAME} PUBLIC igl::core igl::glfw igl::imgui igl::png)
|
|
|
|
set(libigl_tutorial_tata_SOURCE_DIR /home/cflin/Documents/CppField/libs/libigl/cmake-build-debug/_deps/libigl_tutorial_tata-src)
|
|
|
|
target_compile_definitions(${PROJECT_NAME} PUBLIC TUTORIAL_SHARED_PATH="${libigl_tutorial_tata_SOURCE_DIR}")
|
|
|
|
|
|
|
|
# Eigen3
|
|
|
|
include(eigen)
|
|
|
|
target_link_libraries(${PROJECT_NAME} PUBLIC Eigen3::Eigen)
|
|
|
|
|
|
|
|
# JSON Parser
|
|
|
|
include(json)
|
|
|
|
target_link_libraries(${PROJECT_NAME} PUBLIC nlohmann::json)
|
|
|
|
|
|
|
|
# Logger
|
|
|
|
include(spdlog)
|
|
|
|
target_link_libraries(${PROJECT_NAME} PUBLIC spdlog::spdlog)
|
|
|
|
|
|
|
|
# TBB
|
|
|
|
include(tbb)
|
|
|
|
target_link_libraries(${PROJECT_NAME} PUBLIC TBB::tbb)
|
|
|
|
|
|
|
|
# subdirectory
|
|
|
|
# MshIO
|
|
|
|
add_subdirectory(${CMAKE_SOURCE_DIR}/3rd/MshIO)
|
|
|
|
add_subdirectory(${CMAKE_SOURCE_DIR}/src/static_sim)
|
|
|
|
add_subdirectory(${CMAKE_SOURCE_DIR}/sim-test/rigid-test)
|
|
|
|
|
|
|
|
# static sim
|
|
|
|
target_link_libraries(${PROJECT_NAME} PUBLIC StaticSim)
|
|
|
|
|
|
|
|
target_compile_definitions(${PROJECT_NAME} PUBLIC CMAKE_SOURCE_DIR="${CMAKE_SOURCE_DIR}")
|
|
|
|
#add_compile_definitions(DEBUG_SSIM) # for auto load json
|