cmake_minimum_required(VERSION 3.3 FATAL_ERROR) include(ExternalProject) ExternalProject_Add( gtest URL https://github.com/google/googletest/archive/master.zip PREFIX ${CMAKE_CURRENT_BINARY_DIR}/gtest PATCH_COMMAND patch -p1 < ${CMAKE_CURRENT_SOURCE_DIR}/arm_gtest.patch INSTALL_COMMAND "" ) ExternalProject_Get_Property(gtest source_dir binary_dir) add_library(libgtest IMPORTED STATIC GLOBAL) add_dependencies(libgtest gtest) set_target_properties(libgtest PROPERTIES "IMPORTED_LOCATION" "${CMAKE_SOURCE_DIR}/googletest/build/googlemock/gtest/libgtest.a" "IMPORTED_LINK_INTERFACE_LIBRARIES" "${CMAKE_THREAD_LIBS_INIT}" ) add_library(libgmock IMPORTED STATIC GLOBAL) add_dependencies(libgmock gtest) set_target_properties(libgmock PROPERTIES "IMPORTED_LOCATION" "${CMAKE_SOURCE_DIR}/googletest/build/googlemock/libgmock.a" "IMPORTED_LINK_INTERFACE_LIBRARIES" "${CMAKE_THREAD_LIBS_INIT}" ) include_directories("${source_dir}/googletest/include" "${source_dir}/googlemock/include" ) add_subdirectory(Tests)