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.4 kB

4 years ago
4 years ago
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  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=${ANDROID_STL}
  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=${ANDROID_STL}
  23. ${CMAKE_OPTION})
  24. endif()
  25. else()
  26. if(NOT ENABLE_GLIBCXX)
  27. set(gtest_CXXFLAGS "${gtest_CXXFLAGS} -D_GLIBCXX_USE_CXX11_ABI=0")
  28. endif()
  29. endif()
  30. if(ENABLE_GITEE)
  31. set(REQ_URL "https://gitee.com/mirrors/googletest/repository/archive/release-1.8.1.tar.gz")
  32. set(MD5 "0ec077324f27c2685635ad4cc9bdc263")
  33. else()
  34. set(REQ_URL "https://github.com/google/googletest/archive/release-1.8.1.tar.gz")
  35. set(MD5 "2e6fbeb6a91310a16efe181886c59596")
  36. endif()
  37. mindspore_add_pkg(gtest
  38. VER 1.8.1
  39. LIBS gtest
  40. URL ${REQ_URL}
  41. MD5 ${MD5}
  42. CMAKE_OPTION ${CMAKE_OPTION})
  43. include_directories(${gtest_INC})
  44. add_library(mindspore::gtest ALIAS gtest::gtest)
  45. if(CMAKE_SYSTEM_NAME MATCHES "Windows")
  46. file(COPY ${gtest_DIRPATH}/bin/libgtest${CMAKE_SHARED_LIBRARY_SUFFIX} DESTINATION
  47. ${CMAKE_BINARY_DIR}/googletest/googlemock/gtest)
  48. file(COPY ${gtest_DIRPATH}/bin/libgtest_main${CMAKE_SHARED_LIBRARY_SUFFIX} DESTINATION
  49. ${CMAKE_BINARY_DIR}/googletest/googlemock/gtest)
  50. else()
  51. file(COPY ${gtest_LIBPATH}/libgtest${CMAKE_SHARED_LIBRARY_SUFFIX} DESTINATION
  52. ${CMAKE_BINARY_DIR}/googletest/googlemock/gtest)
  53. file(COPY ${gtest_LIBPATH}/libgtest_main${CMAKE_SHARED_LIBRARY_SUFFIX} DESTINATION
  54. ${CMAKE_BINARY_DIR}/googletest/googlemock/gtest)
  55. endif()