# This is an alternative CMakeLists.txt to the experimental one # shipped with the original package. It builds only the essential # for our tests. set(GTEST_DIR "${THIRDPARTY_DIR}/gtest") set(GTEST_INCLUDE_DIRECTORIES "${GTEST_DIR}" "${GTEST_DIR}/include" ) set(GTEST_SOURCES ${GTEST_DIR}/src/gtest.cc ${GTEST_DIR}/src/gtest-death-test.cc ${GTEST_DIR}/src/gtest-filepath.cc ${GTEST_DIR}/src/gtest_main.cc ${GTEST_DIR}/src/gtest-matchers.cc ${GTEST_DIR}/src/gtest-port.cc ${GTEST_DIR}/src/gtest-printers.cc ${GTEST_DIR}/src/gtest-test-part.cc ${GTEST_DIR}/src/gtest-typed-test.cc ) set(gtest_DEFINITIONS GTEST_HAS_RTTI=0) # Additional gtest configuration can be added in the port's cmake file WEBKIT_INCLUDE_CONFIG_FILES_IF_EXISTS() # By default use a shared library if (NOT DEFINED gtest_LIBRARY_TYPE) set(gtest_LIBRARY_TYPE SHARED) endif () if (gtest_LIBRARY_TYPE MATCHES SHARED) list(APPEND gtest_DEFINITIONS GTEST_CREATE_SHARED_LIBRARY=1) add_library(gtest SHARED ${GTEST_SOURCES}) else () list(APPEND gtest_DEFINITIONS GTEST_CREATE_SHARED_LIBRARY=0) add_library(gtest STATIC ${GTEST_SOURCES}) endif () target_include_directories(gtest PRIVATE ${GTEST_INCLUDE_DIRECTORIES}) WEBKIT_ADD_TARGET_CXX_FLAGS(gtest -Wno-undef -Wno-stringop-truncation -Wno-suggest-attribute=format) if (CMAKE_USE_PTHREADS_INIT) target_link_libraries(gtest PRIVATE ${CMAKE_THREAD_LIBS_INIT}) list(APPEND gtest_DEFINITIONS GTEST_HAS_PTHREAD=1) else () list(APPEND gtest_DEFINITIONS GTEST_HAS_PTHREAD=0) endif () target_compile_definitions(gtest PRIVATE ${gtest_DEFINITIONS}) add_library(gtestFramework INTERFACE) target_link_libraries(gtestFramework INTERFACE gtest) target_include_directories(gtestFramework INTERFACE "${GTEST_DIR}/include") target_compile_definitions(gtestFramework INTERFACE ${gtest_DEFINITIONS}) add_library(WebKit::gtest ALIAS gtestFramework)