
The existing test harness is a homemade shell script. All the tests and the expected results are written in plain text files. The harness just reads in a test, invoke the glslangValidator binary on it, and compare the result with the golden file. All tests are kinda integration tests. This patch add Google Test as an external project, which provides a new harness for reading shader source files, compile to SPIR-V, and then compare with the expected output.
17 lines
560 B
CMake
17 lines
560 B
CMake
# Suppress all warnings from external projects.
|
|
set_property(DIRECTORY APPEND PROPERTY COMPILE_OPTIONS -w)
|
|
|
|
if (TARGET gmock)
|
|
message(STATUS "Google Mock already configured - use it")
|
|
elseif(IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/googletest)
|
|
# We need to make sure Google Test does not mess up with the
|
|
# global CRT settings on Windows.
|
|
if(WIN32)
|
|
set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
|
|
endif(WIN32)
|
|
add_subdirectory(googletest)
|
|
else()
|
|
message(STATUS
|
|
"Google Mock was not found - tests based on that will not build")
|
|
endif()
|