Merge pull request #5 from swift-nav/kdade/yaml-gtest-fixups

Couple tweaks to the CMake around gtest.
This commit is contained in:
Kevin Dade 2019-09-04 14:26:05 -07:00 committed by GitHub
commit 551f95d171
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -7,13 +7,15 @@ if(MSVC)
set(CMAKE_STATIC_LIBRARY_PREFIX "") set(CMAKE_STATIC_LIBRARY_PREFIX "")
endif() endif()
if (NOT TARGET gmock) if (NOT TARGET gmock OR NOT TARGET gtest)
ExternalProject_Add( ExternalProject_Add(
googletest_project googletest_project
SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/gtest-1.8.0" SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/gtest-1.8.0"
INSTALL_DIR "${CMAKE_CURRENT_BINARY_DIR}/prefix" INSTALL_DIR "${CMAKE_CURRENT_BINARY_DIR}/prefix"
CMAKE_ARGS CMAKE_ARGS
-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}
-DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
-DBUILD_GTEST=ON
-DBUILD_GMOCK=ON -DBUILD_GMOCK=ON
-Dgtest_force_shared_crt=ON -Dgtest_force_shared_crt=ON
) )
@ -21,15 +23,18 @@ ExternalProject_Add(
add_library(gtest UNKNOWN IMPORTED) add_library(gtest UNKNOWN IMPORTED)
add_dependencies(gtest googletest_project) add_dependencies(gtest googletest_project)
set_target_properties(gtest PROPERTIES set_target_properties(gtest PROPERTIES
IMPORTED_LOCATION INTERFACE_INCLUDE_DIRECTORIES
${PROJECT_BINARY_DIR}/test/prefix/lib/${CMAKE_STATIC_LIBRARY_PREFIX}gtest${CMAKE_STATIC_LIBRARY_SUFFIX} ${CMAKE_CURRENT_SOURCE_DIR}/gtest-1.8.0/googletest/include
) IMPORTED_LOCATION
${PROJECT_BINARY_DIR}/test/prefix/lib/${CMAKE_STATIC_LIBRARY_PREFIX}gtest${CMAKE_STATIC_LIBRARY_SUFFIX})
add_library(gmock UNKNOWN IMPORTED) add_library(gmock UNKNOWN IMPORTED)
add_dependencies(gmock googletest_project) add_dependencies(gmock googletest_project)
set_target_properties(gmock PROPERTIES set_target_properties(gmock PROPERTIES
IMPORTED_LOCATION INTERFACE_INCLUDE_DIRECTORIES
${PROJECT_BINARY_DIR}/test/prefix/lib/${CMAKE_STATIC_LIBRARY_PREFIX}gmock${CMAKE_STATIC_LIBRARY_SUFFIX} ${CMAKE_CURRENT_SOURCE_DIR}/gtest-1.8.0/googlemock/include
) IMPORTED_LOCATION
${PROJECT_BINARY_DIR}/test/prefix/lib/${CMAKE_STATIC_LIBRARY_PREFIX}gmock${CMAKE_STATIC_LIBRARY_SUFFIX})
endif() endif()
find_package(Threads) find_package(Threads)