1# the following code to fetch googletest 2# is inspired by and adapted after https://crascit.com/2015/07/25/cmake-gtest/ 3# download and unpack googletest at configure time 4 5macro(fetch_googletest _download_module_path _download_root) 6 set(GOOGLETEST_DOWNLOAD_ROOT ${_download_root}) 7 configure_file( 8 ${_download_module_path}/googletest-download.cmake 9 ${_download_root}/CMakeLists.txt 10 @ONLY 11 ) 12 unset(GOOGLETEST_DOWNLOAD_ROOT) 13 14 execute_process( 15 COMMAND 16 "${CMAKE_COMMAND}" -G "${CMAKE_GENERATOR}" . 17 WORKING_DIRECTORY 18 ${_download_root} 19 ) 20 execute_process( 21 COMMAND 22 "${CMAKE_COMMAND}" --build . 23 WORKING_DIRECTORY 24 ${_download_root} 25 ) 26 27 # adds the targers: gtest, gtest_main, gmock, gmock_main 28 add_subdirectory( 29 ${_download_root}/googletest-src 30 ${_download_root}/googletest-build 31 ) 32endmacro() 33