diff --git a/0001-patch-for-openeuler.patch b/0001-patch-for-openeuler.patch new file mode 100644 index 0000000..ae43072 --- /dev/null +++ b/0001-patch-for-openeuler.patch @@ -0,0 +1,1088 @@ +diff --git a/build.sh b/build.sh +index e2061a25fce..978479d1487 100755 +--- a/build.sh ++++ b/build.sh +@@ -39,25 +39,6 @@ check_on_off() + fi + } + +-update_submodule() +-{ +- git submodule update --init graphengine +- cd "${BASEPATH}/graphengine" +- GRAPHENGINE_SUBMODULE="910/metadef" +- if [[ "X$ASCEND_VERSION" = "X910b" ]]; then +- GRAPHENGINE_SUBMODULE="910b/metadef" +- fi +- git submodule update --init ${GRAPHENGINE_SUBMODULE} +- cd "${BASEPATH}" +- if [[ "X$ENABLE_AKG" = "Xon" ]]; then +- if [[ "X$ENABLE_D" == "Xon" ]]; then +- git submodule update --init akg +- else +- GIT_LFS_SKIP_SMUDGE=1 git submodule update --init akg +- fi +- fi +-} +- + build_exit() + { + echo "$@" >&2 +@@ -86,7 +67,6 @@ if [[ "X$COMPILE_LITE" = "Xon" ]]; then + else + mkdir -pv "${BUILD_PATH}/package/mindspore/lib" + mkdir -pv "${BUILD_PATH}/package/mindspore/lib/plugin" +- update_submodule + + build_mindspore + +diff --git a/cmake/external_libs/absl.cmake b/cmake/external_libs/absl.cmake +index ced9826cc5e..1b5a86df294 100644 +--- a/cmake/external_libs/absl.cmake ++++ b/cmake/external_libs/absl.cmake +@@ -7,11 +7,11 @@ if(ENABLE_GITEE_EULER) + execute_process(COMMAND tar -xf ${ABSL_SRC}/abseil-cpp-20210324.2.tar.gz --strip-components 1 -C ${ABSL_SRC}) + else() + if(ENABLE_GITEE) +- set(REQ_URL "https://gitee.com/mirrors/abseil-cpp/repository/archive/20210324.2.tar.gz") +- set(SHA256 "59b862f50e710277f8ede96f083a5bb8d7c9595376146838b9580be90374ee1f") ++ set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/abseil-cpp/repository/archive/20210324.2.tar.gz" ++ SHA256 "59b862f50e710277f8ede96f083a5bb8d7c9595376146838b9580be90374ee1f") + else() +- set(REQ_URL "https://github.com/abseil/abseil-cpp/archive/20210324.2.tar.gz") +- set(SHA256 "59b862f50e710277f8ede96f083a5bb8d7c9595376146838b9580be90374ee1f") ++ set(DOWNLOAD_OPTION DIR_NAME abseil-cpp) + endif() + endif() + +@@ -22,8 +22,7 @@ endif() + mindspore_add_pkg(absl + VER 20210324.2 + LIBS absl_strings absl_throw_delegate absl_raw_logging_internal absl_int128 absl_bad_optional_access +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + CMAKE_OPTION + -DCMAKE_BUILD_TYPE:STRING=Release + -DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=TRUE +diff --git a/cmake/external_libs/c-ares.cmake b/cmake/external_libs/c-ares.cmake +index 869b6e3aedc..4cecca62992 100644 +--- a/cmake/external_libs/c-ares.cmake ++++ b/cmake/external_libs/c-ares.cmake +@@ -1,16 +1,15 @@ + if(ENABLE_GITEE) +- set(REQ_URL "https://gitee.com/mirrors/c-ares/repository/archive/cares-1_15_0.tar.gz") +- set(SHA256 "7deb7872cbd876c29036d5f37e30c4cbc3cc068d59d8b749ef85bb0736649f04") ++ set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/c-ares/repository/archive/cares-1_15_0.tar.gz" ++ SHA256 "7deb7872cbd876c29036d5f37e30c4cbc3cc068d59d8b749ef85bb0736649f04") + else() +- set(REQ_URL "https://github.com/c-ares/c-ares/releases/download/cares-1_15_0/c-ares-1.15.0.tar.gz") +- set(SHA256 "6cdb97871f2930530c97deb7cf5c8fa4be5a0b02c7cea6e7c7667672a39d6852") ++ set(DOWNLOAD_OPTION DIR_NAME c-ares) + endif() + + mindspore_add_pkg(c-ares + VER 1.15.0 + LIBS cares +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + CMAKE_OPTION -DCMAKE_BUILD_TYPE:STRING=Release + -DCARES_SHARED:BOOL=OFF + -DCARES_STATIC:BOOL=ON +diff --git a/cmake/external_libs/cppjieba.cmake b/cmake/external_libs/cppjieba.cmake +index c23bf5e729c..3a7f5030da4 100644 +--- a/cmake/external_libs/cppjieba.cmake ++++ b/cmake/external_libs/cppjieba.cmake +@@ -2,18 +2,17 @@ set(cppjieba_CXXFLAGS "-D_FORTIFY_SOURCE=2 -O2") + set(cppjieba_CFLAGS "-D_FORTIFY_SOURCE=2 -O2") + + if(ENABLE_GITEE) +- set(REQ_URL "https://gitee.com/mirrors/cppjieba/repository/archive/v5.0.3.tar.gz") +- set(SHA256 "c7049e059af2420f9151ecfba5d534b801fced23b48319485d2a9e790a926b72") ++ set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/cppjieba/repository/archive/v5.0.3.tar.gz" ++ SHA256 "c7049e059af2420f9151ecfba5d534b801fced23b48319485d2a9e790a926b72") + else() +- set(REQ_URL "https://github.com/yanyiwu/cppjieba/archive/v5.0.3.tar.gz") +- set(SHA256 "b40848a553dab24d7fcdb6dbdea2486102212baf58466d1c3c3481381af91248") ++ set(DOWNLOAD_OPTION DIR_NAME cppjieba) + endif() + + mindspore_add_pkg(cppjieba + VER 5.0.3 + HEAD_ONLY ./ +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + PATCHES ${TOP_DIR}/third_party/patch/cppjieba/cppjieba.patch001) + include_directories(${cppjieba_INC}include) + include_directories(${cppjieba_INC}deps) +diff --git a/cmake/external_libs/eigen.cmake b/cmake/external_libs/eigen.cmake +index df1ded203b1..d939e8aac6f 100644 +--- a/cmake/external_libs/eigen.cmake ++++ b/cmake/external_libs/eigen.cmake +@@ -2,20 +2,23 @@ set(Eigen3_CXXFLAGS "-D_FORTIFY_SOURCE=2 -O2") + set(Eigen3_CFLAGS "-D_FORTIFY_SOURCE=2 -O2") + + +-set(REQ_URL "https://gitlab.com/libeigen/eigen/-/archive/3.4.0/eigen-3.4.0.tar.gz") +-set(SHA256 "8586084f71f9bde545ee7fa6d00288b264a2b7ac3607b974e54d13e7162c1c72") ++if(ENABLE_GITEE) ++ set(DOWNLOAD_OPTION ++ URL "https://gitlab.com/libeigen/eigen/-/archive/3.4.0/eigen-3.4.0.tar.gz" ++ SHA256 "8586084f71f9bde545ee7fa6d00288b264a2b7ac3607b974e54d13e7162c1c72") ++else() ++ set(DOWNLOAD_OPTION DIR_NAME eigen) ++endif() + + if(MSVC) + mindspore_add_pkg(Eigen3 + VER 3.4.0 +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + CMAKE_OPTION -DBUILD_TESTING=OFF) + else() + mindspore_add_pkg(Eigen3 + VER 3.4.0 +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + PATCHES ${TOP_DIR}/third_party/patch/eigen/0001-fix-eigen.patch + CMAKE_OPTION -DBUILD_TESTING=OFF) + endif() +diff --git a/cmake/external_libs/flatbuffers.cmake b/cmake/external_libs/flatbuffers.cmake +index b128c1a281f..5545a647c70 100644 +--- a/cmake/external_libs/flatbuffers.cmake ++++ b/cmake/external_libs/flatbuffers.cmake +@@ -30,11 +30,11 @@ if(ENABLE_GITEE_EULER) + endforeach() + else() + if(ENABLE_GITEE) +- set(REQ_URL "https://gitee.com/mirrors/flatbuffers/repository/archive/v2.0.0.tar.gz") +- set(SHA256 "3d1eabe298ddac718de34d334aefc22486064dcd8e7a367a809d87393d59ac5a") ++ set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/flatbuffers/repository/archive/v2.0.0.tar.gz" ++ SHA256 "3d1eabe298ddac718de34d334aefc22486064dcd8e7a367a809d87393d59ac5a") + else() +- set(REQ_URL "https://github.com/google/flatbuffers/archive/v2.0.0.tar.gz") +- set(SHA256 "9ddb9031798f4f8754d00fca2f1a68ecf9d0f83dfac7239af1311e4fd9a565c4") ++ set(DOWNLOAD_OPTION DIR_NAME flatbuffers) + endif() + endif() + +@@ -46,8 +46,7 @@ if(APPLE) + VER 2.0.0 + LIBS flatbuffers + EXE flatc +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + CMAKE_OPTION -DFLATBUFFERS_BUILD_TESTS=OFF -DCMAKE_INSTALL_LIBDIR=lib) + else() + if(TARGET_AOS_ARM) +@@ -55,8 +54,7 @@ else() + VER 2.0.0 + LIBS flatbuffers + EXE flatc +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + CMAKE_OPTION -DCMAKE_C_COMPILER=/usr/bin/gcc -DCMAKE_CXX_COMPILER=/usr/bin/g++ + -DFLATBUFFERS_BUILD_TESTS=OFF -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_BUILD_TYPE=Release) + else() +@@ -64,8 +62,7 @@ else() + VER 2.0.0 + LIBS flatbuffers + EXE flatc +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + DIR ${FLATBUFFER_DIR} + CMAKE_OPTION -DCMAKE_C_COMPILER=${FLATC_GCC_COMPILER} -DCMAKE_CXX_COMPILER=${FLATC_GXX_COMPILER} + -DFLATBUFFERS_BUILD_TESTS=OFF -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_BUILD_TYPE=Release) +diff --git a/cmake/external_libs/glog.cmake b/cmake/external_libs/glog.cmake +index dda154f2d10..132bffea374 100644 +--- a/cmake/external_libs/glog.cmake ++++ b/cmake/external_libs/glog.cmake +@@ -33,11 +33,11 @@ if(NOT ENABLE_GLIBCXX) + endif() + + if(ENABLE_GITEE OR ENABLE_GITEE_EULER) # Channel GITEE_EULER is NOT supported now, use GITEE instead. +- set(REQ_URL "https://gitee.com/mirrors/glog/repository/archive/v0.4.0.tar.gz") +- set(SHA256 "e17cd4bb7c06951a12fc9db5130ec63a9f090b84340b8556fa0d530f73c6b634") ++ set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/glog/repository/archive/v0.4.0.tar.gz" ++ SHA256 "e17cd4bb7c06951a12fc9db5130ec63a9f090b84340b8556fa0d530f73c6b634") + else() +- set(REQ_URL "https://github.com/google/glog/archive/v0.4.0.tar.gz") +- set(SHA256 "f28359aeba12f30d73d9e4711ef356dc842886968112162bc73002645139c39c") ++ set(DOWNLOAD_OPTION DIR_NAME glog) + endif() + + set(glog_option -DBUILD_TESTING=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DBUILD_SHARED_LIBS=ON -DWITH_GFLAGS=OFF +@@ -52,8 +52,7 @@ endif() + mindspore_add_pkg(glog + VER 0.4.0 + LIBS ${glog_lib} +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + PATCHES ${glog_patch} + CMAKE_OPTION ${glog_option}) + include_directories(${glog_INC}) +diff --git a/cmake/external_libs/grpc.cmake b/cmake/external_libs/grpc.cmake +index 5ca6893d18c..d2e8c6bdbc0 100644 +--- a/cmake/external_libs/grpc.cmake ++++ b/cmake/external_libs/grpc.cmake +@@ -43,19 +43,18 @@ if(EXISTS ${openssl_ROOT}) + endif() + + if(ENABLE_GITEE) +- set(REQ_URL "https://gitee.com/mirrors/grpc/repository/archive/v1.36.1.tar.gz") +- set(SHA256 "17a3ac19345a6aeda01b2baba5400e1136b02b44770dbdfe8581255a091aaf87") ++ set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/grpc/repository/archive/v1.36.1.tar.gz" ++ SHA256 "17a3ac19345a6aeda01b2baba5400e1136b02b44770dbdfe8581255a091aaf87") + else() +- set(REQ_URL "https://github.com/grpc/grpc/archive/v1.36.1.tar.gz") +- set(SHA256 "adf51558bf3d057a65651880c9814e09e77b61573eb950c2be1142a624d58e69") ++ set(DOWNLOAD_OPTION DIR_NAME grpc) + endif() + + mindspore_add_pkg(grpc + VER 1.36.1 + LIBS mindspore_grpc++ mindspore_grpc mindspore_gpr mindspore_upb mindspore_address_sorting + EXE grpc_cpp_plugin +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + PATCHES ${TOP_DIR}/third_party/patch/grpc/grpc.patch001 + CMAKE_OPTION -DCMAKE_BUILD_TYPE:STRING=Release + -DBUILD_SHARED_LIBS=ON +diff --git a/cmake/external_libs/icu4c.cmake b/cmake/external_libs/icu4c.cmake +index c20d611de2a..9a5200542f4 100644 +--- a/cmake/external_libs/icu4c.cmake ++++ b/cmake/external_libs/icu4c.cmake +@@ -13,11 +13,11 @@ if(ENABLE_GITEE_EULER) + execute_process(COMMAND tar -xf ${ICU4C_TAR_SRC}/icu4c-69_1-src.tgz --strip-components 1 -C ${ICU4C_SRC}) + else() + if(ENABLE_GITEE) +- set(REQ_URL "https://gitee.com/mirrors/icu/repository/archive/release-69-1.tar.gz") +- set(SHA256 "cb085ebf0152045a84c84011348bb7e09e38248c02b5a85f69a7d85866774b82") ++ set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/icu/repository/archive/release-69-1.tar.gz" ++ SHA256 "cb085ebf0152045a84c84011348bb7e09e38248c02b5a85f69a7d85866774b82") + else() +- set(REQ_URL "https://github.com/unicode-org/icu/archive/release-69-1.tar.gz") +- set(SHA256 "39ce83dd5d15c7539dde261733e106a391923f82caf1ce52ecaebb72d93b4579") ++ set(DOWNLOAD_OPTION DIR_NAME icu) + endif() + endif() + +@@ -36,8 +36,7 @@ else() + mindspore_add_pkg(icu4c + VER 69.1 + LIBS ${LIB_ICU_COMMON} ${LIB_ICU_DATA} ${LIB_ICU_I18N} +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + PATCHES ${CMAKE_SOURCE_DIR}/third_party/patch/icu4c/icu4c.patch01 + CONFIGURE_COMMAND ./icu4c/source/runConfigureICU MacOSX --disable-tests + --disable-samples --disable-icuio --disable-extras +@@ -47,8 +46,7 @@ else() + mindspore_add_pkg(icu4c + VER 69.1 + LIBS ${LIB_ICU_COMMON} ${LIB_ICU_DATA} ${LIB_ICU_I18N} +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + PATCHES ${TOP_DIR}/third_party/patch/icu4c/icu4c.patch01 + CONFIGURE_COMMAND ./icu4c/source/runConfigureICU Linux --enable-rpath --disable-tests --disable-samples + --disable-icuio --disable-extras +diff --git a/cmake/external_libs/jpeg_turbo.cmake b/cmake/external_libs/jpeg_turbo.cmake +index c3b0b59168a..e476db2b11d 100644 +--- a/cmake/external_libs/jpeg_turbo.cmake ++++ b/cmake/external_libs/jpeg_turbo.cmake +@@ -4,11 +4,11 @@ if(TARGET_AOS_ARM) + endif() + + if(ENABLE_GITEE) +- set(REQ_URL "https://gitee.com/mirrors/libjpeg-turbo/repository/archive/2.0.4.tar.gz") +- set(SHA256 "7777c3c19762940cff42b3ba4d7cd5c52d1671b39a79532050c85efb99079064") ++set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/libjpeg-turbo/repository/archive/2.0.4.tar.gz" ++ SHA256 "7777c3c19762940cff42b3ba4d7cd5c52d1671b39a79532050c85efb99079064") + else() +- set(REQ_URL "https://github.com/libjpeg-turbo/libjpeg-turbo/archive/2.0.4.tar.gz") +- set(SHA256 "7777c3c19762940cff42b3ba4d7cd5c52d1671b39a79532050c85efb99079064") ++set(DOWNLOAD_OPTION DIR_NAME libjpeg-turbo) + endif() + + if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") +@@ -68,8 +68,7 @@ endif() + mindspore_add_pkg(jpeg_turbo + VER 2.0.4 + LIBS jpeg turbojpeg +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + CMAKE_OPTION ${CMAKE_OPTION} + PATCHES ${JPEG_TURBO_PATCHE} + PATCHES ${CVE_2020_35538} +diff --git a/cmake/external_libs/json.cmake b/cmake/external_libs/json.cmake +index 969b226b9f1..0be3fe32f29 100644 +--- a/cmake/external_libs/json.cmake ++++ b/cmake/external_libs/json.cmake +@@ -8,20 +8,18 @@ else() + endif() + + if(ENABLE_GITEE OR ENABLE_GITEE_EULER) # Channel GITEE_EULER is NOT supported now, use GITEE instead. +- set(REQ_URL "https://gitee.com/mirrors/JSON-for-Modern-CPP/repository/archive/v3.10.1.zip") +- set(SHA256 "5c7d0a0542431fef628f8dc4c34fd022fe8747ccb577012d58f38672d8747e0d") ++set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/JSON-for-Modern-CPP/repository/archive/v3.10.1.zip" ++ SHA256 "5c7d0a0542431fef628f8dc4c34fd022fe8747ccb577012d58f38672d8747e0d") + set(INCLUDE "./include") + else() +- +- set(REQ_URL "https://github.com/nlohmann/json/releases/download/v3.10.1/include.zip") +- set(SHA256 "144268f7f85afb0f0fbea7c796723c849724c975f9108ffdadde9ecedaa5f0b1") +- set(INCLUDE "./include") ++set(DOWNLOAD_OPTION DIR_NAME json) ++set(INCLUDE "./include") + endif() + + mindspore_add_pkg(nlohmann_json3101 + VER 3.10.1 + HEAD_ONLY ${INCLUDE} +- URL ${REQ_URL} +- SHA256 ${SHA256}) ++ ${DOWNLOAD_OPTION}) + include_directories(${nlohmann_json3101_INC}) + add_library(mindspore::json ALIAS nlohmann_json3101) +diff --git a/cmake/external_libs/libevent.cmake b/cmake/external_libs/libevent.cmake +index d652cf44aac..c53511385a6 100644 +--- a/cmake/external_libs/libevent.cmake ++++ b/cmake/external_libs/libevent.cmake +@@ -9,12 +9,11 @@ set(MINDSPORE_PROJECT_DIR ${CMAKE_SOURCE_DIR}) + endif() + + if(ENABLE_GITEE OR ENABLE_GITEE_EULER) # Channel GITEE_EULER is NOT supported now, use GITEE instead. +- set(REQ_URL "https://gitee.com/mirrors/libevent/repository/archive/release-2.1.12-stable.tar.gz") +- set(SHA256 "7180a979aaa7000e1264da484f712d403fcf7679b1e9212c4e3d09f5c93efc24") ++set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/libevent/repository/archive/release-2.1.12-stable.tar.gz" ++ SHA256 "7180a979aaa7000e1264da484f712d403fcf7679b1e9212c4e3d09f5c93efc24") + else() +- set(REQ_URL +- "https://github.com/libevent/libevent/releases/download/release-2.1.12-stable/libevent-2.1.12-stable.tar.gz") +- set(SHA256 "92e6de1be9ec176428fd2367677e61ceffc2ee1cb119035037a27d346b0403bb") ++set(DOWNLOAD_OPTION DIR_NAME libevent) + endif() + + message("libevent using openssl stub dir: " ${openssl_ROOT}) +@@ -22,8 +21,7 @@ message("libevent using openssl stub dir: " ${openssl_ROOT}) + mindspore_add_pkg(libevent + VER 2.1.12 + LIBS event event_pthreads event_core event_openssl +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + PATCHES ${MINDSPORE_PROJECT_DIR}/third_party/patch/libevent/libevent.patch001 + CMAKE_OPTION -DCMAKE_BUILD_TYPE:STRING=Release -DBUILD_TESTING=OFF -DOPENSSL_ROOT_DIR:PATH=${openssl_ROOT} + -DEVENT__LIBRARY_TYPE:STRING=STATIC) +diff --git a/cmake/external_libs/mkl_dnn.cmake b/cmake/external_libs/mkl_dnn.cmake +index 70fc59cf773..ceadb86f507 100644 +--- a/cmake/external_libs/mkl_dnn.cmake ++++ b/cmake/external_libs/mkl_dnn.cmake +@@ -20,17 +20,16 @@ if(ENABLE_GITEE_EULER) + endif() + + if(ENABLE_GITEE) +- set(REQ_URL "https://gitee.com/mirrors/MKL-DNN/repository/archive/v2.2.tar.gz") +- set(SHA256 "2e809b11727af9d10784a5481b445a14387297161b5cc7f9c969c57fe40752bc") ++ set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/MKL-DNN/repository/archive/v2.2.tar.gz" ++ SHA256 "2e809b11727af9d10784a5481b445a14387297161b5cc7f9c969c57fe40752bc") + else() +- set(REQ_URL "https://github.com/oneapi-src/oneDNN/archive/v2.2.tar.gz") +- set(SHA256 "4d655c0751ee6439584ef5e3d465953fe0c2f4ee2700bc02699bdc1d1572af0d") ++ set(DOWNLOAD_OPTION DIR_NAME oneDNN) + endif() + mindspore_add_pkg(onednn + VER 2.2 + LIBS dnnl mkldnn +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + PATCHES ${MINDSPORE_PROJECT_DIR}/third_party/patch/onednn/0001-fix-user-threadpool-bug.patch + PATCHES ${MINDSPORE_PROJECT_DIR}/third_party/patch/onednn/0002-fix-pool-nthr-bug.patch + PATCHES ${MINDSPORE_PROJECT_DIR}/third_party/patch/onednn/0003-fix-zero-threads-identified-on-AMD.patch +diff --git a/cmake/external_libs/ompi.cmake b/cmake/external_libs/ompi.cmake +index 86e1de47acc..6498654b704 100644 +--- a/cmake/external_libs/ompi.cmake ++++ b/cmake/external_libs/ompi.cmake +@@ -1,17 +1,16 @@ + if(ENABLE_GITEE) +- set(REQ_URL "https://gitee.com/mirrors/ompi/repository/archive/v4.0.3.tar.gz") +- set(SHA256 "2cc45973dce8f147f747a8f2c4c46d171f7f3a142548812a5649e78b84a55f60") ++ set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/ompi/repository/archive/v4.1.4.tar.gz" ++ SHA256 "b7c084ee3c292aba6caf02493dbeaf0767d0cb5b3a64289a0f74cb144bfaf230") + else() +- set(REQ_URL "https://github.com/open-mpi/ompi/archive/v4.0.3.tar.gz") +- set(SHA256 "5663679c17c26cf8dfd5fe1eea79c2d7476f408cc22933b9750af2158ec1657b") ++ set(DOWNLOAD_OPTION DIR_NAME ompi414) + endif() + + set(ompi_CXXFLAGS "-D_FORTIFY_SOURCE=2 -O2") + mindspore_add_pkg(ompi +- VER 4.0.3 ++ VER 4.1.4 + LIBS mpi +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + PRE_CONFIGURE_COMMAND ./autogen.pl + CONFIGURE_COMMAND ./configure --disable-mpi-fortran) + include_directories(${ompi_INC}) +diff --git a/cmake/external_libs/opencv.cmake b/cmake/external_libs/opencv.cmake +index 5792ff8e213..f3643d6b4e1 100644 +--- a/cmake/external_libs/opencv.cmake ++++ b/cmake/external_libs/opencv.cmake +@@ -33,11 +33,11 @@ if(ENABLE_GITEE_EULER) + execute_process(COMMAND tar -xf ${OPENCV_SRC}/opencv-4.5.2.tar.gz --strip-components 1 -C ${OPENCV_SRC}) + else() + if(ENABLE_GITEE) +- set(REQ_URL "https://gitee.com/mirrors/opencv/repository/archive/4.5.2.tar.gz") +- set(SHA256 "ae258ed50aa039279c3d36afdea5c6ecf762515836b27871a8957c610d0424f8") ++ set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/opencv/repository/archive/4.5.2.tar.gz" ++ SHA256 "ae258ed50aa039279c3d36afdea5c6ecf762515836b27871a8957c610d0424f8") + else() +- set(REQ_URL "https://github.com/opencv/opencv/archive/4.5.2.tar.gz") +- set(SHA256 "ae258ed50aa039279c3d36afdea5c6ecf762515836b27871a8957c610d0424f8") ++ set(DOWNLOAD_OPTION DIR_NAME opencv_452) + endif() + endif() + +@@ -46,8 +46,7 @@ if(MSVC) + VER 4.5.2 + LIBS opencv_core452 opencv_imgcodecs452 opencv_imgproc452 + LIB_PATH x64/*/lib +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + CMAKE_OPTION -DCMAKE_BUILD_TYPE=Release -DWITH_PROTOBUF=OFF -DWITH_WEBP=OFF -DWITH_IPP=OFF + -DWITH_ADE=OFF + -DBUILD_ZLIB=ON +@@ -75,8 +74,7 @@ elseif(WIN32) + VER 4.5.2 + LIBS libopencv_core452.dll.a libopencv_imgcodecs452.dll.a libopencv_imgproc452.dll.a + LIB_PATH x64/mingw/lib +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + CMAKE_OPTION -DCMAKE_BUILD_TYPE=Release -DWITH_PROTOBUF=OFF -DWITH_WEBP=OFF -DWITH_IPP=OFF + -DWITH_ADE=OFF + -DBUILD_ZLIB=ON +@@ -104,8 +102,7 @@ else() + mindspore_add_pkg(opencv + VER 4.5.2 + LIBS opencv_core opencv_imgcodecs opencv_imgproc +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + CMAKE_OPTION -DCMAKE_BUILD_TYPE=Release -DWITH_PROTOBUF=OFF -DWITH_WEBP=OFF -DWITH_IPP=OFF + -DWITH_ADE=OFF + -DBUILD_ZLIB=ON +diff --git a/cmake/external_libs/openssl.cmake b/cmake/external_libs/openssl.cmake +index fc5d8fe5eb4..c2b5a17dbee 100644 +--- a/cmake/external_libs/openssl.cmake ++++ b/cmake/external_libs/openssl.cmake +@@ -1,9 +1,9 @@ + if(ENABLE_GITEE OR ENABLE_GITEE_EULER) # Channel GITEE_EULER is NOT supported now, use GITEE instead. +- set(REQ_URL "https://gitee.com/mirrors/openssl/repository/archive/OpenSSL_1_1_1k.tar.gz") +- set(SHA256 "b92f9d3d12043c02860e5e602e50a73ed21a69947bcc74d391f41148e9f6aa95") ++set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/openssl/repository/archive/OpenSSL_1_1_1k.tar.gz" ++ SHA256 "b92f9d3d12043c02860e5e602e50a73ed21a69947bcc74d391f41148e9f6aa95") + else() +- set(REQ_URL "https://github.com/openssl/openssl/archive/refs/tags/OpenSSL_1_1_1k.tar.gz") +- set(SHA256 "b92f9d3d12043c02860e5e602e50a73ed21a69947bcc74d391f41148e9f6aa95") ++set(DOWNLOAD_OPTION DIR_NAME openssl) + endif() + + if(BUILD_LITE) +@@ -23,8 +23,7 @@ if(BUILD_LITE) + mindspore_add_pkg(openssl + VER 1.1.1k + LIBS ssl crypto +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + CONFIGURE_COMMAND ./Configure android-arm64 -D__ANDROID_API__=29 no-zlib no-afalgeng + PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2021-3711.patch + PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2021-3712.patch +@@ -52,8 +51,7 @@ if(BUILD_LITE) + mindspore_add_pkg(openssl + VER 1.1.1k + LIBS ssl crypto +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + CONFIGURE_COMMAND ./Configure android-arm -D__ANDROID_API__=19 no-zlib no-afalgeng + PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2021-3711.patch + PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2021-3712.patch +@@ -76,8 +74,7 @@ if(BUILD_LITE) + mindspore_add_pkg(openssl + VER 1.1.1k + LIBS ssl crypto +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + CONFIGURE_COMMAND ./config no-zlib no-shared no-afalgeng + PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2021-3711.patch + PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2021-3712.patch +@@ -107,8 +104,7 @@ else() + mindspore_add_pkg(openssl + VER 1.1.1k + LIBS ssl crypto +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + CONFIGURE_COMMAND ./config no-zlib no-shared no-afalgeng + PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2021-3711.patch + PATCHES ${OPENSSL_PATCH_ROOT}/CVE-2021-3712.patch +diff --git a/cmake/external_libs/protobuf.cmake b/cmake/external_libs/protobuf.cmake +index 8d0d034e8e9..08dad55a5a3 100644 +--- a/cmake/external_libs/protobuf.cmake ++++ b/cmake/external_libs/protobuf.cmake +@@ -51,11 +51,11 @@ string(REPLACE " -Wall" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") + string(REPLACE " -Werror" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") + + if(ENABLE_GITEE OR ENABLE_GITEE_EULER) # Channel GITEE_EULER is NOT supported now, use GITEE instead. +- set(REQ_URL "https://gitee.com/mirrors/protobuf_source/repository/archive/v3.13.0.tar.gz") +- set(SHA256 "ab9b39e7053a6fb06b01bf75fb6ec6a71a1ada5a5f8e2446f927336e97b9e7bb") ++set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/protobuf_source/repository/archive/v3.13.0.tar.gz" ++ SHA256 "ab9b39e7053a6fb06b01bf75fb6ec6a71a1ada5a5f8e2446f927336e97b9e7bb") + else() +- set(REQ_URL "https://github.com/protocolbuffers/protobuf/archive/v3.13.0.tar.gz") +- set(SHA256 "9b4ee22c250fe31b16f1a24d61467e40780a3fbb9b91c3b65be2a376ed913a1a") ++set(DOWNLOAD_OPTION DIR_NAME protobuf) + endif() + + if(BUILD_LITE) +@@ -69,8 +69,7 @@ mindspore_add_pkg(protobuf + VER 3.13.0 + LIBS protobuf + EXE protoc +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + CMAKE_PATH cmake/ + CMAKE_OPTION -Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_BUILD_SHARED_LIBS=OFF -DCMAKE_BUILD_TYPE=Release + -Dprotobuf_MSVC_STATIC_RUNTIME=OFF +@@ -81,8 +80,7 @@ mindspore_add_pkg(protobuf + VER 3.13.0 + LIBS protobuf + EXE protoc +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + CMAKE_PATH cmake/ + CMAKE_OPTION -Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_BUILD_SHARED_LIBS=OFF -DCMAKE_BUILD_TYPE=Release + PATCHES ${PROTOBUF_PATCH_ROOT}/CVE-2021-22570.patch +diff --git a/cmake/external_libs/protobuf_arm.cmake b/cmake/external_libs/protobuf_arm.cmake +index b8be5740bbe..c9b111a0052 100644 +--- a/cmake/external_libs/protobuf_arm.cmake ++++ b/cmake/external_libs/protobuf_arm.cmake +@@ -37,11 +37,11 @@ string(REPLACE " -Wall" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") + string(REPLACE " -Werror" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") + + if(ENABLE_GITEE) +- set(REQ_URL "https://gitee.com/mirrors/protobuf_source/repository/archive/v3.13.0.tar.gz") +- set(SHA256 "ab9b39e7053a6fb06b01bf75fb6ec6a71a1ada5a5f8e2446f927336e97b9e7bb") ++set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/protobuf_source/repository/archive/v3.13.0.tar.gz" ++ SHA256 "ab9b39e7053a6fb06b01bf75fb6ec6a71a1ada5a5f8e2446f927336e97b9e7bb") + else() +- set(REQ_URL "https://github.com/protocolbuffers/protobuf/archive/v3.13.0.tar.gz") +- set(SHA256 "9b4ee22c250fe31b16f1a24d61467e40780a3fbb9b91c3b65be2a376ed913a1a") ++set(DOWNLOAD_OPTION DIR_NAME protobuf) + endif() + + if(BUILD_LITE) +@@ -54,8 +54,7 @@ if(APPLE) + mindspore_add_pkg(protobuf_arm + VER 3.13.0 + LIBS protobuf +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + CMAKE_PATH cmake/ + CMAKE_OPTION + -Dprotobuf_BUILD_TESTS=OFF +@@ -70,8 +69,7 @@ else() + mindspore_add_pkg(protobuf_arm + VER 3.13.0 + LIBS protobuf +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + CMAKE_PATH cmake/ + CMAKE_OPTION + -Dprotobuf_BUILD_TESTS=OFF +diff --git a/cmake/external_libs/pybind11.cmake b/cmake/external_libs/pybind11.cmake +index a49f2335ab6..4afa36bfcb9 100644 +--- a/cmake/external_libs/pybind11.cmake ++++ b/cmake/external_libs/pybind11.cmake +@@ -2,34 +2,34 @@ set(PYTHON_VERSION ${Python3_VERSION_MAJOR}.${Python3_VERSION_MINOR}) + + if(ENABLE_GITEE OR ENABLE_GITEE_EULER) # Channel GITEE_EULER is NOT supported now, use GITEE instead. + if(PYTHON_VERSION MATCHES "3.7") +- set(REQ_URL "https://gitee.com/mirrors/pybind11/repository/archive/v2.4.3.tar.gz") +- set(SHA256 "182cf9e2c5a7ae6f03f84cf17e826d7aa2b02aa2f3705db684dfe686c0278b36") ++ set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/pybind11/repository/archive/v2.6.1.tar.gz" ++ SHA256 "c840509be94ac97216c3b4a3ed9f3fdba9948dbe38c16fcfaee3acc6dc93ed0e") + elseif(PYTHON_VERSION MATCHES "3.8") +- set(REQ_URL "https://gitee.com/mirrors/pybind11/repository/archive/v2.6.1.tar.gz") +- set(SHA256 "c840509be94ac97216c3b4a3ed9f3fdba9948dbe38c16fcfaee3acc6dc93ed0e") ++ set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/pybind11/repository/archive/v2.6.1.tar.gz" ++ SHA256 "c840509be94ac97216c3b4a3ed9f3fdba9948dbe38c16fcfaee3acc6dc93ed0e") + elseif(PYTHON_VERSION MATCHES "3.9") +- set(REQ_URL "https://gitee.com/mirrors/pybind11/repository/archive/v2.6.1.tar.gz") +- set(SHA256 "c840509be94ac97216c3b4a3ed9f3fdba9948dbe38c16fcfaee3acc6dc93ed0e") ++ set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/pybind11/repository/archive/v2.6.1.tar.gz" ++ SHA256 "c840509be94ac97216c3b4a3ed9f3fdba9948dbe38c16fcfaee3acc6dc93ed0e") + elseif(PYTHON_VERSION MATCHES "3.10") +- set(REQ_URL "https://gitee.com/mirrors/pybind11/repository/archive/v2.6.1.tar.gz") +- set(SHA256 "c840509be94ac97216c3b4a3ed9f3fdba9948dbe38c16fcfaee3acc6dc93ed0e") ++ set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/pybind11/repository/archive/v2.6.1.tar.gz" ++ SHA256 "c840509be94ac97216c3b4a3ed9f3fdba9948dbe38c16fcfaee3acc6dc93ed0e") + else() + message("Could not find 'Python 3.7' or 'Python 3.8' or 'Python 3.9' or 'Python 3.10'") + return() + endif() + else() + if(PYTHON_VERSION MATCHES "3.7") +- set(REQ_URL "https://github.com/pybind/pybind11/archive/v2.4.3.tar.gz") +- set(SHA256 "1eed57bc6863190e35637290f97a20c81cfe4d9090ac0a24f3bbf08f265eb71d") ++ set(DOWNLOAD_OPTION DIR_NAME pybind11_243) + elseif(PYTHON_VERSION MATCHES "3.8") +- set(REQ_URL "https://github.com/pybind/pybind11/archive/v2.6.1.tar.gz") +- set(SHA256 "cdbe326d357f18b83d10322ba202d69f11b2f49e2d87ade0dc2be0c5c34f8e2a") ++ set(DOWNLOAD_OPTION DIR_NAME pybind11_261) + elseif(PYTHON_VERSION MATCHES "3.9") +- set(REQ_URL "https://github.com/pybind/pybind11/archive/v2.6.1.tar.gz") +- set(SHA256 "cdbe326d357f18b83d10322ba202d69f11b2f49e2d87ade0dc2be0c5c34f8e2a") ++ set(DOWNLOAD_OPTION DIR_NAME pybind11_261) + elseif(PYTHON_VERSION MATCHES "3.10") +- set(REQ_URL "https://github.com/pybind/pybind11/archive/v2.6.1.tar.gz") +- set(SHA256 "cdbe326d357f18b83d10322ba202d69f11b2f49e2d87ade0dc2be0c5c34f8e2a") ++ set(DOWNLOAD_OPTION DIR_NAME pybind11_261) + else() + message("Could not find 'Python 3.7' or 'Python 3.8' or 'Python 3.9' or 'Python 3.10'") + return() +@@ -42,22 +42,19 @@ set(pybind11_patch ${TOP_DIR}/third_party/patch/pybind11/pybind11.patch001) + if(PYTHON_VERSION MATCHES "3.7") + mindspore_add_pkg(pybind11 + VER 2.4.3 +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + CMAKE_OPTION -DPYBIND11_TEST=OFF -DPYBIND11_LTO_CXX_FLAGS=FALSE + ) + elseif(PYTHON_VERSION MATCHES "3.8") + mindspore_add_pkg(pybind11 + VER 2.6.1 +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + CMAKE_OPTION -DPYBIND11_TEST=OFF -DPYBIND11_LTO_CXX_FLAGS=FALSE + ) + else() + mindspore_add_pkg(pybind11 + VER 2.6.1 +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + PATCHES ${pybind11_patch} + CMAKE_OPTION -DPYBIND11_TEST=OFF -DPYBIND11_LTO_CXX_FLAGS=FALSE + ) +diff --git a/cmake/external_libs/re2.cmake b/cmake/external_libs/re2.cmake +index ecd5ebeed63..22e2e5615cb 100644 +--- a/cmake/external_libs/re2.cmake ++++ b/cmake/external_libs/re2.cmake +@@ -1,9 +1,9 @@ + if(ENABLE_GITEE) +- set(REQ_URL "https://gitee.com/mirrors/re2/repository/archive/2019-12-01.tar.gz") +- set(SHA256 "7268e1b4254d9ffa5ccf010fee954150dbb788fd9705234442e7d9f0ee5a42d3") ++ set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/re2/repository/archive/2019-12-01.tar.gz" ++ SHA256 "7268e1b4254d9ffa5ccf010fee954150dbb788fd9705234442e7d9f0ee5a42d3") + else() +- set(REQ_URL "https://github.com/google/re2/archive/2019-12-01.tar.gz") +- set(SHA256 "7268e1b4254d9ffa5ccf010fee954150dbb788fd9705234442e7d9f0ee5a42d3") ++set(DOWNLOAD_OPTION DIR_NAME re2) + endif() + + if(NOT ENABLE_GLIBCXX) +@@ -13,8 +13,7 @@ endif() + mindspore_add_pkg(re2 + VER 20191201 + LIBS re2 +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + CMAKE_OPTION -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=TRUE) + + include_directories(${re2_INC}) +diff --git a/cmake/external_libs/robin.cmake b/cmake/external_libs/robin.cmake +index 85956c4a424..d24e2f1fcfa 100644 +--- a/cmake/external_libs/robin.cmake ++++ b/cmake/external_libs/robin.cmake +@@ -1,16 +1,15 @@ + if(ENABLE_GITEE OR ENABLE_GITEE_EULER) # Channel GITEE_EULER is NOT supported now, use GITEE instead. +- set(REQ_URL "https://gitee.com/mirrors/robin-hood-hashing/repository/archive/3.11.5.zip") +- set(SHA256 "8d1f5d5ee447e5827032d1eb8b1609134618b1cc5c5bcadfcbfed99a2d3583d4") ++set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/robin-hood-hashing/repository/archive/3.11.5.zip" ++ SHA256 "8d1f5d5ee447e5827032d1eb8b1609134618b1cc5c5bcadfcbfed99a2d3583d4") + else() +- set(REQ_URL "https://github.com/martinus/robin-hood-hashing/archive/3.11.5.zip") +- set(SHA256 "7aa183252527ded7f46186c1e2f4efe7d6139a3b7c0869c1b6051bd7260587ed") ++ set(DOWNLOAD_OPTION DIR_NAME robin) + endif() + set(INCLUDE "./src") +- ++# message("robin: ${DOWNLOAD_OPTION}, ${ENABLE_GITEE}, ${ENABLE_GITEE_EULER}") + mindspore_add_pkg(robin_hood_hashing + VER 3.11.5 + HEAD_ONLY ${INCLUDE} +- URL ${REQ_URL} +- SHA256 ${SHA256}) ++ ${DOWNLOAD_OPTION}) + + include_directories(${robin_hood_hashing_INC}) +diff --git a/cmake/external_libs/sentencepiece.cmake b/cmake/external_libs/sentencepiece.cmake +index f626c222a1c..fe5c8d44b4f 100644 +--- a/cmake/external_libs/sentencepiece.cmake ++++ b/cmake/external_libs/sentencepiece.cmake +@@ -7,11 +7,11 @@ if(ENABLE_GITEE_EULER) + execute_process(COMMAND tar -xf ${SENTENCEPIECE_SRC}/v0.1.92.tar.gz --strip-components 1 -C ${SENTENCEPIECE_SRC}) + else() + if(ENABLE_GITEE) +- set(REQ_URL "https://gitee.com/mirrors/sentencepiece/repository/archive/v0.1.92.tar.gz") +- set(SHA256 "650325f998fb97f360bfa886a761fb5cd34d51d684b26ea53edcb5a0d9fa7601") ++ set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/sentencepiece/repository/archive/v0.1.92.tar.gz" ++ SHA256 "650325f998fb97f360bfa886a761fb5cd34d51d684b26ea53edcb5a0d9fa7601") + else() +- set(REQ_URL "https://github.com/google/sentencepiece/archive/v0.1.92.tar.gz") +- set(SHA256 "6e9863851e6277862083518cc9f96211f334215d596fc8c65e074d564baeef0c") ++ set(DOWNLOAD_OPTION DIR_NAME sentencepiece) + endif() + endif() + +@@ -29,18 +29,16 @@ if(WIN32) + mindspore_add_pkg(sentencepiece + VER 0.1.92 + LIBS sentencepiece sentencepiece_train +- URL ${REQ_URL} + CMAKE_OPTION -DCMAKE_BUILD_TYPE=Release -DSPM_USE_BUILTIN_PROTOBUF=ON -DSPM_ENABLE_SHARED=OFF +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + PATCHES ${CMAKE_SOURCE_DIR}/third_party/patch/sentencepiece/sentencepiece_msvc.patch001 + ) + else() + mindspore_add_pkg(sentencepiece + VER 0.1.92 + LIBS sentencepiece sentencepiece_train +- URL ${REQ_URL} + CMAKE_OPTION -DCMAKE_BUILD_TYPE=Release -DSPM_USE_BUILTIN_PROTOBUF=ON -DSPM_ENABLE_SHARED=OFF +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + ) + endif() + else() +@@ -50,20 +48,18 @@ else() + mindspore_add_pkg(sentencepiece + VER 0.1.92 + LIBS sentencepiece sentencepiece_train +- URL ${REQ_URL} + CMAKE_OPTION -DCMAKE_BUILD_TYPE=Release -DSPM_USE_BUILTIN_PROTOBUF=OFF -DSPM_ENABLE_SHARED=OFF + -DPROTOBUF_INC=${protobuf_INC} -DCMAKE_CXX_STANDARD=11 +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + PATCHES ${CMAKE_SOURCE_DIR}/third_party/patch/sentencepiece/sentencepiece.patch001_cpu + ) + else() + mindspore_add_pkg(sentencepiece + VER 0.1.92 + LIBS sentencepiece sentencepiece_train +- URL ${REQ_URL} + CMAKE_OPTION -DCMAKE_BUILD_TYPE=Release -DSPM_USE_BUILTIN_PROTOBUF=OFF -DSPM_ENABLE_SHARED=OFF + -DPROTOBUF_INC=${protobuf_INC} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + PATCHES ${TOP_DIR}/third_party/patch/sentencepiece/sentencepiece.patch001 + ) + endif() +diff --git a/cmake/external_libs/sqlite.cmake b/cmake/external_libs/sqlite.cmake +index 3a69e62866f..5afd367701c 100644 +--- a/cmake/external_libs/sqlite.cmake ++++ b/cmake/external_libs/sqlite.cmake +@@ -1,9 +1,9 @@ + if(ENABLE_GITEE) +- set(REQ_URL "https://gitee.com/mirrors/sqlite/repository/archive/version-3.36.0.tar.gz") +- set(SHA256 "a0989fc6e890ac1b1b28661490636617154da064b6bfe6c71100d23a9e7298fd") ++set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/sqlite/repository/archive/version-3.36.0.tar.gz" ++ SHA256 "a0989fc6e890ac1b1b28661490636617154da064b6bfe6c71100d23a9e7298fd") + else() +- set(REQ_URL "https://github.com/sqlite/sqlite/archive/version-3.36.0.tar.gz") +- set(SHA256 "a0989fc6e890ac1b1b28661490636617154da064b6bfe6c71100d23a9e7298fd") ++ set(DOWNLOAD_OPTION DIR_NAME sqlite) + endif() + + +@@ -41,8 +41,7 @@ else() + mindspore_add_pkg(sqlite + VER 3.36.0 + LIBS sqlite3 +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + PATCHES ${CMAKE_SOURCE_DIR}/third_party/patch/sqlite/CVE-2022-35737.patch + PATCHES ${CMAKE_SOURCE_DIR}/third_party/patch/sqlite/CVE-2021-36690.patch + CONFIGURE_COMMAND ./configure --enable-shared=no --disable-tcl --disable-editline --enable-json1) +diff --git a/cmake/external_libs/tinyxml2.cmake b/cmake/external_libs/tinyxml2.cmake +index 22478fd9ab8..18806d4178d 100644 +--- a/cmake/external_libs/tinyxml2.cmake ++++ b/cmake/external_libs/tinyxml2.cmake +@@ -10,11 +10,11 @@ else() + endif() + + if(ENABLE_GITEE) +- set(REQ_URL "https://gitee.com/mirrors/tinyxml2/repository/archive/8.0.0.tar.gz") +- set(SHA256 "6ce574fbb46751842d23089485ae73d3db12c1b6639cda7721bf3a7ee862012c") ++set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/tinyxml2/repository/archive/8.0.0.tar.gz" ++ SHA256 "6ce574fbb46751842d23089485ae73d3db12c1b6639cda7721bf3a7ee862012c") + else() +- set(REQ_URL "https://github.com/leethomason/tinyxml2/archive/8.0.0.tar.gz") +- set(SHA256 "6ce574fbb46751842d23089485ae73d3db12c1b6639cda7721bf3a7ee862012c") ++ set(DOWNLOAD_OPTION DIR_NAME tinyxml2) + endif() + + +@@ -25,8 +25,7 @@ endif() + mindspore_add_pkg(tinyxml2 + VER 8.0.0 + LIBS tinyxml2 +- URL ${REQ_URL} + CMAKE_OPTION -DCMAKE_BUILD_TYPE=Release +- SHA256 ${SHA256}) ++ ${DOWNLOAD_OPTION}) + include_directories(${tinyxml2_INC}) + add_library(mindspore::tinyxml2 ALIAS tinyxml2::tinyxml2) +diff --git a/cmake/external_libs/zlib.cmake b/cmake/external_libs/zlib.cmake +index 575147cf98d..436b0cdf85a 100644 +--- a/cmake/external_libs/zlib.cmake ++++ b/cmake/external_libs/zlib.cmake +@@ -1,9 +1,9 @@ + if(ENABLE_GITEE) +- set(REQ_URL "https://gitee.com/mirrors/zlib/repository/archive/v1.2.11.tar.gz") +- set(SHA256 "f21b3885cc7732f0ab93dbe06ff1ec58069bb58657b3fda89531d1562d8ad708") ++set(DOWNLOAD_OPTION ++ URL "https://gitee.com/mirrors/zlib/repository/archive/v1.2.11.tar.gz" ++ SHA256 "f21b3885cc7732f0ab93dbe06ff1ec58069bb58657b3fda89531d1562d8ad708") + else() +- set(REQ_URL "https://github.com/madler/zlib/archive/v1.2.11.tar.gz") +- set(SHA256 "629380c90a77b964d896ed37163f5c3a34f6e6d897311f1df2a7016355c45eff") ++ set(DOWNLOAD_OPTION DIR_NAME zlib) + endif() + + if(BUILD_LITE) +@@ -15,8 +15,7 @@ endif() + mindspore_add_pkg(zlib + VER 1.2.11 + LIBS z +- URL ${REQ_URL} +- SHA256 ${SHA256} ++ ${DOWNLOAD_OPTION} + CMAKE_OPTION -DCMAKE_BUILD_TYPE:STRING=Release + PATCHES ${ZLIB_PATCH_ROOT}/CVE-2018-25032.patch + PATCHES ${ZLIB_PATCH_ROOT}/CVE-2022-37434.patch) +diff --git a/cmake/mind_expression.cmake b/cmake/mind_expression.cmake +index 37aaac00081..252c31dee8a 100644 +--- a/cmake/mind_expression.cmake ++++ b/cmake/mind_expression.cmake +@@ -13,7 +13,7 @@ if(NOT MSVC) + endif() + + set(TOP_DIR ${CMAKE_SOURCE_DIR}) +- ++message("-----------------${ENABLE_GITEE}, ${ENABLE_GITEE_EULER}") + include(cmake/utils.cmake) + include(${CMAKE_SOURCE_DIR}/cmake/external_libs/robin.cmake) + include(${CMAKE_SOURCE_DIR}/cmake/external_libs/eigen.cmake) +diff --git a/cmake/package_lite.cmake b/cmake/package_lite.cmake +index fa3b3d0d67f..f8653f544d0 100644 +--- a/cmake/package_lite.cmake ++++ b/cmake/package_lite.cmake +@@ -382,13 +382,6 @@ if(MSLITE_MINDDATA_IMPLEMENT STREQUAL "lite_cv") + endif() + endif() + +-if(WIN32) +- install(FILES ${TOP_DIR}/build/.commit_id DESTINATION ${RUNTIME_PKG_NAME} +- COMPONENT ${RUNTIME_COMPONENT_NAME}) +-else() +- install(FILES ${TOP_DIR}/mindspore/lite/build/.commit_id DESTINATION ${RUNTIME_PKG_NAME} +- COMPONENT ${RUNTIME_COMPONENT_NAME}) +-endif() + if(NOT PLATFORM_MCU) + install(DIRECTORY ${flatbuffers_INC}/ DESTINATION ${RUNTIME_INC_DIR}/third_party + COMPONENT ${RUNTIME_COMPONENT_NAME}) +diff --git a/cmake/package_script.cmake b/cmake/package_script.cmake +index 98673808ae8..55ad0262b1d 100644 +--- a/cmake/package_script.cmake ++++ b/cmake/package_script.cmake +@@ -60,18 +60,8 @@ else() + message(FATAL_ERROR "other platform: ${CMAKE_SYSTEM_NAME}") + endif() + +-# get git commit id +-set(GIT_COMMIT_ID "") +-execute_process( +- COMMAND ${GIT} log --format='[sha1]:%h,[branch]:%d' --abbrev=8 -1 +- OUTPUT_VARIABLE GIT_COMMIT_ID +- WORKING_DIRECTORY ${MS_ROOT_DIR} +- ERROR_QUIET) +-string(REPLACE " " "" GIT_COMMIT_ID ${GIT_COMMIT_ID}) +- + set(ENV{BACKEND_POLICY} ${CPACK_MS_BACKEND}) + set(ENV{MS_PACKAGE_NAME} ${CPACK_MS_PACKAGE_NAME}) +-set(ENV{COMMIT_ID} ${GIT_COMMIT_ID}) + + file(GLOB DEBUG_SYM + ${MS_PACK_ROOT_DIR}/mindspore/*.so +diff --git a/cmake/utils.cmake b/cmake/utils.cmake +index efcfd8c66b0..0ffb01d1c70 100644 +--- a/cmake/utils.cmake ++++ b/cmake/utils.cmake +@@ -218,7 +218,8 @@ set(MS_FIND_NO_DEFAULT_PATH NO_CMAKE_PATH NO_CMAKE_ENVIRONMENT_PATH NO_SYSTEM_EN + function(mindspore_add_pkg pkg_name) + + set(options) +- set(oneValueArgs URL SHA256 GIT_REPOSITORY GIT_TAG VER EXE DIR HEAD_ONLY CMAKE_PATH RELEASE LIB_PATH CUSTOM_CMAKE) ++ set(oneValueArgs URL SHA256 GIT_REPOSITORY GIT_TAG VER EXE DIR HEAD_ONLY CMAKE_PATH RELEASE LIB_PATH CUSTOM_CMAKE ++ DIR_NAME) + set(multiValueArgs + CMAKE_OPTION LIBS PRE_CONFIGURE_COMMAND CONFIGURE_COMMAND BUILD_OPTION INSTALL_INCS + INSTALL_LIBS PATCHES SUBMODULES SOURCEMODULES ONLY_MAKE ONLY_MAKE_INCS ONLY_MAKE_LIBS) +@@ -293,8 +294,22 @@ function(mindspore_add_pkg pkg_name) + if(NOT PKG_DIR) + if(PKG_GIT_REPOSITORY) + __download_pkg_with_git(${pkg_name} ${PKG_GIT_REPOSITORY} ${PKG_GIT_TAG} ${PKG_SHA256}) +- else() ++ elseif(PKG_URL) + __download_pkg(${pkg_name} ${PKG_URL} ${PKG_SHA256}) ++ elseif(PKG_DIR_NAME) ++ if(TOP_DIR) ++ set(${pkg_name}_SOURCE_DIR ${TOP_DIR}/third_party/${PKG_DIR_NAME}) ++ else() ++ set(${pkg_name}_SOURCE_DIR ${CMAKE_SOURCE_DIR}/third_party/${PKG_DIR_NAME}) ++ endif() ++ if(NOT EXISTS ${CMAKE_BINARY_DIR}/_openeuler) ++ file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/_openeuler) ++ endif() ++ set(OPENEULER_DIR ${CMAKE_BINARY_DIR}/_openeuler) ++ file(COPY ${${pkg_name}_SOURCE_DIR} DESTINATION ${OPENEULER_DIR}) ++ set(${pkg_name}_SOURCE_DIR ${OPENEULER_DIR}/${PKG_DIR_NAME}) ++ else() ++ message(FATAL_ERROR "Download package failed: ${pkg_name}, please specify URL, GIT_REPOSITORY or DIR_NAME") + endif() + foreach(_SUBMODULE_FILE ${PKG_SUBMODULES}) + STRING(REGEX REPLACE "(.+)_(.+)" "\\1" _SUBMODEPATH ${_SUBMODULE_FILE}) +diff --git a/scripts/build/build_mindspore.sh b/scripts/build/build_mindspore.sh +index 764c1f9cb4c..dcdb9f826b8 100755 +--- a/scripts/build/build_mindspore.sh ++++ b/scripts/build/build_mindspore.sh +@@ -55,6 +55,7 @@ build_mindspore() + fi + if [[ "X$ENABLE_GITEE" = "Xon" ]]; then + CMAKE_ARGS="${CMAKE_ARGS} -DENABLE_GITEE=ON" ++ echo "--------------------------------------1-----------------" + fi + CMAKE_ARGS="${CMAKE_ARGS} -DENABLE_DUMP_IR=${ENABLE_DUMP_IR}" + CMAKE_ARGS="${CMAKE_ARGS} -DENABLE_PYTHON=${ENABLE_PYTHON}" +@@ -113,6 +114,7 @@ build_mindspore() + CMAKE_ARGS="${CMAKE_ARGS} -DONLY_BUILD_DEVICE_PLUGINS=ON" + fi + echo "${CMAKE_ARGS}" ++ CMAKE_ARGS="${CMAKE_ARGS} -DENABLE_GITEE=OFF" + if [[ "X$INC_BUILD" = "Xoff" ]]; then + cmake ${CMAKE_ARGS} ${BASEPATH} + fi +diff --git a/setup.py b/setup.py +index 4acc08f76b1..5f95eec4a54 100644 +--- a/setup.py ++++ b/setup.py +@@ -24,7 +24,6 @@ from setuptools.command.egg_info import egg_info + from setuptools.command.build_py import build_py + + backend_policy = os.getenv('BACKEND_POLICY') +-commit_id = os.getenv('COMMIT_ID').replace("\n", "") + package_name = os.getenv('MS_PACKAGE_NAME').replace("\n", "") + build_path = os.getenv('BUILD_PATH') + +@@ -49,10 +48,6 @@ def _write_config(file): + file.write("__backend__ = '{}'\n".format(backend_policy)) + + +-def _write_commit_file(file): +- file.write("__commit_id__ = '{}'\n".format(commit_id)) +- +- + def _write_package_name(file): + file.write("__package_name__ = '{}'\n".format(package_name)) + +@@ -83,15 +78,6 @@ def build_dependencies(): + with open(package_info, 'a') as f: + _write_package_name(f) + +- commit_file = os.path.join(pkg_dir, 'mindspore', '.commit_id') +- with open(commit_file, 'w') as f: +- _write_commit_file(f) +- +- commit_file = os.path.join(pwd, 'mindspore/python/mindspore', '.commit_id') +- with open(commit_file, 'w') as f: +- _write_commit_file(f) +- +- + build_dependencies() + + required_package = [ +@@ -117,7 +103,6 @@ package_data = { + 'lib/*.so*', + 'lib/*.a', + 'lib/*.dylib*', +- '.commit_id', + 'config/*', + 'ops/bprop_mindir/*', + 'include/*', +-- +2.33.0 + diff --git a/mindspore.spec b/mindspore.spec new file mode 100644 index 0000000..f8efbad --- /dev/null +++ b/mindspore.spec @@ -0,0 +1,87 @@ +%define debug_package %{nil} +%define _binaries_in_noarch_packages_terminate_build 0 +Name: mindspore +Version: 2.0.0 +Release: 1%{?dist} +Summary: Tensors and Dynamic neural networks in Python with strong Huawei Ascend acceleration + +License: Apache-2.0 +URL: https://mindspore.cn/ +Source0: https://gitee.com/mindspore/mindspore/repository/archive/v2.0.0.zip +Source1: third_party.tar.gz + +Patch0: 0001-patch-for-openeuler.patch + +BuildRequires: cmake gcc gcc-c++ automake autoconf libtool numactl-devel perl flex git +BuildRequires: python3-devel +BuildRequires: python3dist(setuptools) +BuildRequires: python3dist(wheel) +BuildRequires: python3dist(packaging) + +Requires: python3dist(pip) + + +%global _description %{expand: +MindSpore is a an open AI framework that best matches with Ascend processors and supports multi-processor architectures. +it provides many features, including: +- Tensor computation with Huawei Ascend acceleration +- Support both eager mode and graph mode with swift shift between two modes +- Support auto-parallel +- Support deploying on Cloud, Edge and IoT devices +} + +%description %_description + + +%package -n python3-mindspore +Summary: Tensors and Dynamic neural networks in Python with strong Huawei Ascend acceleration +%{?python_provide:%python_provide python-mindspore} + +BuildRequires: cmake gcc gcc-c++ python3-devel python3-pip python3-wheel numactl-devel perl + +Requires: openmpi +Requires: python3dist(asttokens) >= 2.0.4 +Requires: python3dist(astunparse) >= 1.6.3 +Requires: python3dist(numpy) >= 1.17 +Requires: python3dist(packaging) >= 20 +Requires: python3dist(pillow) >= 6.2 +Requires: python3dist(protobuf) >= 3.13 +Requires: python3dist(psutil) >= 5.6.1 +Requires: python3dist(scipy) >= 1.5.4 + +%description -n python3-mindspore %_description + + +%prep +%setup -q -n mindspore-v2.0.0 +%setup -T -D -a 1 -q -n mindspore-v2.0.0 +%patch0 -p1 + + +%build +export CC=/usr/bin/gcc +export CXX=/usr/bin/g++ +./build.sh -e cpu -j 16 + + +%install +rm -rf %{buildroot}/%{python3_sitelib}/ +mkdir -p %{buildroot}/%{python3_sitelib}/ +export QA_SKIP_RPATHS=1 +mkdir dist +find . -name 'mindspore*.whl' +find . -name 'mindspore*.whl' -exec cp {} dist/ \; +find dist/ -name 'mindspore*.whl' -exec basename {} \; | xargs -I {} %py3_install_wheel {} + + +%files -n python3-mindspore +%license LICENSE +%doc README.md +%defattr(755,root,root,-) +%{python3_sitelib}/* +%{_bindir}/* + + +%changelog +* Wed Mar 15 2023 li_zengyi - 2.0.0-1 +- init MindSpore 2.0.0 rpm package diff --git a/third_party.tar.gz b/third_party.tar.gz new file mode 100644 index 0000000..95b791a Binary files /dev/null and b/third_party.tar.gz differ diff --git a/v2.0.0.zip b/v2.0.0.zip new file mode 100644 index 0000000..427d966 Binary files /dev/null and b/v2.0.0.zip differ