1#GL CTS Makefile 2 3set(KC_CTS_HOME "${PROJECT_SOURCE_DIR}/external/kc-cts" CACHE STRING "Home directory of Khronos Confidential CTS") 4set(GTF_HOME "${KC_CTS_HOME}/src/GTF_ES" CACHE STRING "Home directory of GTF test framework") 5 6if (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") 9 10 # Same for -Wunused-function 11 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-unused-function") 12endif () 13 14if (EXISTS "${GTF_HOME}/CMakeLists.txt") 15 set(DEQP_GTF_AVAILABLE ON) # Is GTF test framework available 16else () 17 set(DEQP_GTF_AVAILABLE OFF) 18endif () 19 20message(STATUS "DEQP_GTF_AVAILABLE = ${DEQP_GTF_AVAILABLE}") 21 22if (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) 28 29 add_definitions(-DDEQP_GTF_AVAILABLE=1) 30 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) 41 else () 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") 45 endif () 46endif() 47 48message(STATUS "GLCTS_GTF_SUPPORT_OPENGL = ${GLCTS_GTF_SUPPORT_OPENGL}") 49message(STATUS "GLCTS_GTF_SUPPORT_GLES32 = ${GLCTS_GTF_SUPPORT_GLES32}") 50message(STATUS "GLCTS_GTF_SUPPORT_GLES31 = ${GLCTS_GTF_SUPPORT_GLES31}") 51message(STATUS "GLCTS_GTF_SUPPORT_GLES3 = ${GLCTS_GTF_SUPPORT_GLES3}") 52message(STATUS "GLCTS_GTF_SUPPORT_GLES2 = ${GLCTS_GTF_SUPPORT_GLES2}") 53 54set(GLCTS_GTF_SUPPORT_EGL ON) 55 56include_directories( 57 include 58 framework/egl/wrapper 59 ) 60 61add_subdirectory(modules) 62 63if (DEQP_GTF_AVAILABLE) 64 add_subdirectory(${GTF_HOME} GTF) 65endif () 66 67# Pass DEQP_MODULE_LIBRARIES and DEQP_MODULE_ENTRY_POINTS 68set(DEQP_MODULE_LIBRARIES ${DEQP_MODULE_LIBRARIES} PARENT_SCOPE) 69set(DEQP_MODULE_ENTRY_POINTS ${DEQP_MODULE_ENTRY_POINTS} PARENT_SCOPE) 70