CMakeLists.txt 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. cmake_minimum_required(VERSION 3.8.2)
  2. # List all files containing tests. (Change as needed)
  3. set(TESTFILES
  4. runner.c
  5. src/test_euler.c
  6. src/test_bezier.c
  7. src/test_cam.c
  8. src/test_cam_lh_zo.c
  9. src/test_cam_rh_zo.c
  10. src/test_cam_lh_no.c
  11. src/test_cam_rh_no.c
  12. src/test_struct.c
  13. src/test_clamp.c
  14. src/test_common.c
  15. src/tests.c
  16. )
  17. set(TEST_MAIN tests)
  18. set(TEST_RUNNER_PARAMS "")
  19. add_executable(${TEST_MAIN} ${TESTFILES})
  20. target_compile_definitions(${TEST_MAIN} PRIVATE CGLM_DEFINE_PRINTS=1)
  21. if(NOT MSVC)
  22. target_link_libraries(${TEST_MAIN} PRIVATE m)
  23. endif()
  24. target_link_libraries(${TEST_MAIN} PRIVATE cglm)
  25. target_include_directories(${TEST_MAIN} PRIVATE
  26. ${CMAKE_CURRENT_LIST_DIR}/include
  27. ${CMAKE_CURRENT_LIST_DIR}/src
  28. )
  29. set_target_properties(${TEST_MAIN} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR})
  30. if(LDFLAGS)
  31. target_compile_options(${TEST_MAIN} PRIVATE ${LDFLAGS})
  32. endif()
  33. add_test(
  34. NAME cglm.${TEST_MAIN}
  35. COMMAND ${TEST_MAIN} ${TEST_RUNNER_PARAMS})
  36. add_custom_target(check
  37. make
  38. COMMAND ${CMAKE_CTEST_COMMAND} -V
  39. DEPENDS cglm)