| @@ -26,7 +26,7 @@ usage() | |||||
| echo " [-a on|off] [-p on|off] [-i] [-L] [-R] [-D on|off] [-j[n]] [-e gpu|d|cpu] \\" | echo " [-a on|off] [-p on|off] [-i] [-L] [-R] [-D on|off] [-j[n]] [-e gpu|d|cpu] \\" | ||||
| echo " [-P on|off] [-z [on|off]] [-M on|off] [-V 9.2|10.1] [-I arm64|arm32|x86_64] [-K] \\" | echo " [-P on|off] [-z [on|off]] [-M on|off] [-V 9.2|10.1] [-I arm64|arm32|x86_64] [-K] \\" | ||||
| echo " [-B on|off] [-w on|off] [-E] [-l on|off] [-n full|lite|off] [-T on|off] \\" | echo " [-B on|off] [-w on|off] [-E] [-l on|off] [-n full|lite|off] [-T on|off] \\" | ||||
| echo " [-A [cpp|java|object-c] [-C on|off] [-o on|off] \\" | |||||
| echo " [-A [cpp|java|object-c] [-C on|off] [-o on|off] [-S on|off] \\" | |||||
| echo "" | echo "" | ||||
| echo "Options:" | echo "Options:" | ||||
| echo " -d Debug mode" | echo " -d Debug mode" | ||||
| @@ -63,6 +63,7 @@ usage() | |||||
| echo " -T Enable on-device training, default off" | echo " -T Enable on-device training, default off" | ||||
| echo " -C Enable mindspore lite converter compilation, enabled when -I is specified, default on" | echo " -C Enable mindspore lite converter compilation, enabled when -I is specified, default on" | ||||
| echo " -o Enable mindspore lite tools compilation, enabled when -I is specified, default on" | echo " -o Enable mindspore lite tools compilation, enabled when -I is specified, default on" | ||||
| echo " -S Enable enable download cmake compile dependency from gitee , default off" | |||||
| } | } | ||||
| # check value of input is 'on' or 'off' | # check value of input is 'on' or 'off' | ||||
| @@ -113,9 +114,10 @@ checkopts() | |||||
| ENABLE_TOOLS="on" | ENABLE_TOOLS="on" | ||||
| ENABLE_CONVERTER="on" | ENABLE_CONVERTER="on" | ||||
| LITE_LANGUAGE="cpp" | LITE_LANGUAGE="cpp" | ||||
| ENABLE_GITEE="off" | |||||
| # Process the options | # Process the options | ||||
| while getopts 'drvj:c:t:hsb:a:g:p:ie:m:l:I:LRP:D:zM:V:K:swB:En:T:A:C:o:' opt | |||||
| while getopts 'drvj:c:t:hsb:a:g:p:ie:m:l:I:LRP:D:zM:V:K:swB:En:T:A:C:o:S:' opt | |||||
| do | do | ||||
| OPTARG=$(echo ${OPTARG} | tr '[A-Z]' '[a-z]') | OPTARG=$(echo ${OPTARG} | tr '[A-Z]' '[a-z]') | ||||
| case "${opt}" in | case "${opt}" in | ||||
| @@ -199,6 +201,11 @@ checkopts() | |||||
| ENABLE_TIMELINE="on" | ENABLE_TIMELINE="on" | ||||
| echo "enable time_line record" | echo "enable time_line record" | ||||
| ;; | ;; | ||||
| S) | |||||
| check_on_off $OPTARG S | |||||
| ENABLE_GITEE="$OPTARG" | |||||
| echo "enable download from gitee" | |||||
| ;; | |||||
| e) | e) | ||||
| if [[ "X$OPTARG" == "Xgpu" ]]; then | if [[ "X$OPTARG" == "Xgpu" ]]; then | ||||
| ENABLE_GPU="on" | ENABLE_GPU="on" | ||||
| @@ -374,6 +381,9 @@ build_mindspore() | |||||
| if [[ "X$ENABLE_DUMP2PROTO" = "Xon" ]]; then | if [[ "X$ENABLE_DUMP2PROTO" = "Xon" ]]; then | ||||
| CMAKE_ARGS="${CMAKE_ARGS} -DENABLE_DUMP_PROTO=ON" | CMAKE_ARGS="${CMAKE_ARGS} -DENABLE_DUMP_PROTO=ON" | ||||
| fi | fi | ||||
| if [[ "X$ENABLE_GITEE" = "Xon" ]]; then | |||||
| CMAKE_ARGS="${CMAKE_ARGS} -DENABLE_GITEE=ON" | |||||
| fi | |||||
| CMAKE_ARGS="${CMAKE_ARGS} -DENABLE_DUMP_IR=${ENABLE_DUMP_IR}" | CMAKE_ARGS="${CMAKE_ARGS} -DENABLE_DUMP_IR=${ENABLE_DUMP_IR}" | ||||
| CMAKE_ARGS="${CMAKE_ARGS} -DENABLE_PYTHON=${ENABLE_PYTHON}" | CMAKE_ARGS="${CMAKE_ARGS} -DENABLE_PYTHON=${ENABLE_PYTHON}" | ||||
| if [[ "X$ENABLE_MPI" = "Xon" ]]; then | if [[ "X$ENABLE_MPI" = "Xon" ]]; then | ||||
| @@ -1,10 +1,19 @@ | |||||
| set(gtest_CXXFLAGS "-D_FORTIFY_SOURCE=2 -D_GLIBCXX_USE_CXX11_ABI=0 -O2") | set(gtest_CXXFLAGS "-D_FORTIFY_SOURCE=2 -D_GLIBCXX_USE_CXX11_ABI=0 -O2") | ||||
| set(gtest_CFLAGS "-D_FORTIFY_SOURCE=2 -O2") | set(gtest_CFLAGS "-D_FORTIFY_SOURCE=2 -O2") | ||||
| if (ENABLE_GITEE) | |||||
| set(REQ_URL "https://gitee.com/mirrors/googletest/repository/archive/release-1.8.0.tar.gz") | |||||
| set(MD5 "89e13ca1aa48d370719d58010b83f62c") | |||||
| else() | |||||
| set(REQ_URL "https://github.com/google/googletest/archive/release-1.8.0.tar.gz") | |||||
| set(MD5 "16877098823401d1bf2ed7891d7dce36") | |||||
| endif () | |||||
| mindspore_add_pkg(gtest | mindspore_add_pkg(gtest | ||||
| VER 1.8.0 | VER 1.8.0 | ||||
| LIBS gtest | LIBS gtest | ||||
| URL https://github.com/google/googletest/archive/release-1.8.0.tar.gz | |||||
| MD5 16877098823401d1bf2ed7891d7dce36 | |||||
| URL ${REQ_URL} | |||||
| MD5 ${MD5} | |||||
| CMAKE_OPTION -DBUILD_TESTING=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DBUILD_SHARED_LIBS=ON | CMAKE_OPTION -DBUILD_TESTING=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DBUILD_SHARED_LIBS=ON | ||||
| -DCMAKE_MACOSX_RPATH=TRUE -Dgtest_disable_pthreads=ON) | -DCMAKE_MACOSX_RPATH=TRUE -Dgtest_disable_pthreads=ON) | ||||
| include_directories(${gtest_INC}) | include_directories(${gtest_INC}) | ||||
| @@ -1,9 +1,18 @@ | |||||
| set(nlohmann_json_CXXFLAGS "-D_FORTIFY_SOURCE=2 -O2") | set(nlohmann_json_CXXFLAGS "-D_FORTIFY_SOURCE=2 -O2") | ||||
| set(nlohmann_json_CFLAGS "-D_FORTIFY_SOURCE=2 -O2") | set(nlohmann_json_CFLAGS "-D_FORTIFY_SOURCE=2 -O2") | ||||
| if (ENABLE_GITEE) | |||||
| set(REQ_URL "https://gitee.com/mirrors/JSON-for-Modern-CPP/repository/archive/v3.6.1.zip") | |||||
| set(MD5 "5bda78ce308e6cfcf614dcf1d5ff27a7") | |||||
| else() | |||||
| set(REQ_URL "https://github.com/nlohmann/json/releases/download/v3.6.1/include.zip") | |||||
| set(MD5 "0dc903888211db3a0f170304cd9f3a89") | |||||
| endif () | |||||
| mindspore_add_pkg(nlohmann_json | mindspore_add_pkg(nlohmann_json | ||||
| VER 3.6.1 | VER 3.6.1 | ||||
| HEAD_ONLY ./ | HEAD_ONLY ./ | ||||
| URL https://github.com/nlohmann/json/releases/download/v3.6.1/include.zip | |||||
| MD5 0dc903888211db3a0f170304cd9f3a89) | |||||
| URL ${REQ_URL} | |||||
| MD5 ${MD5}) | |||||
| include_directories(${nlohmann_json_INC}) | include_directories(${nlohmann_json_INC}) | ||||
| add_library(mindspore::json ALIAS nlohmann_json) | add_library(mindspore::json ALIAS nlohmann_json) | ||||
| @@ -9,11 +9,18 @@ if (CMAKE_SYSTEM_NAME MATCHES "Windows") | |||||
| URL https://github.com/oneapi-src/oneDNN/releases/download/v1.5/dnnl_win_1.5.0_cpu_vcomp.zip | URL https://github.com/oneapi-src/oneDNN/releases/download/v1.5/dnnl_win_1.5.0_cpu_vcomp.zip | ||||
| MD5 17757c84f49edd42d34ae8c9288110a1) | MD5 17757c84f49edd42d34ae8c9288110a1) | ||||
| else() | else() | ||||
| if (ENABLE_GITEE) | |||||
| set(REQ_URL "https://gitee.com/mirrors/MKL-DNN/repository/archive/v1.5.tar.gz") | |||||
| set(MD5 "5e0f3800d484969d420188e9cff7348c") | |||||
| else() | |||||
| set(REQ_URL "https://github.com/oneapi-src/oneDNN/archive/v1.5.tar.gz") | |||||
| set(MD5 "5d97e0e8f4c0b37da5f524533b7a644b") | |||||
| endif () | |||||
| mindspore_add_pkg(onednn | mindspore_add_pkg(onednn | ||||
| VER 1.5 | VER 1.5 | ||||
| LIBS dnnl mkldnn | LIBS dnnl mkldnn | ||||
| URL https://github.com/oneapi-src/oneDNN/archive/v1.5.tar.gz | |||||
| MD5 5d97e0e8f4c0b37da5f524533b7a644b | |||||
| URL ${REQ_URL} | |||||
| MD5 ${MD5} | |||||
| CMAKE_OPTION -DDNNL_ARCH_OPT_FLAGS='' -DDNNL_CPU_RUNTIME='SEQ' -DDNNL_BUILD_EXAMPLES=OFF -DDNNL_BUILD_TESTS=OFF) | CMAKE_OPTION -DDNNL_ARCH_OPT_FLAGS='' -DDNNL_CPU_RUNTIME='SEQ' -DDNNL_BUILD_EXAMPLES=OFF -DDNNL_BUILD_TESTS=OFF) | ||||
| endif() | endif() | ||||
| @@ -1,5 +1,13 @@ | |||||
| if (ENABLE_GITEE) | |||||
| set(REQ_URL "https://gitee.com/mirrors/ONNX/repository/archive/v1.6.0.tar.gz") | |||||
| set(MD5 "1bdbcecdd68ea8392630467646776e02") | |||||
| else() | |||||
| set(REQ_URL "https://github.com/onnx/onnx/releases/download/v1.6.0/onnx-1.6.0.tar.gz") | |||||
| set(MD5 "512f2779d6215d4a36f366b6b9acdf1e") | |||||
| endif () | |||||
| mindspore_add_pkg(ms_onnx | mindspore_add_pkg(ms_onnx | ||||
| VER 1.6.0 | VER 1.6.0 | ||||
| HEAD_ONLY ./ | HEAD_ONLY ./ | ||||
| URL https://github.com/onnx/onnx/releases/download/v1.6.0/onnx-1.6.0.tar.gz | |||||
| MD5 512f2779d6215d4a36f366b6b9acdf1e) | |||||
| URL ${REQ_URL} | |||||
| MD5 ${MD5}) | |||||
| @@ -17,12 +17,20 @@ set(CMAKE_CXX_FLAGS ${_ms_tmp_CMAKE_CXX_FLAGS}) | |||||
| string(REPLACE " -Wall" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") | string(REPLACE " -Wall" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") | ||||
| string(REPLACE " -Werror" "" 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.8.0.tar.gz") | |||||
| set(MD5 "eba86ae9f07ba5cfbaf8af3bc4e84236") | |||||
| else() | |||||
| set(REQ_URL "https://github.com/protocolbuffers/protobuf/archive/v3.8.0.tar.gz") | |||||
| set(MD5 "3d9e32700639618a4d2d342c99d4507a") | |||||
| endif () | |||||
| mindspore_add_pkg(protobuf | mindspore_add_pkg(protobuf | ||||
| VER 3.8.0 | VER 3.8.0 | ||||
| LIBS protobuf | LIBS protobuf | ||||
| EXE protoc | EXE protoc | ||||
| URL https://github.com/protocolbuffers/protobuf/archive/v3.8.0.tar.gz | |||||
| MD5 3d9e32700639618a4d2d342c99d4507a | |||||
| URL ${REQ_URL} | |||||
| MD5 ${MD5} | |||||
| CMAKE_PATH cmake/ | CMAKE_PATH cmake/ | ||||
| CMAKE_OPTION -Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_BUILD_SHARED_LIBS=OFF) | CMAKE_OPTION -Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_BUILD_SHARED_LIBS=OFF) | ||||
| @@ -31,7 +31,7 @@ if (NOT EXISTS ${_MS_LIB_CACHE}) | |||||
| file(MAKE_DIRECTORY ${_MS_LIB_CACHE}) | file(MAKE_DIRECTORY ${_MS_LIB_CACHE}) | ||||
| endif () | endif () | ||||
| if (DEFINED ENV{MSLIBS_SERVER}) | |||||
| if (DEFINED ENV{MSLIBS_SERVER} AND NOT ENABLE_GITEE) | |||||
| set(LOCAL_LIBS_SERVER $ENV{MSLIBS_SERVER}) | set(LOCAL_LIBS_SERVER $ENV{MSLIBS_SERVER}) | ||||
| message("LOCAL_LIBS_SERVER: ${LOCAL_LIBS_SERVER}") | message("LOCAL_LIBS_SERVER: ${LOCAL_LIBS_SERVER}") | ||||
| endif () | endif () | ||||