3 set(KC_CTS_HOME "${PROJECT_SOURCE_DIR}/external/kc-cts" CACHE STRING "Home directory of Khronos Confidential CTS")
4 set(GTF_HOME "${KC_CTS_HOME}/src/GTF_ES" CACHE STRING "Home directory of GTF test framework")
6 if (DE_COMPILER_IS_GCC OR DE_COMPILER_IS_CLANG)
7 # -Wconversion generates a LOT of warnings in this code base
8 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-conversion")
10 # Same for -Wunused-function
11 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-unused-function")
14 if (EXISTS "${GTF_HOME}/CMakeLists.txt")
15 set(DEQP_GTF_AVAILABLE ON) # Is GTF test framework available
17 set(DEQP_GTF_AVAILABLE OFF)
20 message(STATUS "DEQP_GTF_AVAILABLE = ${DEQP_GTF_AVAILABLE}")
22 if (DEQP_GTF_AVAILABLE)
23 set(GLCTS_GTF_SUPPORT_GLES32 OFF)
24 set(GLCTS_GTF_SUPPORT_GLES31 OFF)
25 set(GLCTS_GTF_SUPPORT_GLES3 OFF)
26 set(GLCTS_GTF_SUPPORT_GLES2 OFF)
27 set(GLCTS_GTF_SUPPORT_OPENGL OFF)
29 add_definitions(-DDEQP_GTF_AVAILABLE=1)
31 if (GLCTS_GTF_TARGET STREQUAL "gl")
32 set(GLCTS_GTF_SUPPORT_OPENGL ON)
33 elseif (GLCTS_GTF_TARGET STREQUAL "gles32")
34 set(GLCTS_GTF_SUPPORT_GLES32 ON)
35 elseif (GLCTS_GTF_TARGET STREQUAL "gles31")
36 set(GLCTS_GTF_SUPPORT_GLES31 ON)
37 elseif (GLCTS_GTF_TARGET STREQUAL "gles3")
38 set(GLCTS_GTF_SUPPORT_GLES3 ON)
39 elseif (GLCTS_GTF_TARGET STREQUAL "gles2")
40 set(GLCTS_GTF_SUPPORT_GLES2 ON)
42 set(GLCTS_GTF_SUPPORT_GLES32 ON)
43 message(WARNING "GLCTS_GTF_TARGET invalid or not defined, allowed options are [gl, gles32, gles31, gles3, gles2]")
44 message(WARNING "GLCTS_GTF_TARGET is set to gles32")
48 message(STATUS "GLCTS_GTF_SUPPORT_OPENGL = ${GLCTS_GTF_SUPPORT_OPENGL}")
49 message(STATUS "GLCTS_GTF_SUPPORT_GLES32 = ${GLCTS_GTF_SUPPORT_GLES32}")
50 message(STATUS "GLCTS_GTF_SUPPORT_GLES31 = ${GLCTS_GTF_SUPPORT_GLES31}")
51 message(STATUS "GLCTS_GTF_SUPPORT_GLES3 = ${GLCTS_GTF_SUPPORT_GLES3}")
52 message(STATUS "GLCTS_GTF_SUPPORT_GLES2 = ${GLCTS_GTF_SUPPORT_GLES2}")
54 set(GLCTS_GTF_SUPPORT_EGL ON)
61 add_subdirectory(modules)
63 if (DEQP_GTF_AVAILABLE)
64 add_subdirectory(${GTF_HOME} GTF)
67 # Pass DEQP_MODULE_LIBRARIES and DEQP_MODULE_ENTRY_POINTS
68 set(DEQP_MODULE_LIBRARIES ${DEQP_MODULE_LIBRARIES} PARENT_SCOPE)
69 set(DEQP_MODULE_ENTRY_POINTS ${DEQP_MODULE_ENTRY_POINTS} PARENT_SCOPE)