33 lines
1.0 KiB
CMake
33 lines
1.0 KiB
CMake
cmake_minimum_required(VERSION 2.8.8)
|
|
project(gtest_builder C CXX)
|
|
include(ExternalProject)
|
|
|
|
set(GTEST_FORCE_SHARED_CRT ON)
|
|
set(GTEST_DISABLE_PTHREADS OFF)
|
|
|
|
if(MINGW)
|
|
set(GTEST_DISABLE_PTHREADS ON)
|
|
endif()
|
|
|
|
ExternalProject_Add(googletest
|
|
GIT_REPOSITORY https://github.com/google/googletest.git
|
|
GIT_TAG 07d45437f288e25db9f7c78ecbc4df8b5b81a47b
|
|
CMAKE_ARGS -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG:PATH=DebugLibs
|
|
-DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_RELEASE:PATH=ReleaseLibs
|
|
-DCMAKE_CXX_FLAGS=${MSVC_COMPILER_DEFS}
|
|
-Dgtest_force_shared_crt=${GTEST_FORCE_SHARED_CRT}
|
|
-Dgtest_disable_pthreads=${GTEST_DISABLE_PTHREADS}
|
|
-DBUILD_GTEST=ON
|
|
PREFIX "${CMAKE_CURRENT_BINARY_DIR}"
|
|
# Disable install step
|
|
INSTALL_COMMAND ""
|
|
)
|
|
|
|
# Specify include dir
|
|
ExternalProject_Get_Property(googletest source_dir)
|
|
set(GTEST_INCLUDE_DIRS ${source_dir}/googletest/include PARENT_SCOPE)
|
|
|
|
# Specify MainTest's link libraries
|
|
ExternalProject_Get_Property(googletest binary_dir)
|
|
set(GTEST_LIBS_DIR ${binary_dir}/googlemock/gtest PARENT_SCOPE)
|