# This is an alternative CMakeLists.txt to the experimental one # shipped with the original package. It builds only the essential # for our tests. The WebKit version of gtest needs access to some # headers from WTF and JSC for configuration. set(GTEST_DIR "${THIRDPARTY_DIR}/gtest") set(GTEST_INCLUDE_DIRECTORIES "${GTEST_DIR}" "${GTEST_DIR}/include" "${JAVASCRIPTCORE_DIR}" "${DERIVED_SOURCES_DIR}" "${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}" "${WTF_DIR}" ) 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-port.cc ${GTEST_DIR}/src/gtest-test-part.cc ${GTEST_DIR}/src/gtest-typed-test.cc ) if (WIN32) # MSVC 2015 requires this definition for INTMAX_MAX to be defined. add_definitions(-D__STDC_LIMIT_MACROS -DGTEST_CREATE_SHARED_LIBRARY=0) # gtest crashes on exit on Windows if it is a dll. add_library(gtest STATIC ${GTEST_SOURCES}) else () add_definitions(-DGTEST_CREATE_SHARED_LIBRARY=1) add_library(gtest SHARED ${GTEST_SOURCES}) endif () include_directories(${GTEST_INCLUDE_DIRECTORIES}) add_definitions(-DGTEST_HAS_RTTI=0) # FIXME: This works around compatibility problems in the old version of the third-pary # googletest source code checkout. It should be removed once we upgrade to a newer version. if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") add_definitions(-DGTEST_HAS_TR1_TUPLE=0) endif () target_link_libraries(gtest WTF ) if (CMAKE_USE_PTHREADS_INIT) target_link_libraries(gtest ${CMAKE_THREAD_LIBS_INIT}) add_definitions(-DGTEST_HAS_PTHREAD=1) endif ()