You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

43 lines
1.9 KiB

  1. # Initialize ######################################################################################
  2. Include ( cotire OPTIONAL RESULT_VARIABLE HAS_COTIRE )
  3. Include ( pedantic OPTIONAL RESULT_VARIABLE HAS_PEDANTIC )
  4. Include ( cmake_tests OPTIONAL RESULT_VARIABLE HAS_CMAKE_TESTS )
  5. If ( HAS_PEDANTIC )
  6. Pedantic_Apply_Flags ( ALL )
  7. EndIf ( )
  8. # Test ############################################################################################
  9. Find_Package ( GTest )
  10. If ( NOT "${GTest_FOUND}" )
  11. Return ( )
  12. EndIf ( )
  13. File ( GLOB_RECURSE LIBHELLOWORLD_TEST_HEADER_FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.h )
  14. File ( GLOB_RECURSE LIBHELLOWORLD_TEST_INLINE_FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.inl )
  15. File ( GLOB_RECURSE LIBHELLOWORLD_TEST_SOURCE_FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp )
  16. Add_Executable ( libhelloworld-test
  17. EXCLUDE_FROM_ALL
  18. ${LIBHELLOWORLD_TEST_HEADER_FILES}
  19. ${LIBHELLOWORLD_TEST_INLINE_FILES}
  20. ${LIBHELLOWORLD_TEST_SOURCE_FILES} )
  21. Target_Link_Libraries ( libhelloworld-test
  22. PUBLIC
  23. libhelloworld-objects
  24. GTest::Main )
  25. # optimization
  26. If ( HAS_COTIRE )
  27. Cotire ( libhelloworld-test )
  28. EndIf ( )
  29. # test
  30. If ( HAS_CMAKE_TESTS )
  31. Add_CMake_Test ( NAME libhelloworld TARGET libhelloworld-test )
  32. Else ( )
  33. Add_Test ( NAME libhelloworld COMMAND libhelloworld-test )
  34. EndIf ( )