cmake_minimum_required(VERSION 3.21) project(SingularityJudger) set(CMAKE_CXX_STANDARD 14) include_directories(include) # 引入glm tinynurbs依赖 include_directories(E:/CLib/tinynurbs/include E:/CLib/glm) find_package(QT NAMES Qt6 Qt5 REQUIRED COMPONENTS Widgets) find_package(Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Widgets) add_executable(SingularityJudger main.cpp include/loop_detector.h src/loop_detector.cpp include/gauss_map.h src/gauss_map.cpp include/aabb.h src/aabb.cpp include/C2C4.h src/C2C4.cpp include/Range.h src/Range.cpp include/bvh.h src/bvh.cpp include/utils.h src/utils.cpp src/SingularityJudger.cpp include/SingularityJudger.h src/srf_mesh.cpp include/srf_mesh.h) # 将intersectTest的内容拷贝到build文件夹下 # 参考https://stackoverflow.com/questions/13429656/how-to-copy-contents-of-a-directory-into-build-directory-after-make-with-cmake add_custom_command(TARGET SingularityJudger PRE_BUILD COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SOURCE_DIR}/intersectTest/ $/intersectTest) target_link_libraries(SingularityJudger PRIVATE Qt${QT_VERSION_MAJOR}::Widgets)