1if(ENABLE_GITEE OR ENABLE_GITEE_EULER) # Channel GITEE_EULER is NOT supported now, use GITEE instead. 2 set(REQ_URL "https://gitee.com/mirrors/openssl/repository/archive/OpenSSL_1_1_1k.tar.gz") 3 set(SHA256 "b92f9d3d12043c02860e5e602e50a73ed21a69947bcc74d391f41148e9f6aa95") 4else() 5 set(REQ_URL "https://github.com/openssl/openssl/archive/refs/tags/OpenSSL_1_1_1k.tar.gz") 6 set(SHA256 "b92f9d3d12043c02860e5e602e50a73ed21a69947bcc74d391f41148e9f6aa95") 7endif() 8 9if(BUILD_LITE) 10 set(OPENSSL_PATCH_ROOT ${TOP_DIR}/third_party/patch/openssl) 11else() 12 set(OPENSSL_PATCH_ROOT ${CMAKE_SOURCE_DIR}/third_party/patch/openssl) 13endif() 14 15if(BUILD_LITE) 16 if(PLATFORM_ARM64 AND ANDROID_NDK_TOOLCHAIN_INCLUDED) 17 set(openssl_USE_STATIC_LIBS OFF) 18 set(ANDROID_NDK_ROOT $ENV{ANDROID_NDK}) 19 set(PATH 20 ${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/linux-x86_64/bin: 21 ${ANDROID_NDK_ROOT}/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin: 22 $ENV{PATH}) 23 mindspore_add_pkg(openssl 24 VER 1.1.1k 25 LIBS ssl crypto 26 URL ${REQ_URL} 27 SHA256 ${SHA256} 28 CONFIGURE_COMMAND ./Configure android-arm64 -D__ANDROID_API__=29 no-zlib no-afalgeng 29 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2021-3711.patch 30 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2021-3712.patch 31 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2021-4160.patch 32 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-0778.patch 33 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-1292.patch 34 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-2068.patch 35 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-2097.patch 36 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-4304.patch 37 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-4450.patch 38 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-0215.patch 39 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-0286.patch 40 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-0464.patch 41 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-0465.patch 42 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-0466.patch 43 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-2650.patch 44 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-3446.patch 45 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-3817.patch 46 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-4807.patch 47 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-5678.patch 48 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2024-0727.patch 49 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2024-2511.patch 50 ) 51 elseif(PLATFORM_ARM32 AND ANDROID_NDK_TOOLCHAIN_INCLUDED) 52 set(openssl_USE_STATIC_LIBS OFF) 53 set(ANDROID_NDK_ROOT $ENV{ANDROID_NDK}) 54 set(PATH 55 ${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/linux-x86_64/bin: 56 ${ANDROID_NDK_ROOT}/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin: 57 $ENV{PATH}) 58 mindspore_add_pkg(openssl 59 VER 1.1.1k 60 LIBS ssl crypto 61 URL ${REQ_URL} 62 SHA256 ${SHA256} 63 CONFIGURE_COMMAND ./Configure android-arm -D__ANDROID_API__=19 no-zlib no-afalgeng 64 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2021-3711.patch 65 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2021-3712.patch 66 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2021-4160.patch 67 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-0778.patch 68 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-1292.patch 69 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-2068.patch 70 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-2097.patch 71 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-4304.patch 72 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-4450.patch 73 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-0215.patch 74 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-0286.patch 75 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-0464.patch 76 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-0465.patch 77 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-0466.patch 78 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-2650.patch 79 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-3446.patch 80 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-3817.patch 81 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-4807.patch 82 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-5678.patch 83 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2024-0727.patch 84 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2024-2511.patch 85 ) 86 elseif(${CMAKE_SYSTEM_NAME} MATCHES "Linux" OR APPLE) 87 set(openssl_CFLAGS -fvisibility=hidden) 88 mindspore_add_pkg(openssl 89 VER 1.1.1k 90 LIBS ssl crypto 91 URL ${REQ_URL} 92 SHA256 ${SHA256} 93 CONFIGURE_COMMAND ./config no-zlib no-shared no-afalgeng 94 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2021-3711.patch 95 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2021-3712.patch 96 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2021-4160.patch 97 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-0778.patch 98 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-1292.patch 99 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-2068.patch 100 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-2097.patch 101 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-4304.patch 102 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-4450.patch 103 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-0215.patch 104 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-0286.patch 105 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-0464.patch 106 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-0465.patch 107 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-0466.patch 108 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-2650.patch 109 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-3446.patch 110 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-3817.patch 111 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-4807.patch 112 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-5678.patch 113 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2024-0727.patch 114 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2024-2511.patch 115 ) 116 else() 117 MESSAGE(FATAL_ERROR "openssl does not support compilation for the current environment.") 118 endif() 119 include_directories(${openssl_INC}) 120 add_library(mindspore::ssl ALIAS openssl::ssl) 121 add_library(mindspore::crypto ALIAS openssl::crypto) 122else() 123 if(${CMAKE_SYSTEM_NAME} MATCHES "Linux" OR APPLE) 124 set(openssl_CFLAGS -fvisibility=hidden) 125 mindspore_add_pkg(openssl 126 VER 1.1.1k 127 LIBS ssl crypto 128 URL ${REQ_URL} 129 SHA256 ${SHA256} 130 CONFIGURE_COMMAND ./config no-zlib no-shared no-afalgeng 131 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2021-3711.patch 132 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2021-3712.patch 133 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2021-4160.patch 134 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-0778.patch 135 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-1292.patch 136 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-2068.patch 137 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-2097.patch 138 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-4304.patch 139 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2022-4450.patch 140 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-0215.patch 141 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-0286.patch 142 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-0464.patch 143 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-0465.patch 144 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-0466.patch 145 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-2650.patch 146 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-3446.patch 147 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-3817.patch 148 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-4807.patch 149 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2023-5678.patch 150 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2024-0727.patch 151 PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2024-2511.patch 152 ) 153 include_directories(${openssl_INC}) 154 add_library(mindspore::ssl ALIAS openssl::ssl) 155 add_library(mindspore::crypto ALIAS openssl::crypto) 156 endif() 157endif() 158