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}")