CMakeLists.txt 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. # Suppress all warnings from external projects.
  2. set_property(DIRECTORY APPEND PROPERTY COMPILE_OPTIONS -w)
  3. if(BUILD_TESTING)
  4. if(TARGET gmock)
  5. message(STATUS "Google Mock already configured - use it")
  6. elseif(IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/googletest)
  7. # We need to make sure Google Test does not mess up with the
  8. # global CRT settings on Windows.
  9. if(WIN32)
  10. set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
  11. endif(WIN32)
  12. # EXCLUDE_FROM_ALL keeps the install target from installing GTEST files.
  13. add_subdirectory(googletest EXCLUDE_FROM_ALL)
  14. set(GTEST_TARGETS
  15. gtest
  16. gtest_main
  17. gmock
  18. gmock_main)
  19. foreach(target ${GTEST_TARGETS})
  20. set_property(TARGET ${target} PROPERTY FOLDER gtest)
  21. endforeach()
  22. mark_as_advanced(gmock_build_tests
  23. BUILD_GMOCK
  24. BUILD_GTEST
  25. BUILD_SHARED_LIBS
  26. gtest_build_samples
  27. gtest_build_tests
  28. gtest_disable_pthreads
  29. gtest_force_shared_crt
  30. gtest_hide_internal_symbols)
  31. else()
  32. message(STATUS
  33. "Google Mock was not found - tests based on that will not build")
  34. endif()
  35. endif()
  36. if(ENABLE_OPT AND NOT TARGET SPIRV-Tools-opt)
  37. if(IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/spirv-tools)
  38. set(SPIRV_SKIP_TESTS ON CACHE BOOL "Skip building SPIRV-Tools tests")
  39. add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/spirv-tools spirv-tools)
  40. endif()
  41. endif()