• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1set(gtest_CXXFLAGS "-D_FORTIFY_SOURCE=2 -O2")
2set(gtest_CFLAGS "-D_FORTIFY_SOURCE=2 -O2")
3
4set(CMAKE_OPTION
5        -DBUILD_TESTING=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DBUILD_SHARED_LIBS=ON
6        -DCMAKE_MACOSX_RPATH=TRUE -Dgtest_disable_pthreads=ON)
7if(BUILD_LITE)
8    if(PLATFORM_ARM64)
9        set(CMAKE_OPTION -DCMAKE_TOOLCHAIN_FILE=$ENV{ANDROID_NDK}/build/cmake/android.toolchain.cmake
10                -DANDROID_NATIVE_API_LEVEL=19
11                -DANDROID_NDK=$ENV{ANDROID_NDK}
12                -DANDROID_ABI=arm64-v8a
13                -DANDROID_TOOLCHAIN_NAME=aarch64-linux-android-clang
14                -DANDROID_STL=${ANDROID_STL}
15                ${CMAKE_OPTION})
16    endif()
17    if(PLATFORM_ARM32)
18        set(CMAKE_OPTION -DCMAKE_TOOLCHAIN_FILE=$ENV{ANDROID_NDK}/build/cmake/android.toolchain.cmake
19                -DANDROID_NATIVE_API_LEVEL=19
20                -DANDROID_NDK=$ENV{ANDROID_NDK}
21                -DANDROID_ABI=armeabi-v7a
22                -DANDROID_TOOLCHAIN_NAME=aarch64-linux-android-clang
23                -DANDROID_STL=${ANDROID_STL}
24                ${CMAKE_OPTION})
25    endif()
26else()
27    if(NOT ENABLE_GLIBCXX)
28        set(gtest_CXXFLAGS "${gtest_CXXFLAGS} -D_GLIBCXX_USE_CXX11_ABI=0")
29    endif()
30endif()
31
32if(ENABLE_GITEE)
33    set(REQ_URL "https://gitee.com/mirrors/googletest/repository/archive/release-1.8.1.tar.gz")
34    set(MD5 "0ec077324f27c2685635ad4cc9bdc263")
35else()
36    set(REQ_URL "https://github.com/google/googletest/archive/release-1.8.1.tar.gz")
37    set(MD5 "2e6fbeb6a91310a16efe181886c59596")
38endif()
39
40mindspore_add_pkg(gtest
41        VER 1.8.1
42        LIBS gtest gmock
43        URL ${REQ_URL}
44        MD5 ${MD5}
45        CMAKE_OPTION ${CMAKE_OPTION})
46include_directories(${gtest_INC})
47add_library(mindspore::gtest ALIAS gtest::gtest)
48add_library(mindspore::gmock ALIAS gtest::gmock)
49if(CMAKE_SYSTEM_NAME MATCHES "Windows")
50    file(COPY ${gtest_DIRPATH}/bin/libgtest${CMAKE_SHARED_LIBRARY_SUFFIX} DESTINATION
51            ${CMAKE_BINARY_DIR}/googletest/googlemock/gtest)
52    file(COPY ${gtest_DIRPATH}/bin/libgtest_main${CMAKE_SHARED_LIBRARY_SUFFIX} DESTINATION
53            ${CMAKE_BINARY_DIR}/googletest/googlemock/gtest)
54else()
55    file(COPY ${gtest_LIBPATH}/libgtest${CMAKE_SHARED_LIBRARY_SUFFIX} DESTINATION
56            ${CMAKE_BINARY_DIR}/googletest/googlemock/gtest)
57    file(COPY ${gtest_LIBPATH}/libgtest_main${CMAKE_SHARED_LIBRARY_SUFFIX} DESTINATION
58            ${CMAKE_BINARY_DIR}/googletest/googlemock/gtest)
59endif()
60