|
|
|
@ -116,10 +116,14 @@ include_directories(${gtest_build_include_dirs}) |
|
|
|
|
# |
|
|
|
|
# Defines the gtest & gtest_main libraries. User tests should link |
|
|
|
|
# with one of them. |
|
|
|
|
# Production code that includes <gtest/gtest_prod.h> should link with the |
|
|
|
|
# interface library gtest_prod. |
|
|
|
|
|
|
|
|
|
# Google Test libraries. We build them using more strict warnings than what |
|
|
|
|
# are used for other targets, to ensure that gtest can be compiled by a user |
|
|
|
|
# aggressive about warnings. |
|
|
|
|
add_library_and_alias(gtest_prod INTERFACE) |
|
|
|
|
set_target_properties(gtest_prod PROPERTIES VERSION ${GOOGLETEST_VERSION}) |
|
|
|
|
cxx_library(gtest "${cxx_strict}" src/gtest-all.cc) |
|
|
|
|
set_target_properties(gtest PROPERTIES VERSION ${GOOGLETEST_VERSION}) |
|
|
|
|
if(GTEST_HAS_ABSL) |
|
|
|
@ -141,6 +145,9 @@ endif() |
|
|
|
|
cxx_library(gtest_main "${cxx_strict}" src/gtest_main.cc) |
|
|
|
|
set_target_properties(gtest_main PROPERTIES VERSION ${GOOGLETEST_VERSION}) |
|
|
|
|
string(REPLACE ";" "$<SEMICOLON>" dirs "${gtest_build_include_dirs}") |
|
|
|
|
target_include_directories(gtest_prod SYSTEM INTERFACE |
|
|
|
|
"$<BUILD_INTERFACE:${dirs}>" |
|
|
|
|
"$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/${CMAKE_INSTALL_INCLUDEDIR}>") |
|
|
|
|
target_include_directories(gtest SYSTEM INTERFACE |
|
|
|
|
"$<BUILD_INTERFACE:${dirs}>" |
|
|
|
|
"$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/${CMAKE_INSTALL_INCLUDEDIR}>") |
|
|
|
@ -155,7 +162,7 @@ target_link_libraries(gtest_main PUBLIC gtest) |
|
|
|
|
######################################################################## |
|
|
|
|
# |
|
|
|
|
# Install rules. |
|
|
|
|
install_project(gtest gtest_main) |
|
|
|
|
install_project(gtest_prod gtest gtest_main) |
|
|
|
|
|
|
|
|
|
######################################################################## |
|
|
|
|
# |
|
|
|
|