triangle.cmake 943 B

1234567891011121314151617181920212223242526272829
  1. # 1. Define module
  2. igl_add_library(igl_restricted_triangle)
  3. # 2. Include headers
  4. include(GNUInstallDirs)
  5. target_include_directories(igl_restricted_triangle ${IGL_SCOPE}
  6. $<BUILD_INTERFACE:${libigl_SOURCE_DIR}/include>
  7. $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
  8. )
  9. # 3. Target sources
  10. file(GLOB INC_FILES "${libigl_SOURCE_DIR}/include/igl/triangle/*.h")
  11. file(GLOB SRC_FILES "${libigl_SOURCE_DIR}/include/igl/triangle/*.cpp")
  12. igl_target_sources(igl_restricted_triangle ${INC_FILES} ${SRC_FILES})
  13. # 4. Dependencies
  14. include(triangle)
  15. target_link_libraries(igl_restricted_triangle ${IGL_SCOPE}
  16. igl::core
  17. triangle::triangle
  18. )
  19. # 5. Unit tests
  20. file(GLOB SRC_FILES "${libigl_SOURCE_DIR}/tests/include/igl/triangle/*.cpp")
  21. igl_add_test(igl_restricted_triangle ${SRC_FILES})
  22. if(TARGET test_igl_restricted_triangle)
  23. igl_include(predicates)
  24. target_link_libraries(test_igl_restricted_triangle PUBLIC igl::predicates)
  25. endif()