CMakeLists.txt 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. cmake_minimum_required(VERSION 3.1)
  2. project(libigl_tests)
  3. list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/../cmake)
  4. ### Adding libIGL: choose the path to your local copy libIGL
  5. if(NOT TARGET igl_common)
  6. include(libigl)
  7. else()
  8. include(LibiglDownloadExternal)
  9. endif()
  10. ### Download data
  11. igl_download_test_data()
  12. set(IGL_TEST_DATA ${LIBIGL_EXTERNAL}/../tests/data)
  13. ### Download Google unit test framework.
  14. igl_download_googletest()
  15. SET(TEST_ROOT_DIR ${CMAKE_CURRENT_LIST_DIR})
  16. INCLUDE_DIRECTORIES(${TEST_ROOT_DIR})
  17. # Set TEST_DIR definition
  18. ADD_DEFINITIONS(-DLIBIGL_DATA_DIR="${IGL_TEST_DATA}")
  19. # Add googletest googlemock support
  20. ENABLE_TESTING()
  21. ADD_SUBDIRECTORY(
  22. ${LIBIGL_EXTERNAL}/googletest/googlemock
  23. ${CMAKE_CURRENT_BINARY_DIR}/gtest)
  24. SET(GTEST_BOTH_LIBRARIES gtest gmock)
  25. INCLUDE_DIRECTORIES(${gmock_SOURCE_DIR})
  26. INCLUDE_DIRECTORIES(${gmock_SOURCE_DIR}/include)
  27. INCLUDE_DIRECTORIES(${gtest_SOURCE_DIR})
  28. INCLUDE_DIRECTORIES(${gtest_SOURCE_DIR}/include)
  29. # Process code in each subdirectories: add in decreasing order of complexity
  30. # (last added will run first and those should be the fastest tests)
  31. IF(LIBIGL_WITH_MOSEK)
  32. ADD_SUBDIRECTORY(${TEST_ROOT_DIR}/include/igl/mosek)
  33. ENDIF()
  34. IF(LIBIGL_WITH_CGAL)
  35. ADD_SUBDIRECTORY(${TEST_ROOT_DIR}/include/igl/copyleft/boolean)
  36. ADD_SUBDIRECTORY(${TEST_ROOT_DIR}/include/igl/copyleft/cgal)
  37. ENDIF()
  38. IF(LIBIGL_WITH_TETGEN)
  39. ADD_SUBDIRECTORY(${TEST_ROOT_DIR}/include/igl/copyleft/tetgen)
  40. ENDIF()
  41. IF(LIBIGL_WITH_COMISO)
  42. ADD_SUBDIRECTORY(${TEST_ROOT_DIR}/include/igl/copyleft/comiso)
  43. ENDIF()
  44. ADD_SUBDIRECTORY(${TEST_ROOT_DIR}/include/igl)