You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

gtest.cmake 2.1 kB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. set(gtest_CXXFLAGS "-D_FORTIFY_SOURCE=2 -O2")
  2. set(gtest_CFLAGS "-D_FORTIFY_SOURCE=2 -O2")
  3. set(CMAKE_OPTION
  4. -DBUILD_TESTING=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DBUILD_SHARED_LIBS=ON
  5. -DCMAKE_MACOSX_RPATH=TRUE -Dgtest_disable_pthreads=ON)
  6. if (BUILD_LITE)
  7. if (PLATFORM_ARM64)
  8. set(CMAKE_OPTION -DCMAKE_TOOLCHAIN_FILE=$ENV{ANDROID_NDK}/build/cmake/android.toolchain.cmake
  9. -DANDROID_NATIVE_API_LEVEL=19
  10. -DANDROID_NDK=$ENV{ANDROID_NDK}
  11. -DANDROID_ABI=arm64-v8a
  12. -DANDROID_TOOLCHAIN_NAME=aarch64-linux-android-clang
  13. -DANDROID_STL=c++_shared -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
  14. ${CMAKE_OPTION})
  15. endif()
  16. if (PLATFORM_ARM32)
  17. set(CMAKE_OPTION -DCMAKE_TOOLCHAIN_FILE=$ENV{ANDROID_NDK}/build/cmake/android.toolchain.cmake
  18. -DANDROID_NATIVE_API_LEVEL=19
  19. -DANDROID_NDK=$ENV{ANDROID_NDK}
  20. -DANDROID_ABI=armeabi-v7a
  21. -DANDROID_TOOLCHAIN_NAME=aarch64-linux-android-clang
  22. -DANDROID_STL=c++_shared -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
  23. ${CMAKE_OPTION})
  24. endif()
  25. else()
  26. set(gtest_CXXFLAGS "${gtest_CXXFLAGS} -D_GLIBCXX_USE_CXX11_ABI=0")
  27. endif ()
  28. if (ENABLE_GITEE)
  29. set(REQ_URL "https://gitee.com/mirrors/googletest/repository/archive/release-1.8.0.tar.gz")
  30. set(MD5 "89e13ca1aa48d370719d58010b83f62c")
  31. else()
  32. set(REQ_URL "https://github.com/google/googletest/archive/release-1.8.0.tar.gz")
  33. set(MD5 "16877098823401d1bf2ed7891d7dce36")
  34. endif ()
  35. mindspore_add_pkg(gtest
  36. VER 1.8.0
  37. LIBS gtest
  38. URL ${REQ_URL}
  39. MD5 ${MD5}
  40. CMAKE_OPTION ${CMAKE_OPTION})
  41. include_directories(${gtest_INC})
  42. add_library(mindspore::gtest ALIAS gtest::gtest)
  43. file(COPY ${gtest_LIBPATH}/libgtest${CMAKE_SHARED_LIBRARY_SUFFIX} DESTINATION ${CMAKE_BINARY_DIR}/googletest/googlemock/gtest)
  44. file(COPY ${gtest_LIBPATH}/libgtest_main${CMAKE_SHARED_LIBRARY_SUFFIX} DESTINATION ${CMAKE_BINARY_DIR}/googletest/googlemock/gtest)