CMakeLists.txt revision dc0f95d653279beabeb9817299e2902918ba123e
1c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch######################################################################## 2731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick# CMake build script for Google Test. 3c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# 4c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# To run the tests for Google Test itself on Linux, use 'make test' or 5c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# ctest. You can select which tests to run using 'ctest -R regex'. 6c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# For more options, run 'ctest --help'. 7c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 83345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick# BUILD_SHARED_LIBS is a standard CMake variable, but we declare it here to 93345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick# make it prominent in the GUI. 103345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrickoption(BUILD_SHARED_LIBS "Build shared libraries (DLLs)." OFF) 113345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 123345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick# When other libraries are using a shared version of runtime libraries, 133345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick# Google Test also has to use one. 143345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrickoption( 153345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick gtest_force_shared_crt 163345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick "Use shared (DLL) run-time lib even when Google Test is built as static lib." 173345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick OFF) 183345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 193345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrickoption(gtest_build_tests "Build all of gtest's own tests." OFF) 203345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 213345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrickoption(gtest_build_samples "Build gtest's sample programs." OFF) 223345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 23731df977c0511bca2206b5f333555b1205ff1f43Iain Merrickoption(gtest_disable_pthreads "Disable uses of pthreads in gtest." OFF) 24731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick 25731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick# Defines pre_project_set_up_hermetic_build() and set_up_hermetic_build(). 263345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrickinclude(cmake/hermetic_build.cmake OPTIONAL) 273345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 283345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrickif (COMMAND pre_project_set_up_hermetic_build) 293345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick pre_project_set_up_hermetic_build() 30c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdochendif() 31c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 32c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch######################################################################## 33c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# 34c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# Project-wide settings 35c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 36c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# Name of the project. 37c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# 38c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# CMake files in this project can refer to the root source directory 39c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# as ${gtest_SOURCE_DIR} and to the root binary directory as 40c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# ${gtest_BINARY_DIR}. 41c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# Language "C" is required for find_package(Threads). 42c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdochproject(gtest CXX C) 433345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrickcmake_minimum_required(VERSION 2.6.2) 443345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 453345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrickif (COMMAND set_up_hermetic_build) 463345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick set_up_hermetic_build() 47c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdochendif() 48c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 49731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick# Define helper functions and macros used by Google Test. 503345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrickinclude(cmake/internal_utils.cmake) 513345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 52731df977c0511bca2206b5f333555b1205ff1f43Iain Merrickconfig_compiler_and_linker() # Defined in internal_utils.cmake. 533345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 543345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick# Where Google Test's .h files can be found. 55c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdochinclude_directories( 56c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch ${gtest_SOURCE_DIR}/include 57c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch ${gtest_SOURCE_DIR}) 58c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 593345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick# Where Google Test's libraries can be found. 603345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merricklink_directories(${gtest_BINARY_DIR}/src) 61c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 62c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch######################################################################## 63c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# 64c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# Defines the gtest & gtest_main libraries. User tests should link 65c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# with one of them. 663345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 673345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick# Google Test libraries. We build them using more strict warnings than what 683345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick# are used for other targets, to ensure that gtest can be compiled by a user 693345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick# aggressive about warnings. 703345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrickcxx_library(gtest "${cxx_strict}" src/gtest-all.cc) 713345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrickcxx_library(gtest_main "${cxx_strict}" src/gtest_main.cc) 72c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdochtarget_link_libraries(gtest_main gtest) 73c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 74c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch######################################################################## 75c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# 76c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# Samples on how to link user tests with gtest or gtest_main. 77c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# 78c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# They are not built by default. To build them, set the 793345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick# gtest_build_samples option to ON. You can do it by running ccmake 80c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# or specifying the -Dbuild_gtest_samples=ON flag when running cmake. 81c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 823345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrickif (gtest_build_samples) 83c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(sample1_unittest samples gtest_main samples/sample1.cc) 84c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(sample2_unittest samples gtest_main samples/sample2.cc) 85c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(sample3_unittest samples gtest_main) 86c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(sample4_unittest samples gtest_main samples/sample4.cc) 87c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(sample5_unittest samples gtest_main samples/sample1.cc) 88c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(sample6_unittest samples gtest_main) 89c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(sample7_unittest samples gtest_main) 90c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(sample8_unittest samples gtest_main) 91c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(sample9_unittest samples gtest) 92c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(sample10_unittest samples gtest) 93c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdochendif() 94c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 95c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch######################################################################## 96c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# 97c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# Google Test's own tests. 98c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# 99c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# You can skip this section if you aren't interested in testing 100c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# Google Test itself. 101c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch# 1023345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick# The tests are not built by default. To build them, set the 1033345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick# gtest_build_tests option to ON. You can do it by running ccmake 1043345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick# or specifying the -Dgtest_build_tests=ON flag when running cmake. 105c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 1063345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrickif (gtest_build_tests) 1073345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick # This must be set in the root directory for the tests to be run by 1083345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick # 'make test' or ctest. 1093345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick enable_testing() 110c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 1113345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick ############################################################ 1123345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick # C++ tests built with standard compiler flags. 113c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 114c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test(gtest-death-test_test gtest_main) 115c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test(gtest_environment_test gtest) 116c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test(gtest-filepath_test gtest_main) 117c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test(gtest-linked_ptr_test gtest_main) 118c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test(gtest-listener_test gtest_main) 119c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test(gtest_main_unittest gtest_main) 120c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test(gtest-message_test gtest_main) 121c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test(gtest_no_test_unittest gtest) 122c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test(gtest-options_test gtest_main) 123c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test(gtest-param-test_test gtest 124c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch test/gtest-param-test2_test.cc) 125c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test(gtest-port_test gtest_main) 126c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test(gtest_pred_impl_unittest gtest_main) 1273345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick cxx_test(gtest-printers_test gtest_main) 128c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test(gtest_prod_test gtest_main 129c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch test/production.cc) 130c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test(gtest_repeat_test gtest) 131c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test(gtest_sole_header_test gtest_main) 132c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test(gtest_stress_test gtest) 133c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test(gtest-test-part_test gtest_main) 134c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test(gtest_throw_on_failure_ex_test gtest) 135c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test(gtest-typed-test_test gtest_main 136c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch test/gtest-typed-test2_test.cc) 1373345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick cxx_test(gtest_unittest gtest_main) 138c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test(gtest-unittest-api_test gtest) 139c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 1403345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick ############################################################ 1413345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick # C++ tests built with non-standard compiler flags. 142c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 143c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_library(gtest_no_exception "${cxx_no_exception}" 144c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch src/gtest-all.cc) 145731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick cxx_library(gtest_main_no_exception "${cxx_no_exception}" 146731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick src/gtest-all.cc src/gtest_main.cc) 147c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_library(gtest_main_no_rtti "${cxx_no_rtti}" 148c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch src/gtest-all.cc src/gtest_main.cc) 149c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 150dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen cxx_test_with_flags(gtest-death-test_ex_nocatch_test 151dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen "${cxx_exception} -DGTEST_ENABLE_CATCH_EXCEPTIONS_=0" 152dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen gtest test/gtest-death-test_ex_test.cc) 153dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen cxx_test_with_flags(gtest-death-test_ex_catch_test 154dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen "${cxx_exception} -DGTEST_ENABLE_CATCH_EXCEPTIONS_=1" 155dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen gtest test/gtest-death-test_ex_test.cc) 156dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 157c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test_with_flags(gtest_no_rtti_unittest "${cxx_no_rtti}" 158c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch gtest_main_no_rtti test/gtest_unittest.cc) 159c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 1603345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick cxx_shared_library(gtest_dll "${cxx_default}" 1613345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick src/gtest-all.cc src/gtest_main.cc) 162c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 1633345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick cxx_executable_with_flags(gtest_dll_test_ "${cxx_default}" 164c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch gtest_dll test/gtest_all_test.cc) 1653345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick set_target_properties(gtest_dll_test_ 1663345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick PROPERTIES 1673345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick COMPILE_DEFINITIONS "GTEST_LINKED_AS_SHARED_LIBRARY=1") 168c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 1693345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick if (NOT MSVC OR NOT MSVC_VERSION EQUAL 1600) 170c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch # The C++ Standard specifies tuple_element<int, class>. 171c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch # Yet MSVC 10's <utility> declares tuple_element<size_t, class>. 172c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch # That declaration conflicts with our own standard-conforming 173c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch # tuple implementation. Therefore using our own tuple with 174c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch # MSVC 10 doesn't compile. 175c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_library(gtest_main_use_own_tuple "${cxx_use_own_tuple}" 176c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch src/gtest-all.cc src/gtest_main.cc) 177c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 178c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test_with_flags(gtest-tuple_test "${cxx_use_own_tuple}" 179c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch gtest_main_use_own_tuple test/gtest-tuple_test.cc) 180c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 181c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_test_with_flags(gtest_use_own_tuple_test "${cxx_use_own_tuple}" 182c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch gtest_main_use_own_tuple 183c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch test/gtest-param-test_test.cc test/gtest-param-test2_test.cc) 184c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch endif() 185c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 1863345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick ############################################################ 1873345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick # Python tests. 188c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 189c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(gtest_break_on_failure_unittest_ test gtest) 190c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch py_test(gtest_break_on_failure_unittest) 191c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 192731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick cxx_executable_with_flags( 193731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick gtest_catch_exceptions_no_ex_test_ 194731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick "${cxx_no_exception}" 195731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick gtest_main_no_exception 196731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick test/gtest_catch_exceptions_test_.cc) 197731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick cxx_executable_with_flags( 198731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick gtest_catch_exceptions_ex_test_ 199731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick "${cxx_exception}" 200731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick gtest_main 201731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick test/gtest_catch_exceptions_test_.cc) 202731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick py_test(gtest_catch_exceptions_test) 203731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick 204c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(gtest_color_test_ test gtest) 205c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch py_test(gtest_color_test) 206c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 207c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(gtest_env_var_test_ test gtest) 208c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch py_test(gtest_env_var_test) 209c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 210c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(gtest_filter_unittest_ test gtest) 211c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch py_test(gtest_filter_unittest) 212c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 213c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(gtest_help_test_ test gtest_main) 214c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch py_test(gtest_help_test) 215c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 216c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(gtest_list_tests_unittest_ test gtest) 217c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch py_test(gtest_list_tests_unittest) 218c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 219c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(gtest_output_test_ test gtest) 220c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch py_test(gtest_output_test) 221c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 222c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(gtest_shuffle_test_ test gtest) 223c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch py_test(gtest_shuffle_test) 224c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 225c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(gtest_throw_on_failure_test_ test gtest_no_exception) 226c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch set_target_properties(gtest_throw_on_failure_test_ 227c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch PROPERTIES 228c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch COMPILE_FLAGS "${cxx_no_exception}") 229c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch py_test(gtest_throw_on_failure_test) 230c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 231c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(gtest_uninitialized_test_ test gtest) 232c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch py_test(gtest_uninitialized_test) 233c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 234c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(gtest_xml_outfile1_test_ test gtest_main) 235c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(gtest_xml_outfile2_test_ test gtest_main) 236c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch py_test(gtest_xml_outfiles_test) 237c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 238c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch cxx_executable(gtest_xml_output_unittest_ test gtest) 239c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch py_test(gtest_xml_output_unittest) 240c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdochendif() 241