CMakeLists.txt 1.4 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. add_subdirectory(googletest)
  13. set(GTEST_TARGETS
  14. gtest
  15. gtest_main
  16. gmock
  17. gmock_main)
  18. foreach(target ${GTEST_TARGETS})
  19. set_property(TARGET ${target} PROPERTY FOLDER gtest)
  20. endforeach()
  21. mark_as_advanced(gmock_build_tests
  22. BUILD_GMOCK
  23. BUILD_GTEST
  24. BUILD_SHARED_LIBS
  25. gtest_build_samples
  26. gtest_build_tests
  27. gtest_disable_pthreads
  28. gtest_force_shared_crt
  29. gtest_hide_internal_symbols)
  30. else()
  31. message(STATUS
  32. "Google Mock was not found - tests based on that will not build")
  33. endif()
  34. endif()
  35. if(ENABLE_OPT AND NOT TARGET SPIRV-Tools-opt)
  36. if(IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/spirv-tools)
  37. set(SPIRV_SKIP_TESTS ON CACHE BOOL "Skip building SPIRV-Tools tests")
  38. add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/spirv-tools spirv-tools)
  39. endif()
  40. endif()