Partially merge ngraph / IE cmakes (#6316)
* Moved cmake/templates to <root> * Removed ngraph versioning, reused IE one * Merged converage * Removed duplicatde ngraph cmake options * Moved dependencies to <root>/cmake * Removed installing of VERSION
This commit is contained in:
parent
730577294f
commit
92239b39bf
@ -20,6 +20,10 @@ include(cmake/features.cmake)
|
||||
# These options are shared with 3rdparty plugins by means of developer package
|
||||
include(cmake/dependencies.cmake)
|
||||
|
||||
if(ENABLE_COVERAGE)
|
||||
include(cmake/coverage.cmake)
|
||||
endif()
|
||||
|
||||
# resolving dependencies for the project
|
||||
message (STATUS "PROJECT ............................... " ${PROJECT_NAME})
|
||||
message (STATUS "CMAKE_BINARY_DIR ...................... " ${CMAKE_BINARY_DIR})
|
||||
@ -47,12 +51,6 @@ function(build_ngraph)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
if (ENABLE_SANITIZER)
|
||||
ngraph_set(NGRAPH_ADDRESS_SANITIZER ON)
|
||||
else ()
|
||||
ngraph_set(NGRAPH_ADDRESS_SANITIZER OFF)
|
||||
endif ()
|
||||
|
||||
if(ENABLE_TESTS AND NOT ANDROID)
|
||||
ngraph_set(NGRAPH_UNIT_TEST_ENABLE ON)
|
||||
else()
|
||||
@ -66,24 +64,6 @@ function(build_ngraph)
|
||||
endif()
|
||||
ngraph_set(NGRAPH_INTERPRETER_ENABLE ON)
|
||||
|
||||
if(TREAT_WARNING_AS_ERROR)
|
||||
ngraph_set(NGRAPH_WARNINGS_AS_ERRORS ON)
|
||||
else()
|
||||
ngraph_set(NGRAPH_WARNINGS_AS_ERRORS OFF)
|
||||
endif()
|
||||
|
||||
if(ENABLE_SANITIZER)
|
||||
ngraph_set(NGRAPH_ADDRESS_SANITIZER_ENABLE ON)
|
||||
else()
|
||||
ngraph_set(NGRAPH_ADDRESS_SANITIZER_ENABLE OFF)
|
||||
endif()
|
||||
|
||||
if(ENABLE_THREAD_SANITIZER)
|
||||
ngraph_set(NGRAPH_THREAD_SANITIZER_ENABLE ON)
|
||||
else()
|
||||
ngraph_set(NGRAPH_THREAD_SANITIZER_ENABLE OFF)
|
||||
endif()
|
||||
|
||||
if(ENABLE_PYTHON)
|
||||
ngraph_set(NGRAPH_PYTHON_BUILD_ENABLE ON)
|
||||
else()
|
||||
@ -110,7 +90,6 @@ function(build_ngraph)
|
||||
ie_cpack_add_component(ngraph REQUIRED)
|
||||
ie_cpack_add_component(ngraph_dev REQUIRED DEPENDS ngraph)
|
||||
|
||||
set(SDL_cmake_included ON)
|
||||
add_subdirectory(ngraph)
|
||||
set(NGRAPH_LIBRARIES ngraph PARENT_SCOPE)
|
||||
set(NGRAPH_REF_LIBRARIES ngraph_reference PARENT_SCOPE)
|
||||
|
107
cmake/coverage.cmake
Normal file
107
cmake/coverage.cmake
Normal file
@ -0,0 +1,107 @@
|
||||
# Copyright (C) 2018-2021 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
set(OV_COVERAGE_BASE_DIRECTORY "${OpenVINO_MAIN_SOURCE_DIR}")
|
||||
|
||||
ie_coverage_clean(REPOSITORY "openvino"
|
||||
DIRECTORY "${OV_COVERAGE_GCDA_DATA_DIRECTORY}")
|
||||
ie_coverage_capture(INFO_FILE "openvino"
|
||||
BASE_DIRECTORY "${OV_COVERAGE_BASE_DIRECTORY}"
|
||||
DIRECTORY "${OV_COVERAGE_GCDA_DATA_DIRECTORY}")
|
||||
|
||||
# Generate reports
|
||||
|
||||
ie_coverage_extract(INPUT "openvino" OUTPUT "inference_engine"
|
||||
PATTERNS "${OV_COVERAGE_BASE_DIRECTORY}/inference_engine/*"
|
||||
"${OV_COVERAGE_BASE_DIRECTORY}/plugin_api/*")
|
||||
ie_coverage_genhtml(INFO_FILE "inference_engine"
|
||||
PREFIX "${OV_COVERAGE_BASE_DIRECTORY}")
|
||||
|
||||
ie_coverage_extract(INPUT "openvino" OUTPUT "inference_engine_ir_v10_reader"
|
||||
PATTERNS "${OV_COVERAGE_BASE_DIRECTORY}/readers/ir_reader/*"
|
||||
"${OV_COVERAGE_BASE_DIRECTORY}/readers/reader_api/*")
|
||||
ie_coverage_genhtml(INFO_FILE "inference_engine_ir_v10_reader"
|
||||
PREFIX "${OV_COVERAGE_BASE_DIRECTORY}")
|
||||
|
||||
ie_coverage_extract(INPUT "openvino" OUTPUT "inference_engine_legacy"
|
||||
PATTERNS "${OV_COVERAGE_BASE_DIRECTORY}/legacy_api/*")
|
||||
ie_coverage_genhtml(INFO_FILE "inference_engine_legacy"
|
||||
PREFIX "${OV_COVERAGE_BASE_DIRECTORY}")
|
||||
|
||||
ie_coverage_extract(INPUT "openvino" OUTPUT "hetero_plugin"
|
||||
PATTERNS "${OV_COVERAGE_BASE_DIRECTORY}/hetero_plugin/*")
|
||||
ie_coverage_genhtml(INFO_FILE "hetero_plugin"
|
||||
PREFIX "${OV_COVERAGE_BASE_DIRECTORY}")
|
||||
|
||||
ie_coverage_extract(INPUT "openvino" OUTPUT "multi_device"
|
||||
PATTERNS "${OV_COVERAGE_BASE_DIRECTORY}/multi_device/*")
|
||||
ie_coverage_genhtml(INFO_FILE "multi_device"
|
||||
PREFIX "${OV_COVERAGE_BASE_DIRECTORY}")
|
||||
|
||||
ie_coverage_extract(INPUT "openvino" OUTPUT "preprocessing"
|
||||
PATTERNS "${OV_COVERAGE_BASE_DIRECTORY}/preprocessing/*")
|
||||
ie_coverage_genhtml(INFO_FILE "preprocessing"
|
||||
PREFIX "${OV_COVERAGE_BASE_DIRECTORY}")
|
||||
|
||||
ie_coverage_extract(INPUT "openvino" OUTPUT "inference_engine_transformations"
|
||||
PATTERNS "${OV_COVERAGE_BASE_DIRECTORY}/inference_engine_transformations/*")
|
||||
ie_coverage_genhtml(INFO_FILE "inference_engine_transformations"
|
||||
PREFIX "${OV_COVERAGE_BASE_DIRECTORY}")
|
||||
|
||||
ie_coverage_extract(INPUT "openvino" OUTPUT "inference_engine_snippets"
|
||||
PATTERNS "${OV_COVERAGE_BASE_DIRECTORY}/snippets/*")
|
||||
ie_coverage_genhtml(INFO_FILE "inference_engine_snippets"
|
||||
PREFIX "${OV_COVERAGE_BASE_DIRECTORY}")
|
||||
|
||||
ie_coverage_extract(INPUT "openvino" OUTPUT "low_precision_transformations"
|
||||
PATTERNS "${OV_COVERAGE_BASE_DIRECTORY}/low_precision_transformations/*")
|
||||
ie_coverage_genhtml(INFO_FILE "low_precision_transformations"
|
||||
PREFIX "${OV_COVERAGE_BASE_DIRECTORY}")
|
||||
|
||||
ie_coverage_extract(INPUT "openvino" OUTPUT "template_plugin"
|
||||
PATTERNS "${OV_COVERAGE_BASE_DIRECTORY}/template_plugin/*")
|
||||
ie_coverage_genhtml(INFO_FILE "template_plugin"
|
||||
PREFIX "${OV_COVERAGE_BASE_DIRECTORY}")
|
||||
|
||||
if(ENABLE_MKL_DNN)
|
||||
ie_coverage_extract(INPUT "openvino" OUTPUT "mkldnn_plugin"
|
||||
PATTERNS "${OV_COVERAGE_BASE_DIRECTORY}/mkldnn_plugin/*")
|
||||
ie_coverage_genhtml(INFO_FILE "mkldnn_plugin"
|
||||
PREFIX "${OV_COVERAGE_BASE_DIRECTORY}")
|
||||
endif()
|
||||
|
||||
if(ENABLE_CLDNN)
|
||||
ie_coverage_extract(INPUT "openvino" OUTPUT "cldnn_engine"
|
||||
PATTERNS "${OV_COVERAGE_BASE_DIRECTORY}/cldnn_engine/*")
|
||||
ie_coverage_genhtml(INFO_FILE "cldnn_engine"
|
||||
PREFIX "${OV_COVERAGE_BASE_DIRECTORY}")
|
||||
endif()
|
||||
|
||||
if(ENABLE_GNA)
|
||||
ie_coverage_extract(INPUT "openvino" OUTPUT "gna_plugin"
|
||||
PATTERNS "${OV_COVERAGE_BASE_DIRECTORY}/gna_plugin/*")
|
||||
ie_coverage_genhtml(INFO_FILE "gna_plugin"
|
||||
PREFIX "${OV_COVERAGE_BASE_DIRECTORY}")
|
||||
endif()
|
||||
|
||||
ie_coverage_extract(INPUT "openvino" OUTPUT "ngraph"
|
||||
PATTERNS "${OV_COVERAGE_BASE_DIRECTORY}/ngraph/core/*")
|
||||
ie_coverage_genhtml(INFO_FILE "ngraph"
|
||||
PREFIX "${OV_COVERAGE_BASE_DIRECTORY}")
|
||||
|
||||
if(NGRAPH_ONNX_IMPORT_ENABLE)
|
||||
ie_coverage_extract(INPUT "openvino" OUTPUT "onnx_importer"
|
||||
PATTERNS "${OV_COVERAGE_BASE_DIRECTORY}/ngraph/frontend/onnx_common*"
|
||||
"${OV_COVERAGE_BASE_DIRECTORY}/ngraph/frontend/onnx_import*")
|
||||
ie_coverage_genhtml(INFO_FILE "onnx_importer"
|
||||
PREFIX "${OV_COVERAGE_BASE_DIRECTORY}")
|
||||
endif()
|
||||
|
||||
if(NGRAPH_ONNX_EDITOR_ENABLE)
|
||||
ie_coverage_extract(INPUT "openvino" OUTPUT "onnx_editor"
|
||||
PATTERNS "${OV_COVERAGE_BASE_DIRECTORY}/ngraph/frontend/onnx_editor*")
|
||||
ie_coverage_genhtml(INFO_FILE "onnx_editor"
|
||||
PREFIX "${OV_COVERAGE_BASE_DIRECTORY}")
|
||||
endif()
|
||||
|
@ -2,8 +2,35 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
cmake_policy(SET CMP0054 NEW)
|
||||
|
||||
# TODO: fix it
|
||||
set_temp_directory(TEMP "${IE_MAIN_SOURCE_DIR}")
|
||||
|
||||
if(CMAKE_CROSSCOMPILING)
|
||||
set(CMAKE_STAGING_PREFIX "${TEMP}")
|
||||
endif()
|
||||
|
||||
if(ENABLE_SAME_BRANCH_FOR_MODELS)
|
||||
branchName(MODELS_BRANCH)
|
||||
else()
|
||||
set(MODELS_BRANCH "master")
|
||||
endif()
|
||||
|
||||
if(ENABLE_DATA)
|
||||
add_models_repo(${ENABLE_DATA} "data:https://github.com/openvinotoolkit/testdata.git")
|
||||
set(MODELS_PATH "${TEMP}/models/src/data")
|
||||
set(DATA_PATH "${MODELS_PATH}")
|
||||
endif()
|
||||
|
||||
message(STATUS "MODELS_PATH=" ${MODELS_PATH})
|
||||
|
||||
fetch_models_and_validation_set()
|
||||
|
||||
if(COMMAND get_linux_name)
|
||||
get_linux_name(LINUX_OS_NAME)
|
||||
endif()
|
||||
|
||||
if(CMAKE_CROSSCOMPILING AND CMAKE_HOST_SYSTEM_NAME MATCHES Linux AND CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "amd64.*|x86_64.*|AMD64.*")
|
||||
set(protoc_version "3.7.1")
|
||||
|
||||
@ -16,7 +43,7 @@ if(CMAKE_CROSSCOMPILING AND CMAKE_HOST_SYSTEM_NAME MATCHES Linux AND CMAKE_HOST_
|
||||
|
||||
reset_deps_cache(SYSTEM_PROTOC)
|
||||
|
||||
find_program(
|
||||
find_host_program(
|
||||
SYSTEM_PROTOC
|
||||
NAMES protoc
|
||||
PATHS "${SYSTEM_PROTOC_ROOT}/bin"
|
||||
@ -27,3 +54,293 @@ if(CMAKE_CROSSCOMPILING AND CMAKE_HOST_SYSTEM_NAME MATCHES Linux AND CMAKE_HOST_
|
||||
|
||||
update_deps_cache(SYSTEM_PROTOC "${SYSTEM_PROTOC}" "Path to host protoc for ONNX Importer")
|
||||
endif()
|
||||
|
||||
if(ENABLE_MYRIAD)
|
||||
include(${IE_MAIN_SOURCE_DIR}/cmake/vpu_dependencies.cmake)
|
||||
endif()
|
||||
|
||||
## Intel OMP package
|
||||
if(THREADING STREQUAL "OMP")
|
||||
reset_deps_cache(OMP)
|
||||
if(WIN32 AND X86_64)
|
||||
RESOLVE_DEPENDENCY(OMP
|
||||
ARCHIVE_WIN "iomp.zip"
|
||||
TARGET_PATH "${TEMP}/omp"
|
||||
ENVIRONMENT "OMP"
|
||||
VERSION_REGEX ".*_([a-z]*_([a-z0-9]+\\.)*[0-9]+).*"
|
||||
SHA256 "62c68646747fb10f19b53217cb04a1e10ff93606f992e6b35eb8c31187c68fbf")
|
||||
elseif(LINUX AND X86_64)
|
||||
RESOLVE_DEPENDENCY(OMP
|
||||
ARCHIVE_LIN "iomp.tgz"
|
||||
TARGET_PATH "${TEMP}/omp"
|
||||
ENVIRONMENT "OMP"
|
||||
VERSION_REGEX ".*_([a-z]*_([a-z0-9]+\\.)*[0-9]+).*"
|
||||
SHA256 "7832b16d82513ee880d97c27c7626f9525ebd678decf6a8fe6c38550f73227d9")
|
||||
elseif(APPLE AND X86_64)
|
||||
RESOLVE_DEPENDENCY(OMP
|
||||
ARCHIVE_MAC "iomp_20190130_mac.tgz"
|
||||
TARGET_PATH "${TEMP}/omp"
|
||||
ENVIRONMENT "OMP"
|
||||
VERSION_REGEX ".*_([a-z]*_([a-z0-9]+\\.)*[0-9]+).*"
|
||||
SHA256 "591ea4a7e08bbe0062648916f42bded71d24c27f00af30a8f31a29b5878ea0cc")
|
||||
else()
|
||||
message(FATAL_ERROR "Intel OMP is not available on current platform")
|
||||
endif()
|
||||
update_deps_cache(OMP "${OMP}" "Path to OMP root folder")
|
||||
log_rpath_from_dir(OMP "${OMP}/lib")
|
||||
debug_message(STATUS "intel_omp=" ${OMP})
|
||||
|
||||
ie_cpack_add_component(omp REQUIRED)
|
||||
file(GLOB_RECURSE source_list "${OMP}/*${CMAKE_SHARED_LIBRARY_SUFFIX}*")
|
||||
install(FILES ${source_list}
|
||||
DESTINATION "deployment_tools/inference_engine/external/omp/lib"
|
||||
COMPONENT omp)
|
||||
|
||||
endif()
|
||||
|
||||
## TBB package
|
||||
if(THREADING STREQUAL "TBB" OR THREADING STREQUAL "TBB_AUTO")
|
||||
reset_deps_cache(TBBROOT TBB_DIR)
|
||||
|
||||
if(WIN32 AND X86_64)
|
||||
#TODO: add target_path to be platform specific as well, to avoid following if
|
||||
RESOLVE_DEPENDENCY(TBB
|
||||
ARCHIVE_WIN "tbb2020_20200415_win.zip"
|
||||
TARGET_PATH "${TEMP}/tbb"
|
||||
ENVIRONMENT "TBBROOT"
|
||||
SHA256 "f1c9b9e2861efdaa01552bd25312ccbc5feeb45551e5f91ae61e29221c5c1479")
|
||||
RESOLVE_DEPENDENCY(TBBBIND_2_4
|
||||
ARCHIVE_WIN "tbbbind_2_4_static_win_v2.zip"
|
||||
TARGET_PATH "${TEMP}/tbbbind_2_4"
|
||||
ENVIRONMENT "TBBBIND_2_4_ROOT"
|
||||
SHA256 "90dc165652f6ac2ed3014c71e57f797fcc4b11e1498a468e3d2c85deb2a4186a")
|
||||
elseif(ANDROID) # Should be before LINUX due LINUX is detected as well
|
||||
RESOLVE_DEPENDENCY(TBB
|
||||
ARCHIVE_ANDROID "tbb2020_20200404_android.tgz"
|
||||
TARGET_PATH "${TEMP}/tbb"
|
||||
ENVIRONMENT "TBBROOT"
|
||||
SHA256 "f42d084224cc2d643314bd483ad180b081774608844000f132859fca3e9bf0ce")
|
||||
elseif(LINUX AND X86_64)
|
||||
RESOLVE_DEPENDENCY(TBB
|
||||
ARCHIVE_LIN "tbb2020_20200415_lin_strip.tgz"
|
||||
TARGET_PATH "${TEMP}/tbb"
|
||||
ENVIRONMENT "TBBROOT"
|
||||
SHA256 "95b2f3b0b70c7376a0c7de351a355c2c514b42c4966e77e3e34271a599501008")
|
||||
RESOLVE_DEPENDENCY(TBBBIND_2_4
|
||||
ARCHIVE_LIN "tbbbind_2_4_static_lin_v2.tgz"
|
||||
TARGET_PATH "${TEMP}/tbbbind_2_4"
|
||||
ENVIRONMENT "TBBBIND_2_4_ROOT"
|
||||
SHA256 "6dc926258c6cd3cba0f5c2cc672fd2ad599a1650fe95ab11122e8f361a726cb6")
|
||||
elseif(LINUX AND AARCH64)
|
||||
RESOLVE_DEPENDENCY(TBB
|
||||
ARCHIVE_LIN "keembay/tbb2020_38404_kmb_lic.tgz"
|
||||
TARGET_PATH "${TEMP}/tbb_yocto"
|
||||
ENVIRONMENT "TBBROOT"
|
||||
SHA256 "321261ff2eda6d4568a473cb883262bce77a93dac599f7bd65d2918bdee4d75b")
|
||||
elseif(APPLE AND X86_64)
|
||||
RESOLVE_DEPENDENCY(TBB
|
||||
ARCHIVE_MAC "tbb2020_20200404_mac.tgz"
|
||||
TARGET_PATH "${TEMP}/tbb"
|
||||
ENVIRONMENT "TBBROOT"
|
||||
SHA256 "ad9cf52e657660058aa6c6844914bc0fc66241fec89a392d8b79a7ff69c3c7f6")
|
||||
else()
|
||||
message(FATAL_ERROR "TBB is not available on current platform")
|
||||
endif()
|
||||
|
||||
update_deps_cache(TBBROOT "${TBB}" "Path to TBB root folder")
|
||||
update_deps_cache(TBB_DIR "${TBB}/cmake" "Path to TBB cmake folder")
|
||||
|
||||
update_deps_cache(TBBBIND_2_4_DIR "${TBBBIND_2_4}/cmake" "Path to TBBBIND_2_4 cmake folder")
|
||||
|
||||
if(WIN32)
|
||||
log_rpath_from_dir(TBB "${TBB}/bin")
|
||||
else ()
|
||||
log_rpath_from_dir(TBB "${TBB}/lib")
|
||||
endif()
|
||||
debug_message(STATUS "tbb=" ${TBB})
|
||||
endif()
|
||||
|
||||
## OpenCV
|
||||
if(ENABLE_OPENCV)
|
||||
reset_deps_cache(OpenCV_DIR)
|
||||
|
||||
set(OPENCV_VERSION "4.5.2")
|
||||
set(OPENCV_BUILD "076")
|
||||
set(OPENCV_BUILD_YOCTO "772")
|
||||
|
||||
if(AARCH64)
|
||||
if(DEFINED ENV{THIRDPARTY_SERVER_PATH})
|
||||
set(IE_PATH_TO_DEPS "$ENV{THIRDPARTY_SERVER_PATH}")
|
||||
elseif(DEFINED THIRDPARTY_SERVER_PATH)
|
||||
set(IE_PATH_TO_DEPS "${THIRDPARTY_SERVER_PATH}")
|
||||
else()
|
||||
message(WARNING "OpenCV is not found!")
|
||||
endif()
|
||||
|
||||
if(DEFINED IE_PATH_TO_DEPS)
|
||||
set(OPENCV_SUFFIX "yocto_kmb")
|
||||
set(OPENCV_BUILD "${OPENCV_BUILD_YOCTO}")
|
||||
|
||||
RESOLVE_DEPENDENCY(OPENCV
|
||||
ARCHIVE_LIN "opencv/opencv_${OPENCV_VERSION}-${OPENCV_BUILD}_${OPENCV_SUFFIX}.txz"
|
||||
TARGET_PATH "${TEMP}/opencv_${OPENCV_VERSION}_${OPENCV_SUFFIX}/opencv"
|
||||
ENVIRONMENT "OpenCV_DIR"
|
||||
VERSION_REGEX ".*_([0-9]+.[0-9]+.[0-9]+).*"
|
||||
SHA256 "23c250796ad5fc9db810e1680ccdb32c45dc0e50cace5e0f02b30faf652fe343")
|
||||
|
||||
unset(IE_PATH_TO_DEPS)
|
||||
endif()
|
||||
else()
|
||||
if(WIN32 AND X86_64)
|
||||
RESOLVE_DEPENDENCY(OPENCV
|
||||
ARCHIVE_WIN "opencv/opencv_${OPENCV_VERSION}-${OPENCV_BUILD}.txz"
|
||||
TARGET_PATH "${TEMP}/opencv_${OPENCV_VERSION}/opencv"
|
||||
ENVIRONMENT "OpenCV_DIR"
|
||||
VERSION_REGEX ".*_([0-9]+.[0-9]+.[0-9]+).*"
|
||||
SHA256 "a14f872e6b63b6ac12c7ff47fa49e578d14c14433b57f5d85ab5dd48a079938c")
|
||||
elseif(APPLE AND X86_64)
|
||||
RESOLVE_DEPENDENCY(OPENCV
|
||||
ARCHIVE_MAC "opencv/opencv_${OPENCV_VERSION}-${OPENCV_BUILD}_osx.txz"
|
||||
TARGET_PATH "${TEMP}/opencv_${OPENCV_VERSION}_osx/opencv"
|
||||
ENVIRONMENT "OpenCV_DIR"
|
||||
VERSION_REGEX ".*_([0-9]+.[0-9]+.[0-9]+).*"
|
||||
SHA256 "3e162f96e86cba8836618134831d9cf76df0438778b3e27e261dedad9254c514")
|
||||
elseif(LINUX)
|
||||
if(AARCH64)
|
||||
set(OPENCV_SUFFIX "yocto_kmb")
|
||||
set(OPENCV_BUILD "${OPENCV_BUILD_YOCTO}")
|
||||
elseif(ARM)
|
||||
set(OPENCV_SUFFIX "debian9arm")
|
||||
set(OPENCV_HASH "4274f8c40b17215f4049096b524e4a330519f3e76813c5a3639b69c48633d34e")
|
||||
elseif((LINUX_OS_NAME STREQUAL "CentOS 7" OR
|
||||
CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.9") AND X86_64)
|
||||
set(OPENCV_SUFFIX "centos7")
|
||||
set(OPENCV_HASH "5fa76985c84fe7c64531682ef0b272510c51ac0d0565622514edf1c88b33404a")
|
||||
elseif(LINUX_OS_NAME MATCHES "CentOS 8" AND X86_64)
|
||||
set(OPENCV_SUFFIX "centos8")
|
||||
set(OPENCV_HASH "db087dfd412eedb8161636ec083ada85ff278109948d1d62a06b0f52e1f04202")
|
||||
elseif(LINUX_OS_NAME STREQUAL "Ubuntu 16.04" AND X86_64)
|
||||
set(OPENCV_SUFFIX "ubuntu16")
|
||||
set(OPENCV_HASH "cd46831b4d8d1c0891d8d22ff5b2670d0a465a8a8285243059659a50ceeae2c3")
|
||||
elseif(LINUX_OS_NAME STREQUAL "Ubuntu 18.04" AND X86_64)
|
||||
set(OPENCV_SUFFIX "ubuntu18")
|
||||
set(OPENCV_HASH "db087dfd412eedb8161636ec083ada85ff278109948d1d62a06b0f52e1f04202")
|
||||
elseif((LINUX_OS_NAME STREQUAL "Ubuntu 20.04" OR LINUX_OS_NAME STREQUAL "LinuxMint 20.1") AND X86_64)
|
||||
set(OPENCV_SUFFIX "ubuntu20")
|
||||
set(OPENCV_HASH "2fe7bbc40e1186eb8d099822038cae2821abf617ac7a16fadf98f377c723e268")
|
||||
elseif(NOT DEFINED OpenCV_DIR AND NOT DEFINED ENV{OpenCV_DIR})
|
||||
message(FATAL_ERROR "OpenCV is not available on current platform (${LINUX_OS_NAME})")
|
||||
endif()
|
||||
RESOLVE_DEPENDENCY(OPENCV
|
||||
ARCHIVE_LIN "opencv/opencv_${OPENCV_VERSION}-${OPENCV_BUILD}_${OPENCV_SUFFIX}.txz"
|
||||
TARGET_PATH "${TEMP}/opencv_${OPENCV_VERSION}_${OPENCV_SUFFIX}/opencv"
|
||||
ENVIRONMENT "OpenCV_DIR"
|
||||
VERSION_REGEX ".*_([0-9]+.[0-9]+.[0-9]+).*"
|
||||
SHA256 ${OPENCV_HASH})
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(ANDROID)
|
||||
set(ocv_cmake_path "${OPENCV}/sdk/native/jni/")
|
||||
else()
|
||||
set(ocv_cmake_path "${OPENCV}/cmake")
|
||||
endif()
|
||||
|
||||
update_deps_cache(OpenCV_DIR "${ocv_cmake_path}" "Path to OpenCV package folder")
|
||||
|
||||
if(WIN32)
|
||||
log_rpath_from_dir(OPENCV "${OpenCV_DIR}/../bin")
|
||||
elseif(ANDROID)
|
||||
log_rpath_from_dir(OPENCV "${OpenCV_DIR}/../../../lib")
|
||||
else()
|
||||
log_rpath_from_dir(OPENCV "${OpenCV_DIR}/../lib")
|
||||
endif()
|
||||
debug_message(STATUS "opencv=" ${OPENCV})
|
||||
else()
|
||||
reset_deps_cache(OpenCV_DIR)
|
||||
endif()
|
||||
|
||||
include(${IE_MAIN_SOURCE_DIR}/cmake/ie_parallel.cmake)
|
||||
|
||||
if(ENABLE_GNA)
|
||||
reset_deps_cache(
|
||||
GNA
|
||||
GNA_PLATFORM_DIR
|
||||
GNA_KERNEL_LIB_NAME
|
||||
GNA_LIBS_LIST
|
||||
GNA_LIB_DIR
|
||||
libGNA_INCLUDE_DIRS
|
||||
libGNA_LIBRARIES_BASE_PATH)
|
||||
if(GNA_LIBRARY_VERSION STREQUAL "GNA1")
|
||||
RESOLVE_DEPENDENCY(GNA
|
||||
ARCHIVE_UNIFIED "GNA/gna_20181120.zip"
|
||||
TARGET_PATH "${TEMP}/gna"
|
||||
SHA256 "b631d6cc5f6cca4a89a3f5dfa383066f3282fee25d633d9085c605bdd8090210")
|
||||
else()
|
||||
if(GNA_LIBRARY_VERSION STREQUAL "GNA1_1401")
|
||||
set(GNA_VERSION "01.00.00.1401")
|
||||
set(GNA_HASH "cc954e67525006bf8bd353a6682e38bf208f6d74e973e0fc292850e721f17452")
|
||||
endif()
|
||||
if(GNA_LIBRARY_VERSION STREQUAL "GNA2")
|
||||
set(GNA_VERSION "02.00.00.1226")
|
||||
set(GNA_HASH "d5450af15c993e264c25ac4591a7dab44722e10d15fca4f222a1b84429d4e5b6")
|
||||
endif()
|
||||
|
||||
set(FILES_TO_EXTRACT_LIST gna_${GNA_VERSION}/include)
|
||||
if(WIN32)
|
||||
LIST(APPEND FILES_TO_EXTRACT_LIST gna_${GNA_VERSION}/win64)
|
||||
else()
|
||||
LIST(APPEND FILES_TO_EXTRACT_LIST gna_${GNA_VERSION}/linux)
|
||||
endif()
|
||||
|
||||
RESOLVE_DEPENDENCY(GNA
|
||||
ARCHIVE_UNIFIED "GNA/GNA_${GNA_VERSION}.zip"
|
||||
TARGET_PATH "${TEMP}/gna_${GNA_VERSION}"
|
||||
VERSION_REGEX ".*_([0-9]+.[0-9]+.[0-9]+.[0-9]+).*"
|
||||
FILES_TO_EXTRACT FILES_TO_EXTRACT_LIST
|
||||
SHA256 ${GNA_HASH})
|
||||
endif()
|
||||
update_deps_cache(GNA "${GNA}" "Path to GNA root folder")
|
||||
debug_message(STATUS "gna=" ${GNA})
|
||||
endif()
|
||||
|
||||
if(ENABLE_SPEECH_DEMO)
|
||||
reset_deps_cache(SPEECH_LIBS_AND_DEMOS)
|
||||
if(DEFINED ENV{THIRDPARTY_SERVER_PATH})
|
||||
set(IE_PATH_TO_DEPS "$ENV{THIRDPARTY_SERVER_PATH}")
|
||||
elseif(DEFINED THIRDPARTY_SERVER_PATH)
|
||||
set(IE_PATH_TO_DEPS "${THIRDPARTY_SERVER_PATH}")
|
||||
else()
|
||||
message(WARNING "Unable to locate Speech Demo")
|
||||
endif()
|
||||
if(DEFINED IE_PATH_TO_DEPS)
|
||||
if(WIN32 AND X86_64)
|
||||
RESOLVE_DEPENDENCY(SPEECH_LIBS_AND_DEMOS
|
||||
ARCHIVE_WIN "speech_demo_1.0.0.774_windows.zip"
|
||||
VERSION_REGEX ".*_([0-9]+.[0-9]+.[0-9]+.[0-9]+).*"
|
||||
TARGET_PATH "${TEMP}/speech_demo_1.0.0.774"
|
||||
SHA256 "67b25170be5e89a4f0e90e8b39623b60c9a15b965c30329385e295fcd2edc856")
|
||||
debug_message(STATUS "speech_libs_and_demos=" ${SPEECH_LIBS_AND_DEMOS})
|
||||
elseif(LINUX AND X86_64)
|
||||
if(LINUX_OS_NAME STREQUAL "CentOS 7" OR CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.9")
|
||||
RESOLVE_DEPENDENCY(SPEECH_LIBS_AND_DEMOS
|
||||
ARCHIVE_LIN "speech_demo_1.0.0.774_centos.tgz"
|
||||
VERSION_REGEX ".*_([0-9]+.[0-9]+.[0-9]+.[0-9]+).*"
|
||||
TARGET_PATH "${TEMP}/speech_demo_1.0.0.774"
|
||||
SHA256 "5ec3b7be9ae05376aefae5bd5fd4a39b12c274e82817fd3218120b8e8fc8ff5a")
|
||||
debug_message(STATUS "speech_libs_and_demos=" ${SPEECH_LIBS_AND_DEMOS})
|
||||
else()
|
||||
RESOLVE_DEPENDENCY(SPEECH_LIBS_AND_DEMOS
|
||||
ARCHIVE_LIN "speech_demo_1.0.0.774_linux.tgz"
|
||||
VERSION_REGEX ".*_([0-9]+.[0-9]+.[0-9]+.[0-9]+).*"
|
||||
TARGET_PATH "${TEMP}/speech_demo_1.0.0.774"
|
||||
SHA256 "f0bbd0a6218b0365e7cfb1f860b34e4ace7e0d47dd60b369cdea8a480329810f")
|
||||
debug_message(STATUS "speech_libs_and_demos=" ${SPEECH_LIBS_AND_DEMOS})
|
||||
endif()
|
||||
else()
|
||||
message(FATAL_ERROR "Speech Demo is not available on current platform")
|
||||
endif()
|
||||
unset(IE_PATH_TO_DEPS)
|
||||
endif()
|
||||
update_deps_cache(SPEECH_LIBS_AND_DEMOS "${SPEECH_LIBS_AND_DEMOS}" "Path to SPEECH_LIBS_AND_DEMOS root folder")
|
||||
endif()
|
||||
|
@ -1,6 +1,7 @@
|
||||
# Copyright (C) 2018-2021 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
set(OV_COVERAGE_GCDA_DATA_DIRECTORY "${CMAKE_BINARY_DIR}")
|
||||
|
||||
if(NOT TARGET ie_coverage_clean)
|
||||
|
@ -2,6 +2,10 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
#
|
||||
# Common cmake options
|
||||
#
|
||||
|
||||
ie_dependent_option (ENABLE_MKL_DNN "MKL-DNN plugin for inference engine" ON "X86_64" OFF)
|
||||
|
||||
ie_option (ENABLE_TESTS "unit, behavior and functional tests" OFF)
|
||||
@ -37,15 +41,114 @@ find_package(PythonInterp 3 QUIET)
|
||||
ie_dependent_option (ENABLE_DOCS "Build docs using Doxygen" OFF "PYTHONINTERP_FOUND" OFF)
|
||||
|
||||
#
|
||||
# enable or disable output from NGRAPH_DEBUG statements
|
||||
# Inference Engine specific options
|
||||
#
|
||||
|
||||
ie_dependent_option (ENABLE_GNA "GNA support for inference engine" ON "NOT APPLE;NOT ANDROID;X86_64" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_CLDNN_TESTS "Enable clDNN unit tests" OFF "ENABLE_CLDNN" OFF)
|
||||
|
||||
# "MKL-DNN library based on OMP or TBB or Sequential implementation: TBB|OMP|SEQ"
|
||||
if(X86 OR ARM OR (MSVC AND (ARM OR AARCH64)) )
|
||||
set(THREADING_DEFAULT "SEQ")
|
||||
else()
|
||||
set(THREADING_DEFAULT "TBB")
|
||||
endif()
|
||||
set(THREADING "${THREADING_DEFAULT}" CACHE STRING "Threading")
|
||||
set_property(CACHE THREADING PROPERTY STRINGS "TBB" "TBB_AUTO" "OMP" "SEQ")
|
||||
list (APPEND IE_OPTIONS THREADING)
|
||||
if (NOT THREADING STREQUAL "TBB" AND
|
||||
NOT THREADING STREQUAL "TBB_AUTO" AND
|
||||
NOT THREADING STREQUAL "OMP" AND
|
||||
NOT THREADING STREQUAL "SEQ")
|
||||
message(FATAL_ERROR "THREADING should be set to TBB, TBB_AUTO, OMP or SEQ. Default option is ${THREADING_DEFAULT}")
|
||||
endif()
|
||||
|
||||
if (ENABLE_GNA)
|
||||
if (UNIX AND NOT APPLE AND CMAKE_COMPILER_IS_GNUCC AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.4)
|
||||
set (DEFAULT_GNA_LIB GNA1)
|
||||
else()
|
||||
set (DEFAULT_GNA_LIB GNA2)
|
||||
endif()
|
||||
set(GNA_LIBRARY_VERSION "${DEFAULT_GNA_LIB}" CACHE STRING "GNAVersion")
|
||||
set_property(CACHE GNA_LIBRARY_VERSION PROPERTY STRINGS "GNA1" "GNA1_1401" "GNA2")
|
||||
list (APPEND IE_OPTIONS GNA_LIBRARY_VERSION)
|
||||
if (NOT GNA_LIBRARY_VERSION STREQUAL "GNA1" AND
|
||||
NOT GNA_LIBRARY_VERSION STREQUAL "GNA1_1401" AND
|
||||
NOT GNA_LIBRARY_VERSION STREQUAL "GNA2")
|
||||
message(FATAL_ERROR "GNA_LIBRARY_VERSION should be set to GNA1, GNA1_1401 or GNA2. Default option is ${DEFAULT_GNA_LIB}")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
ie_dependent_option (ENABLE_VPU "vpu targeted plugins for inference engine" ON "NOT WINDOWS_PHONE;NOT WINDOWS_STORE" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_MYRIAD "myriad targeted plugin for inference engine" ON "ENABLE_VPU" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_MYRIAD_NO_BOOT "myriad plugin will skip device boot" OFF "ENABLE_MYRIAD" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_GAPI_TESTS "tests for GAPI kernels" ON "ENABLE_TESTS" OFF)
|
||||
|
||||
ie_dependent_option (GAPI_TEST_PERF "if GAPI unit tests should examine performance" OFF "ENABLE_GAPI_TESTS" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_MYRIAD_MVNC_TESTS "functional and behavior tests for mvnc api" OFF "ENABLE_TESTS;ENABLE_MYRIAD" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_DATA "fetch models from testdata repo" ON "ENABLE_FUNCTIONAL_TESTS;NOT ANDROID" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_BEH_TESTS "tests oriented to check inference engine API corecteness" ON "ENABLE_TESTS" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_FUNCTIONAL_TESTS "functional tests" ON "ENABLE_TESTS" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_SAMPLES "console samples are part of inference engine package" ON "NOT MINGW" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_SPEECH_DEMO "enable speech demo integration" ON "NOT APPLE;NOT ANDROID;X86 OR X86_64" OFF)
|
||||
|
||||
ie_option (ENABLE_OPENCV "enables OpenCV" ON)
|
||||
|
||||
ie_option (ENABLE_V7_SERIALIZE "enables serialization to IR v7" OFF)
|
||||
|
||||
set(IE_EXTRA_MODULES "" CACHE STRING "Extra paths for extra modules to include into OpenVINO build")
|
||||
|
||||
ie_dependent_option(ENABLE_TBB_RELEASE_ONLY "Only Release TBB libraries are linked to the Inference Engine binaries" ON "THREADING MATCHES TBB;LINUX" OFF)
|
||||
|
||||
ie_option (USE_SYSTEM_PUGIXML "use the system copy of pugixml" OFF)
|
||||
|
||||
ie_option (ENABLE_CPU_DEBUG_CAPS "enable CPU debug capabilities at runtime" OFF)
|
||||
|
||||
#
|
||||
# Process featues
|
||||
#
|
||||
|
||||
if(NGRAPH_DEBUG_ENABLE)
|
||||
add_definitions(-DNGRAPH_DEBUG_ENABLE)
|
||||
endif()
|
||||
|
||||
#
|
||||
# Process options
|
||||
#
|
||||
if (ENABLE_PROFILING_RAW)
|
||||
add_definitions(-DENABLE_PROFILING_RAW=1)
|
||||
endif()
|
||||
|
||||
if (ENABLE_MYRIAD)
|
||||
add_definitions(-DENABLE_MYRIAD=1)
|
||||
endif()
|
||||
|
||||
if (ENABLE_MYRIAD_NO_BOOT AND ENABLE_MYRIAD )
|
||||
add_definitions(-DENABLE_MYRIAD_NO_BOOT=1)
|
||||
endif()
|
||||
|
||||
if (ENABLE_CLDNN)
|
||||
add_definitions(-DENABLE_CLDNN=1)
|
||||
endif()
|
||||
|
||||
if (ENABLE_MKL_DNN)
|
||||
add_definitions(-DENABLE_MKL_DNN=1)
|
||||
endif()
|
||||
|
||||
if (ENABLE_GNA)
|
||||
add_definitions(-DENABLE_GNA)
|
||||
|
||||
if (UNIX AND NOT APPLE AND CMAKE_COMPILER_IS_GNUCC AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.4)
|
||||
message(WARNING "${GNA_LIBRARY_VERSION} is not supported on GCC version ${CMAKE_CXX_COMPILER_VERSION}. Fallback to GNA1")
|
||||
set(GNA_LIBRARY_VERSION GNA1)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
print_enabled_features()
|
||||
|
@ -4,15 +4,6 @@
|
||||
|
||||
project(InferenceEngine)
|
||||
|
||||
if(CMAKE_SOURCE_DIR STREQUAL "${InferenceEngine_SOURCE_DIR}")
|
||||
message(FATAL_ERROR "Cmake source directory must point to <openvino_root>")
|
||||
endif()
|
||||
|
||||
include(cmake/features.cmake)
|
||||
|
||||
# resolving dependencies for the project
|
||||
include(cmake/dependencies.cmake)
|
||||
|
||||
add_subdirectory(thirdparty)
|
||||
add_subdirectory(src)
|
||||
add_subdirectory(ie_bridges/c)
|
||||
@ -29,14 +20,6 @@ if(ENABLE_TESTS)
|
||||
add_subdirectory(tests)
|
||||
endif()
|
||||
|
||||
#
|
||||
# Coverage
|
||||
#
|
||||
|
||||
if(ENABLE_COVERAGE)
|
||||
include(cmake/coverage.cmake)
|
||||
endif()
|
||||
|
||||
#
|
||||
# Install
|
||||
#
|
||||
@ -122,13 +105,13 @@ function(ie_generate_dev_package_config)
|
||||
endforeach()
|
||||
add_custom_target(ie_dev_targets ALL DEPENDS ${all_dev_targets})
|
||||
|
||||
configure_package_config_file("${InferenceEngine_SOURCE_DIR}/cmake/templates/InferenceEngineDeveloperPackageConfig.cmake.in"
|
||||
configure_package_config_file("${OpenVINO_MAIN_SOURCE_DIR}/cmake/templates/InferenceEngineDeveloperPackageConfig.cmake.in"
|
||||
"${CMAKE_BINARY_DIR}/InferenceEngineDeveloperPackageConfig.cmake"
|
||||
INSTALL_DESTINATION share # not used
|
||||
PATH_VARS "OpenVINO_MAIN_SOURCE_DIR;IE_MAIN_SOURCE_DIR"
|
||||
PATH_VARS "OpenVINO_MAIN_SOURCE_DIR;IE_MAIN_SOURCE_DIR;gflags_BINARY_DIR"
|
||||
NO_CHECK_REQUIRED_COMPONENTS_MACRO)
|
||||
|
||||
configure_file("${IE_MAIN_SOURCE_DIR}/cmake/templates/InferenceEngineConfig-version.cmake.in"
|
||||
configure_file("${OpenVINO_MAIN_SOURCE_DIR}/cmake/templates/InferenceEngineConfig-version.cmake.in"
|
||||
"${CMAKE_BINARY_DIR}/InferenceEngineDeveloperPackageConfig-version.cmake"
|
||||
@ONLY)
|
||||
endfunction()
|
||||
|
@ -1,85 +0,0 @@
|
||||
# Copyright (C) 2018-2021 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
set(DLDT_COVERAGE_BASE_DIRECTORY "${IE_MAIN_SOURCE_DIR}/src")
|
||||
|
||||
ie_coverage_clean(REPOSITORY "dldt"
|
||||
DIRECTORY "${OV_COVERAGE_GCDA_DATA_DIRECTORY}")
|
||||
ie_coverage_capture(INFO_FILE "dldt"
|
||||
BASE_DIRECTORY "${DLDT_COVERAGE_BASE_DIRECTORY}"
|
||||
DIRECTORY "${OV_COVERAGE_GCDA_DATA_DIRECTORY}")
|
||||
|
||||
# Generate reports
|
||||
|
||||
ie_coverage_extract(INPUT "dldt" OUTPUT "inference_engine"
|
||||
PATTERNS "${DLDT_COVERAGE_BASE_DIRECTORY}/inference_engine/*"
|
||||
"${DLDT_COVERAGE_BASE_DIRECTORY}/plugin_api/*")
|
||||
ie_coverage_genhtml(INFO_FILE "inference_engine"
|
||||
PREFIX "${DLDT_COVERAGE_BASE_DIRECTORY}")
|
||||
|
||||
ie_coverage_extract(INPUT "dldt" OUTPUT "inference_engine_ir_v10_reader"
|
||||
PATTERNS "${DLDT_COVERAGE_BASE_DIRECTORY}/readers/ir_reader/*"
|
||||
"${DLDT_COVERAGE_BASE_DIRECTORY}/readers/reader_api/*")
|
||||
ie_coverage_genhtml(INFO_FILE "inference_engine_ir_v10_reader"
|
||||
PREFIX "${DLDT_COVERAGE_BASE_DIRECTORY}")
|
||||
|
||||
ie_coverage_extract(INPUT "dldt" OUTPUT "inference_engine_legacy"
|
||||
PATTERNS "${DLDT_COVERAGE_BASE_DIRECTORY}/legacy_api/*")
|
||||
ie_coverage_genhtml(INFO_FILE "inference_engine_legacy"
|
||||
PREFIX "${DLDT_COVERAGE_BASE_DIRECTORY}")
|
||||
|
||||
ie_coverage_extract(INPUT "dldt" OUTPUT "hetero_plugin"
|
||||
PATTERNS "${DLDT_COVERAGE_BASE_DIRECTORY}/hetero_plugin/*")
|
||||
ie_coverage_genhtml(INFO_FILE "hetero_plugin"
|
||||
PREFIX "${DLDT_COVERAGE_BASE_DIRECTORY}")
|
||||
|
||||
ie_coverage_extract(INPUT "dldt" OUTPUT "multi_device"
|
||||
PATTERNS "${DLDT_COVERAGE_BASE_DIRECTORY}/multi_device/*")
|
||||
ie_coverage_genhtml(INFO_FILE "multi_device"
|
||||
PREFIX "${DLDT_COVERAGE_BASE_DIRECTORY}")
|
||||
|
||||
ie_coverage_extract(INPUT "dldt" OUTPUT "preprocessing"
|
||||
PATTERNS "${DLDT_COVERAGE_BASE_DIRECTORY}/preprocessing/*")
|
||||
ie_coverage_genhtml(INFO_FILE "preprocessing"
|
||||
PREFIX "${DLDT_COVERAGE_BASE_DIRECTORY}")
|
||||
|
||||
ie_coverage_extract(INPUT "dldt" OUTPUT "inference_engine_transformations"
|
||||
PATTERNS "${DLDT_COVERAGE_BASE_DIRECTORY}/inference_engine_transformations/*")
|
||||
ie_coverage_genhtml(INFO_FILE "inference_engine_transformations"
|
||||
PREFIX "${DLDT_COVERAGE_BASE_DIRECTORY}")
|
||||
|
||||
ie_coverage_extract(INPUT "dldt" OUTPUT "inference_engine_snippets"
|
||||
PATTERNS "${DLDT_COVERAGE_BASE_DIRECTORY}/snippets/*")
|
||||
ie_coverage_genhtml(INFO_FILE "inference_engine_snippets"
|
||||
PREFIX "${DLDT_COVERAGE_BASE_DIRECTORY}")
|
||||
|
||||
ie_coverage_extract(INPUT "dldt" OUTPUT "low_precision_transformations"
|
||||
PATTERNS "${DLDT_COVERAGE_BASE_DIRECTORY}/low_precision_transformations/*")
|
||||
ie_coverage_genhtml(INFO_FILE "low_precision_transformations"
|
||||
PREFIX "${DLDT_COVERAGE_BASE_DIRECTORY}")
|
||||
|
||||
ie_coverage_extract(INPUT "dldt" OUTPUT "template_plugin"
|
||||
PATTERNS "${DLDT_COVERAGE_BASE_DIRECTORY}/template_plugin/*")
|
||||
ie_coverage_genhtml(INFO_FILE "template_plugin"
|
||||
PREFIX "${DLDT_COVERAGE_BASE_DIRECTORY}")
|
||||
|
||||
if(ENABLE_MKL_DNN)
|
||||
ie_coverage_extract(INPUT "dldt" OUTPUT "mkldnn_plugin"
|
||||
PATTERNS "${DLDT_COVERAGE_BASE_DIRECTORY}/mkldnn_plugin/*")
|
||||
ie_coverage_genhtml(INFO_FILE "mkldnn_plugin"
|
||||
PREFIX "${DLDT_COVERAGE_BASE_DIRECTORY}")
|
||||
endif()
|
||||
|
||||
if(ENABLE_CLDNN)
|
||||
ie_coverage_extract(INPUT "dldt" OUTPUT "cldnn_engine"
|
||||
PATTERNS "${DLDT_COVERAGE_BASE_DIRECTORY}/cldnn_engine/*")
|
||||
ie_coverage_genhtml(INFO_FILE "cldnn_engine"
|
||||
PREFIX "${DLDT_COVERAGE_BASE_DIRECTORY}")
|
||||
endif()
|
||||
|
||||
if(ENABLE_GNA)
|
||||
ie_coverage_extract(INPUT "dldt" OUTPUT "gna_plugin"
|
||||
PATTERNS "${DLDT_COVERAGE_BASE_DIRECTORY}/gna_plugin/*")
|
||||
ie_coverage_genhtml(INFO_FILE "gna_plugin"
|
||||
PREFIX "${DLDT_COVERAGE_BASE_DIRECTORY}")
|
||||
endif()
|
@ -1,325 +0,0 @@
|
||||
# Copyright (C) 2018-2021 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
cmake_policy(SET CMP0054 NEW)
|
||||
|
||||
# we have number of dependencies stored on ftp
|
||||
|
||||
if (CMAKE_CROSSCOMPILING)
|
||||
set(CMAKE_STAGING_PREFIX "${TEMP}")
|
||||
endif()
|
||||
|
||||
include(ExternalProject)
|
||||
|
||||
if (ENABLE_SAME_BRANCH_FOR_MODELS)
|
||||
branchName(MODELS_BRANCH)
|
||||
else()
|
||||
set(MODELS_BRANCH "master")
|
||||
endif()
|
||||
|
||||
if (ENABLE_DATA)
|
||||
add_models_repo(${ENABLE_DATA} "data:https://github.com/openvinotoolkit/testdata.git")
|
||||
set(MODELS_PATH "${TEMP}/models/src/data")
|
||||
set(DATA_PATH "${MODELS_PATH}")
|
||||
endif()
|
||||
|
||||
message(STATUS "MODELS_PATH=" ${MODELS_PATH})
|
||||
|
||||
fetch_models_and_validation_set()
|
||||
|
||||
if(COMMAND get_linux_name)
|
||||
get_linux_name(LINUX_OS_NAME)
|
||||
endif()
|
||||
|
||||
include(CMakeParseArguments)
|
||||
|
||||
if (ENABLE_MYRIAD)
|
||||
include(cmake/vpu_dependencies.cmake)
|
||||
endif()
|
||||
|
||||
## Intel OMP package
|
||||
if (THREADING STREQUAL "OMP")
|
||||
reset_deps_cache(OMP)
|
||||
if (WIN32 AND X86_64)
|
||||
RESOLVE_DEPENDENCY(OMP
|
||||
ARCHIVE_WIN "iomp.zip"
|
||||
TARGET_PATH "${TEMP}/omp"
|
||||
ENVIRONMENT "OMP"
|
||||
VERSION_REGEX ".*_([a-z]*_([a-z0-9]+\\.)*[0-9]+).*"
|
||||
SHA256 "62c68646747fb10f19b53217cb04a1e10ff93606f992e6b35eb8c31187c68fbf")
|
||||
elseif(LINUX AND X86_64)
|
||||
RESOLVE_DEPENDENCY(OMP
|
||||
ARCHIVE_LIN "iomp.tgz"
|
||||
TARGET_PATH "${TEMP}/omp"
|
||||
ENVIRONMENT "OMP"
|
||||
VERSION_REGEX ".*_([a-z]*_([a-z0-9]+\\.)*[0-9]+).*"
|
||||
SHA256 "7832b16d82513ee880d97c27c7626f9525ebd678decf6a8fe6c38550f73227d9")
|
||||
elseif(APPLE AND X86_64)
|
||||
RESOLVE_DEPENDENCY(OMP
|
||||
ARCHIVE_MAC "iomp_20190130_mac.tgz"
|
||||
TARGET_PATH "${TEMP}/omp"
|
||||
ENVIRONMENT "OMP"
|
||||
VERSION_REGEX ".*_([a-z]*_([a-z0-9]+\\.)*[0-9]+).*"
|
||||
SHA256 "591ea4a7e08bbe0062648916f42bded71d24c27f00af30a8f31a29b5878ea0cc")
|
||||
else()
|
||||
message(FATAL_ERROR "Intel OMP is not available on current platform")
|
||||
endif()
|
||||
update_deps_cache(OMP "${OMP}" "Path to OMP root folder")
|
||||
log_rpath_from_dir(OMP "${OMP}/lib")
|
||||
debug_message(STATUS "intel_omp=" ${OMP})
|
||||
|
||||
ie_cpack_add_component(omp REQUIRED)
|
||||
file(GLOB_RECURSE source_list "${OMP}/*${CMAKE_SHARED_LIBRARY_SUFFIX}*")
|
||||
install(FILES ${source_list}
|
||||
DESTINATION "deployment_tools/inference_engine/external/omp/lib"
|
||||
COMPONENT omp)
|
||||
|
||||
endif ()
|
||||
|
||||
## TBB package
|
||||
if (THREADING STREQUAL "TBB" OR THREADING STREQUAL "TBB_AUTO")
|
||||
reset_deps_cache(TBBROOT TBB_DIR)
|
||||
|
||||
if (WIN32 AND X86_64)
|
||||
#TODO: add target_path to be platform specific as well, to avoid following if
|
||||
RESOLVE_DEPENDENCY(TBB
|
||||
ARCHIVE_WIN "tbb2020_20200415_win.zip"
|
||||
TARGET_PATH "${TEMP}/tbb"
|
||||
ENVIRONMENT "TBBROOT"
|
||||
SHA256 "f1c9b9e2861efdaa01552bd25312ccbc5feeb45551e5f91ae61e29221c5c1479")
|
||||
RESOLVE_DEPENDENCY(TBBBIND_2_4
|
||||
ARCHIVE_WIN "tbbbind_2_4_static_win_v2.zip"
|
||||
TARGET_PATH "${TEMP}/tbbbind_2_4"
|
||||
ENVIRONMENT "TBBBIND_2_4_ROOT"
|
||||
SHA256 "90dc165652f6ac2ed3014c71e57f797fcc4b11e1498a468e3d2c85deb2a4186a")
|
||||
elseif(ANDROID) # Should be before LINUX due LINUX is detected as well
|
||||
RESOLVE_DEPENDENCY(TBB
|
||||
ARCHIVE_ANDROID "tbb2020_20200404_android.tgz"
|
||||
TARGET_PATH "${TEMP}/tbb"
|
||||
ENVIRONMENT "TBBROOT"
|
||||
SHA256 "f42d084224cc2d643314bd483ad180b081774608844000f132859fca3e9bf0ce")
|
||||
elseif(LINUX AND X86_64)
|
||||
RESOLVE_DEPENDENCY(TBB
|
||||
ARCHIVE_LIN "tbb2020_20200415_lin_strip.tgz"
|
||||
TARGET_PATH "${TEMP}/tbb"
|
||||
ENVIRONMENT "TBBROOT"
|
||||
SHA256 "95b2f3b0b70c7376a0c7de351a355c2c514b42c4966e77e3e34271a599501008")
|
||||
RESOLVE_DEPENDENCY(TBBBIND_2_4
|
||||
ARCHIVE_LIN "tbbbind_2_4_static_lin_v2.tgz"
|
||||
TARGET_PATH "${TEMP}/tbbbind_2_4"
|
||||
ENVIRONMENT "TBBBIND_2_4_ROOT"
|
||||
SHA256 "6dc926258c6cd3cba0f5c2cc672fd2ad599a1650fe95ab11122e8f361a726cb6")
|
||||
elseif(LINUX AND AARCH64)
|
||||
RESOLVE_DEPENDENCY(TBB
|
||||
ARCHIVE_LIN "keembay/tbb2020_38404_kmb_lic.tgz"
|
||||
TARGET_PATH "${TEMP}/tbb_yocto"
|
||||
ENVIRONMENT "TBBROOT"
|
||||
SHA256 "321261ff2eda6d4568a473cb883262bce77a93dac599f7bd65d2918bdee4d75b")
|
||||
elseif(APPLE AND X86_64)
|
||||
RESOLVE_DEPENDENCY(TBB
|
||||
ARCHIVE_MAC "tbb2020_20200404_mac.tgz"
|
||||
TARGET_PATH "${TEMP}/tbb"
|
||||
ENVIRONMENT "TBBROOT"
|
||||
SHA256 "ad9cf52e657660058aa6c6844914bc0fc66241fec89a392d8b79a7ff69c3c7f6")
|
||||
else()
|
||||
message(FATAL_ERROR "TBB is not available on current platform")
|
||||
endif()
|
||||
|
||||
update_deps_cache(TBBROOT "${TBB}" "Path to TBB root folder")
|
||||
update_deps_cache(TBB_DIR "${TBB}/cmake" "Path to TBB cmake folder")
|
||||
|
||||
update_deps_cache(TBBBIND_2_4_DIR "${TBBBIND_2_4}/cmake" "Path to TBBBIND_2_4 cmake folder")
|
||||
|
||||
if (WIN32)
|
||||
log_rpath_from_dir(TBB "${TBB}/bin")
|
||||
else ()
|
||||
log_rpath_from_dir(TBB "${TBB}/lib")
|
||||
endif ()
|
||||
debug_message(STATUS "tbb=" ${TBB})
|
||||
endif ()
|
||||
|
||||
if (ENABLE_OPENCV)
|
||||
reset_deps_cache(OpenCV_DIR)
|
||||
|
||||
set(OPENCV_VERSION "4.5.2")
|
||||
set(OPENCV_BUILD "076")
|
||||
set(OPENCV_BUILD_YOCTO "772")
|
||||
|
||||
if (AARCH64)
|
||||
if(DEFINED ENV{THIRDPARTY_SERVER_PATH})
|
||||
set(IE_PATH_TO_DEPS "$ENV{THIRDPARTY_SERVER_PATH}")
|
||||
elseif(DEFINED THIRDPARTY_SERVER_PATH)
|
||||
set(IE_PATH_TO_DEPS "${THIRDPARTY_SERVER_PATH}")
|
||||
else()
|
||||
message(WARNING "OpenCV is not found!")
|
||||
endif()
|
||||
|
||||
if(DEFINED IE_PATH_TO_DEPS)
|
||||
set(OPENCV_SUFFIX "yocto_kmb")
|
||||
set(OPENCV_BUILD "${OPENCV_BUILD_YOCTO}")
|
||||
|
||||
RESOLVE_DEPENDENCY(OPENCV
|
||||
ARCHIVE_LIN "opencv/opencv_${OPENCV_VERSION}-${OPENCV_BUILD}_${OPENCV_SUFFIX}.txz"
|
||||
TARGET_PATH "${TEMP}/opencv_${OPENCV_VERSION}_${OPENCV_SUFFIX}/opencv"
|
||||
ENVIRONMENT "OpenCV_DIR"
|
||||
VERSION_REGEX ".*_([0-9]+.[0-9]+.[0-9]+).*"
|
||||
SHA256 "23c250796ad5fc9db810e1680ccdb32c45dc0e50cace5e0f02b30faf652fe343")
|
||||
|
||||
unset(IE_PATH_TO_DEPS)
|
||||
endif()
|
||||
else()
|
||||
if (WIN32 AND X86_64)
|
||||
RESOLVE_DEPENDENCY(OPENCV
|
||||
ARCHIVE_WIN "opencv/opencv_${OPENCV_VERSION}-${OPENCV_BUILD}.txz"
|
||||
TARGET_PATH "${TEMP}/opencv_${OPENCV_VERSION}/opencv"
|
||||
ENVIRONMENT "OpenCV_DIR"
|
||||
VERSION_REGEX ".*_([0-9]+.[0-9]+.[0-9]+).*"
|
||||
SHA256 "a14f872e6b63b6ac12c7ff47fa49e578d14c14433b57f5d85ab5dd48a079938c")
|
||||
elseif(APPLE AND X86_64)
|
||||
RESOLVE_DEPENDENCY(OPENCV
|
||||
ARCHIVE_MAC "opencv/opencv_${OPENCV_VERSION}-${OPENCV_BUILD}_osx.txz"
|
||||
TARGET_PATH "${TEMP}/opencv_${OPENCV_VERSION}_osx/opencv"
|
||||
ENVIRONMENT "OpenCV_DIR"
|
||||
VERSION_REGEX ".*_([0-9]+.[0-9]+.[0-9]+).*"
|
||||
SHA256 "3e162f96e86cba8836618134831d9cf76df0438778b3e27e261dedad9254c514")
|
||||
elseif(LINUX)
|
||||
if (AARCH64)
|
||||
set(OPENCV_SUFFIX "yocto_kmb")
|
||||
set(OPENCV_BUILD "${OPENCV_BUILD_YOCTO}")
|
||||
elseif (ARM)
|
||||
set(OPENCV_SUFFIX "debian9arm")
|
||||
set(OPENCV_HASH "4274f8c40b17215f4049096b524e4a330519f3e76813c5a3639b69c48633d34e")
|
||||
elseif ((LINUX_OS_NAME STREQUAL "CentOS 7" OR
|
||||
CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.9") AND X86_64)
|
||||
set(OPENCV_SUFFIX "centos7")
|
||||
set(OPENCV_HASH "5fa76985c84fe7c64531682ef0b272510c51ac0d0565622514edf1c88b33404a")
|
||||
elseif (LINUX_OS_NAME MATCHES "CentOS 8" AND X86_64)
|
||||
set(OPENCV_SUFFIX "centos8")
|
||||
set(OPENCV_HASH "db087dfd412eedb8161636ec083ada85ff278109948d1d62a06b0f52e1f04202")
|
||||
elseif (LINUX_OS_NAME STREQUAL "Ubuntu 16.04" AND X86_64)
|
||||
set(OPENCV_SUFFIX "ubuntu16")
|
||||
set(OPENCV_HASH "cd46831b4d8d1c0891d8d22ff5b2670d0a465a8a8285243059659a50ceeae2c3")
|
||||
elseif (LINUX_OS_NAME STREQUAL "Ubuntu 18.04" AND X86_64)
|
||||
set(OPENCV_SUFFIX "ubuntu18")
|
||||
set(OPENCV_HASH "db087dfd412eedb8161636ec083ada85ff278109948d1d62a06b0f52e1f04202")
|
||||
elseif ((LINUX_OS_NAME STREQUAL "Ubuntu 20.04" OR LINUX_OS_NAME STREQUAL "LinuxMint 20.1") AND X86_64)
|
||||
set(OPENCV_SUFFIX "ubuntu20")
|
||||
set(OPENCV_HASH "2fe7bbc40e1186eb8d099822038cae2821abf617ac7a16fadf98f377c723e268")
|
||||
elseif(NOT DEFINED OpenCV_DIR AND NOT DEFINED ENV{OpenCV_DIR})
|
||||
message(FATAL_ERROR "OpenCV is not available on current platform (${LINUX_OS_NAME})")
|
||||
endif()
|
||||
RESOLVE_DEPENDENCY(OPENCV
|
||||
ARCHIVE_LIN "opencv/opencv_${OPENCV_VERSION}-${OPENCV_BUILD}_${OPENCV_SUFFIX}.txz"
|
||||
TARGET_PATH "${TEMP}/opencv_${OPENCV_VERSION}_${OPENCV_SUFFIX}/opencv"
|
||||
ENVIRONMENT "OpenCV_DIR"
|
||||
VERSION_REGEX ".*_([0-9]+.[0-9]+.[0-9]+).*"
|
||||
SHA256 ${OPENCV_HASH})
|
||||
endif()
|
||||
|
||||
endif()
|
||||
|
||||
if(ANDROID)
|
||||
set(ocv_cmake_path "${OPENCV}/sdk/native/jni/")
|
||||
else()
|
||||
set(ocv_cmake_path "${OPENCV}/cmake")
|
||||
endif()
|
||||
|
||||
update_deps_cache(OpenCV_DIR "${ocv_cmake_path}" "Path to OpenCV package folder")
|
||||
|
||||
if(WIN32)
|
||||
log_rpath_from_dir(OPENCV "${OpenCV_DIR}/../bin")
|
||||
elseif(ANDROID)
|
||||
log_rpath_from_dir(OPENCV "${OpenCV_DIR}/../../../lib")
|
||||
else()
|
||||
log_rpath_from_dir(OPENCV "${OpenCV_DIR}/../lib")
|
||||
endif()
|
||||
debug_message(STATUS "opencv=" ${OPENCV})
|
||||
else()
|
||||
reset_deps_cache(OpenCV_DIR)
|
||||
endif()
|
||||
|
||||
include(cmake/ie_parallel.cmake)
|
||||
|
||||
if (ENABLE_GNA)
|
||||
reset_deps_cache(
|
||||
GNA
|
||||
GNA_PLATFORM_DIR
|
||||
GNA_KERNEL_LIB_NAME
|
||||
GNA_LIBS_LIST
|
||||
GNA_LIB_DIR
|
||||
libGNA_INCLUDE_DIRS
|
||||
libGNA_LIBRARIES_BASE_PATH)
|
||||
if (GNA_LIBRARY_VERSION STREQUAL "GNA1")
|
||||
RESOLVE_DEPENDENCY(GNA
|
||||
ARCHIVE_UNIFIED "GNA/gna_20181120.zip"
|
||||
TARGET_PATH "${TEMP}/gna"
|
||||
SHA256 "b631d6cc5f6cca4a89a3f5dfa383066f3282fee25d633d9085c605bdd8090210")
|
||||
else()
|
||||
if(GNA_LIBRARY_VERSION STREQUAL "GNA1_1401")
|
||||
set(GNA_VERSION "01.00.00.1401")
|
||||
set(GNA_HASH "cc954e67525006bf8bd353a6682e38bf208f6d74e973e0fc292850e721f17452")
|
||||
endif()
|
||||
if(GNA_LIBRARY_VERSION STREQUAL "GNA2")
|
||||
set(GNA_VERSION "02.00.00.1226")
|
||||
set(GNA_HASH "d5450af15c993e264c25ac4591a7dab44722e10d15fca4f222a1b84429d4e5b6")
|
||||
endif()
|
||||
|
||||
set(FILES_TO_EXTRACT_LIST gna_${GNA_VERSION}/include)
|
||||
if (WIN32)
|
||||
LIST(APPEND FILES_TO_EXTRACT_LIST gna_${GNA_VERSION}/win64)
|
||||
else()
|
||||
LIST(APPEND FILES_TO_EXTRACT_LIST gna_${GNA_VERSION}/linux)
|
||||
endif()
|
||||
|
||||
RESOLVE_DEPENDENCY(GNA
|
||||
ARCHIVE_UNIFIED "GNA/GNA_${GNA_VERSION}.zip"
|
||||
TARGET_PATH "${TEMP}/gna_${GNA_VERSION}"
|
||||
VERSION_REGEX ".*_([0-9]+.[0-9]+.[0-9]+.[0-9]+).*"
|
||||
FILES_TO_EXTRACT FILES_TO_EXTRACT_LIST
|
||||
SHA256 ${GNA_HASH})
|
||||
endif()
|
||||
update_deps_cache(GNA "${GNA}" "Path to GNA root folder")
|
||||
debug_message(STATUS "gna=" ${GNA})
|
||||
endif()
|
||||
|
||||
if (ENABLE_SPEECH_DEMO)
|
||||
reset_deps_cache(SPEECH_LIBS_AND_DEMOS)
|
||||
if(DEFINED ENV{THIRDPARTY_SERVER_PATH})
|
||||
set(IE_PATH_TO_DEPS "$ENV{THIRDPARTY_SERVER_PATH}")
|
||||
elseif(DEFINED THIRDPARTY_SERVER_PATH)
|
||||
set(IE_PATH_TO_DEPS "${THIRDPARTY_SERVER_PATH}")
|
||||
else()
|
||||
message(WARNING "Unable to locate Speech Demo")
|
||||
endif()
|
||||
if(DEFINED IE_PATH_TO_DEPS)
|
||||
if (WIN32 AND X86_64)
|
||||
RESOLVE_DEPENDENCY(SPEECH_LIBS_AND_DEMOS
|
||||
ARCHIVE_WIN "speech_demo_1.0.0.774_windows.zip"
|
||||
VERSION_REGEX ".*_([0-9]+.[0-9]+.[0-9]+.[0-9]+).*"
|
||||
TARGET_PATH "${TEMP}/speech_demo_1.0.0.774"
|
||||
SHA256 "67b25170be5e89a4f0e90e8b39623b60c9a15b965c30329385e295fcd2edc856")
|
||||
debug_message(STATUS "speech_libs_and_demos=" ${SPEECH_LIBS_AND_DEMOS})
|
||||
elseif (LINUX AND X86_64)
|
||||
if (LINUX_OS_NAME STREQUAL "CentOS 7" OR CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.9")
|
||||
RESOLVE_DEPENDENCY(SPEECH_LIBS_AND_DEMOS
|
||||
ARCHIVE_LIN "speech_demo_1.0.0.774_centos.tgz"
|
||||
VERSION_REGEX ".*_([0-9]+.[0-9]+.[0-9]+.[0-9]+).*"
|
||||
TARGET_PATH "${TEMP}/speech_demo_1.0.0.774"
|
||||
SHA256 "5ec3b7be9ae05376aefae5bd5fd4a39b12c274e82817fd3218120b8e8fc8ff5a")
|
||||
debug_message(STATUS "speech_libs_and_demos=" ${SPEECH_LIBS_AND_DEMOS})
|
||||
else()
|
||||
RESOLVE_DEPENDENCY(SPEECH_LIBS_AND_DEMOS
|
||||
ARCHIVE_LIN "speech_demo_1.0.0.774_linux.tgz"
|
||||
VERSION_REGEX ".*_([0-9]+.[0-9]+.[0-9]+.[0-9]+).*"
|
||||
TARGET_PATH "${TEMP}/speech_demo_1.0.0.774"
|
||||
SHA256 "f0bbd0a6218b0365e7cfb1f860b34e4ace7e0d47dd60b369cdea8a480329810f")
|
||||
debug_message(STATUS "speech_libs_and_demos=" ${SPEECH_LIBS_AND_DEMOS})
|
||||
endif()
|
||||
else()
|
||||
message(FATAL_ERROR "Speech Demo is not available on current platform")
|
||||
endif()
|
||||
unset(IE_PATH_TO_DEPS)
|
||||
endif()
|
||||
update_deps_cache(SPEECH_LIBS_AND_DEMOS "${SPEECH_LIBS_AND_DEMOS}" "Path to SPEECH_LIBS_AND_DEMOS root folder")
|
||||
endif()
|
@ -1,112 +0,0 @@
|
||||
# Copyright (C) 2018-2021 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
# these options are aimed to optimize build time on development system
|
||||
|
||||
ie_dependent_option (ENABLE_GNA "GNA support for inference engine" ON "NOT APPLE;NOT ANDROID;X86_64" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_CLDNN_TESTS "Enable clDNN unit tests" OFF "ENABLE_CLDNN" OFF)
|
||||
|
||||
# "MKL-DNN library based on OMP or TBB or Sequential implementation: TBB|OMP|SEQ"
|
||||
if(X86 OR ARM OR (MSVC AND (ARM OR AARCH64)) )
|
||||
set(THREADING_DEFAULT "SEQ")
|
||||
else()
|
||||
set(THREADING_DEFAULT "TBB")
|
||||
endif()
|
||||
set(THREADING "${THREADING_DEFAULT}" CACHE STRING "Threading")
|
||||
set_property(CACHE THREADING PROPERTY STRINGS "TBB" "TBB_AUTO" "OMP" "SEQ")
|
||||
list (APPEND IE_OPTIONS THREADING)
|
||||
if (NOT THREADING STREQUAL "TBB" AND
|
||||
NOT THREADING STREQUAL "TBB_AUTO" AND
|
||||
NOT THREADING STREQUAL "OMP" AND
|
||||
NOT THREADING STREQUAL "SEQ")
|
||||
message(FATAL_ERROR "THREADING should be set to TBB, TBB_AUTO, OMP or SEQ. Default option is ${THREADING_DEFAULT}")
|
||||
endif()
|
||||
|
||||
if (ENABLE_GNA)
|
||||
if (UNIX AND NOT APPLE AND CMAKE_COMPILER_IS_GNUCC AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.4)
|
||||
set (DEFAULT_GNA_LIB GNA1)
|
||||
else()
|
||||
set (DEFAULT_GNA_LIB GNA2)
|
||||
endif()
|
||||
set(GNA_LIBRARY_VERSION "${DEFAULT_GNA_LIB}" CACHE STRING "GNAVersion")
|
||||
set_property(CACHE GNA_LIBRARY_VERSION PROPERTY STRINGS "GNA1" "GNA1_1401" "GNA2")
|
||||
list (APPEND IE_OPTIONS GNA_LIBRARY_VERSION)
|
||||
if (NOT GNA_LIBRARY_VERSION STREQUAL "GNA1" AND
|
||||
NOT GNA_LIBRARY_VERSION STREQUAL "GNA1_1401" AND
|
||||
NOT GNA_LIBRARY_VERSION STREQUAL "GNA2")
|
||||
message(FATAL_ERROR "GNA_LIBRARY_VERSION should be set to GNA1, GNA1_1401 or GNA2. Default option is ${DEFAULT_GNA_LIB}")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
ie_dependent_option (ENABLE_VPU "vpu targeted plugins for inference engine" ON "NOT WINDOWS_PHONE;NOT WINDOWS_STORE" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_MYRIAD "myriad targeted plugin for inference engine" ON "ENABLE_VPU" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_MYRIAD_NO_BOOT "myriad plugin will skip device boot" OFF "ENABLE_MYRIAD" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_GAPI_TESTS "tests for GAPI kernels" ON "ENABLE_TESTS" OFF)
|
||||
|
||||
ie_dependent_option (GAPI_TEST_PERF "if GAPI unit tests should examine performance" OFF "ENABLE_GAPI_TESTS" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_MYRIAD_MVNC_TESTS "functional and behavior tests for mvnc api" OFF "ENABLE_TESTS;ENABLE_MYRIAD" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_DATA "fetch models from testdata repo" ON "ENABLE_FUNCTIONAL_TESTS;NOT ANDROID" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_SAME_BRANCH_FOR_MODELS "uses same branch for models and for inference engine, if not enabled models are taken from master" OFF "ENABLE_TESTS" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_BEH_TESTS "tests oriented to check inference engine API corecteness" ON "ENABLE_TESTS" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_FUNCTIONAL_TESTS "functional tests" ON "ENABLE_TESTS" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_SAMPLES "console samples are part of inference engine package" ON "NOT MINGW" OFF)
|
||||
|
||||
ie_dependent_option (ENABLE_SPEECH_DEMO "enable speech demo integration" ON "NOT APPLE;NOT ANDROID;X86 OR X86_64" OFF)
|
||||
|
||||
ie_option (ENABLE_OPENCV "enables OpenCV" ON)
|
||||
|
||||
ie_option (ENABLE_V7_SERIALIZE "enables serialization to IR v7" OFF)
|
||||
|
||||
set(IE_EXTRA_MODULES "" CACHE STRING "Extra paths for extra modules to include into OpenVINO build")
|
||||
|
||||
ie_dependent_option(ENABLE_TBB_RELEASE_ONLY "Only Release TBB libraries are linked to the Inference Engine binaries" ON "THREADING MATCHES TBB;LINUX" OFF)
|
||||
|
||||
ie_option (USE_SYSTEM_PUGIXML "use the system copy of pugixml" OFF)
|
||||
|
||||
ie_option (ENABLE_CPU_DEBUG_CAPS "enable CPU debug capabilities at runtime" OFF)
|
||||
|
||||
#
|
||||
# Process featues
|
||||
#
|
||||
|
||||
if (ENABLE_PROFILING_RAW)
|
||||
add_definitions(-DENABLE_PROFILING_RAW=1)
|
||||
endif()
|
||||
|
||||
if (ENABLE_MYRIAD)
|
||||
add_definitions(-DENABLE_MYRIAD=1)
|
||||
endif()
|
||||
|
||||
if (ENABLE_MYRIAD_NO_BOOT AND ENABLE_MYRIAD )
|
||||
add_definitions(-DENABLE_MYRIAD_NO_BOOT=1)
|
||||
endif()
|
||||
|
||||
if (ENABLE_CLDNN)
|
||||
add_definitions(-DENABLE_CLDNN=1)
|
||||
endif()
|
||||
|
||||
if (ENABLE_MKL_DNN)
|
||||
add_definitions(-DENABLE_MKL_DNN=1)
|
||||
endif()
|
||||
|
||||
if (ENABLE_GNA)
|
||||
add_definitions(-DENABLE_GNA)
|
||||
|
||||
if (UNIX AND NOT APPLE AND CMAKE_COMPILER_IS_GNUCC AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.4)
|
||||
message(WARNING "${GNA_LIBRARY_VERSION} is not supported on GCC version ${CMAKE_CXX_COMPILER_VERSION}. Fallback to GNA1")
|
||||
set(GNA_LIBRARY_VERSION GNA1)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
print_enabled_features()
|
@ -285,7 +285,7 @@ set(IE_NGRAPH_DIR "${CMAKE_BINARY_DIR}/ngraph")
|
||||
set(IE_INCLUDE_DIR "${PUBLIC_HEADERS_DIR}")
|
||||
set(IE_PARALLEL_CMAKE "${InferenceEngine_SOURCE_DIR}/cmake/ie_parallel.cmake")
|
||||
|
||||
configure_package_config_file("${InferenceEngine_SOURCE_DIR}/cmake/templates/InferenceEngineConfig.cmake.in"
|
||||
configure_package_config_file("${OpenVINO_MAIN_SOURCE_DIR}/cmake/templates/InferenceEngineConfig.cmake.in"
|
||||
"${CMAKE_BINARY_DIR}/InferenceEngineConfig.cmake"
|
||||
INSTALL_DESTINATION "${CMAKE_INSTALL_PREFIX}"
|
||||
PATH_VARS ${PATH_VARS})
|
||||
@ -295,12 +295,12 @@ set(IE_NGRAPH_DIR "../ngraph/cmake")
|
||||
set(IE_TBB_DIR "${IE_TBB_DIR_INSTALL}")
|
||||
set(IE_PARALLEL_CMAKE "share/ie_parallel.cmake")
|
||||
|
||||
configure_package_config_file("${InferenceEngine_SOURCE_DIR}/cmake/templates/InferenceEngineConfig.cmake.in"
|
||||
configure_package_config_file("${OpenVINO_MAIN_SOURCE_DIR}/cmake/templates/InferenceEngineConfig.cmake.in"
|
||||
"${CMAKE_BINARY_DIR}/share/InferenceEngineConfig.cmake"
|
||||
INSTALL_DESTINATION share
|
||||
PATH_VARS ${PATH_VARS})
|
||||
|
||||
configure_file("${IE_MAIN_SOURCE_DIR}/cmake/templates/InferenceEngineConfig-version.cmake.in"
|
||||
configure_file("${OpenVINO_MAIN_SOURCE_DIR}/cmake/templates/InferenceEngineConfig-version.cmake.in"
|
||||
"${CMAKE_BINARY_DIR}/InferenceEngineConfig-version.cmake"
|
||||
@ONLY)
|
||||
|
||||
|
@ -2,26 +2,6 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
include(cmake/Modules/git_tags.cmake)
|
||||
|
||||
NGRAPH_GET_VERSION_LABEL()
|
||||
|
||||
string(REGEX MATCH "([0-9?]+)\\.([0-9?]+)\\.([0-9?]+)(-(rc|dev)\\.[0-9?]+)?" NGRAPH_VERSION_SHORT "${NGRAPH_VERSION_LABEL}")
|
||||
string(REGEX REPLACE "-rc." "rc" NGRAPH_WHEEL_VERSION "${NGRAPH_VERSION_SHORT}")
|
||||
string(REGEX REPLACE "-dev." "dev" NGRAPH_WHEEL_VERSION "${NGRAPH_WHEEL_VERSION}")
|
||||
string(REGEX MATCH "([0-9?]+)\\.([0-9?]+)" NGRAPH_API_VERSION "${NGRAPH_VERSION_LABEL}")
|
||||
string(REGEX MATCH "[^v](.*)" NGRAPH_VERSION "${NGRAPH_VERSION_LABEL}")
|
||||
string(REPLACE "." ";" NGRAPH_VERSION_PARTS "${NGRAPH_VERSION_SHORT}")
|
||||
list(GET NGRAPH_VERSION_PARTS 0 NGRAPH_VERSION_MAJOR)
|
||||
list(GET NGRAPH_VERSION_PARTS 1 NGRAPH_VERSION_MINOR)
|
||||
list(GET NGRAPH_VERSION_PARTS 2 NGRAPH_VERSION_PATCH)
|
||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/VERSION.in VERSION)
|
||||
|
||||
message(STATUS "NGRAPH_VERSION ${NGRAPH_VERSION}")
|
||||
message(STATUS "NGRAPH_VERSION_SHORT ${NGRAPH_VERSION_SHORT}")
|
||||
message(STATUS "NGRAPH_WHEEL_VERSION ${NGRAPH_WHEEL_VERSION}")
|
||||
message(STATUS "NGRAPH_API_VERSION ${NGRAPH_API_VERSION}")
|
||||
|
||||
set(NGRAPH_INCLUDE_PATH
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/core/include
|
||||
)
|
||||
@ -35,67 +15,16 @@ set(FRONTEND_BASE_PATH
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/frontend
|
||||
)
|
||||
|
||||
if (APPLE)
|
||||
# Enable MACOS_RPATH by default.
|
||||
cmake_policy(SET CMP0042 NEW)
|
||||
endif()
|
||||
|
||||
project (ngraph)
|
||||
|
||||
# APPLE: Set CMAKE_OSX_SYSROOT if not set already.
|
||||
if (APPLE)
|
||||
execute_process(COMMAND sw_vers -productVersion
|
||||
OUTPUT_VARIABLE OSX_FULL_VERSION
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
|
||||
string(REGEX REPLACE "^([0-9]+\\.[0-9]+).*$" "\\1"
|
||||
OSX_SHORT_VERSION "${OSX_FULL_VERSION}")
|
||||
|
||||
message(STATUS "Detected: OSX ${OSX_SHORT_VERSION}")
|
||||
|
||||
if (CMAKE_OSX_SYSROOT)
|
||||
message(STATUS "Using CMAKE_OSX_SYSROOT: ${CMAKE_OSX_SYSROOT}")
|
||||
else()
|
||||
execute_process(COMMAND xcode-select -p
|
||||
OUTPUT_VARIABLE APPLE_DEV_DIR
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
|
||||
if("${APPLE_DEV_DIR}" STREQUAL "/Library/Developer/CommandLineTools")
|
||||
# Command line tools only
|
||||
set(XCODE_ISYSROOT ${APPLE_DEV_DIR}/SDKs/MacOSX.sdk)
|
||||
message(STATUS "Trying command line tool sdk at ${XCODE_ISYSROOT}.")
|
||||
if(NOT EXISTS ${XCODE_ISYSROOT})
|
||||
message(FATAL_ERROR "Cannot find macos sdk.")
|
||||
endif()
|
||||
else()
|
||||
# Xcode is installed
|
||||
set(XCODE_ISYSROOT ${APPLE_DEV_DIR}/Platforms/MacOSX.platform/Developer/SDKs/MacOSX${OSX_SHORT_VERSION}.sdk)
|
||||
message(STATUS "Trying Xcode sdk at ${XCODE_ISYSROOT}.")
|
||||
if(NOT EXISTS ${XCODE_ISYSROOT})
|
||||
set(XCODE_ISYSROOT ${APPLE_DEV_DIR}/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk)
|
||||
if(NOT EXISTS ${XCODE_ISYSROOT})
|
||||
message(FATAL_ERROR "Cannot find macos sdk.")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
message(STATUS "Setting CMAKE_OSX_SYSROOT for macos ${OSX_SHORT_VERSION} to ${XCODE_ISYSROOT}")
|
||||
set(CMAKE_OSX_SYSROOT ${XCODE_ISYSROOT})
|
||||
endif()
|
||||
endif()
|
||||
|
||||
option(NGRAPH_UNIT_TEST_ENABLE "Control the building of unit tests" ON)
|
||||
option(NGRAPH_UNIT_TEST_BACKENDS_ENABLE "Control the building of unit tests using backends" ON)
|
||||
option(NGRAPH_INTERPRETER_ENABLE "Control the building of the INTERPRETER backend" ON)
|
||||
option(NGRAPH_DEBUG_ENABLE "Enable output for NGRAPH_DEBUG statements" OFF)
|
||||
option(NGRAPH_ONNX_IMPORT_ENABLE "Enable ONNX importer" OFF)
|
||||
option(NGRAPH_ONNX_EDITOR_ENABLE "Enable ONNX Editor" OFF)
|
||||
option(NGRAPH_LIB_VERSIONING_ENABLE "Enable shared library versioning" OFF)
|
||||
option(NGRAPH_PYTHON_BUILD_ENABLE "Enable build nGraph python package wheel" OFF)
|
||||
option(NGRAPH_DYNAMIC_COMPONENTS_ENABLE "Enable dynamic loading of components" ON)
|
||||
option(NGRAPH_EXPORT_TARGETS_ENABLE "Enable exporting nGraph cmake export targets" ON)
|
||||
option(NGRAPH_ADDRESS_SANITIZER_ENABLE "Compiles and links with Address Sanitizer" OFF)
|
||||
option(NGRAPH_THREAD_SANITIZER_ENABLE "Compiles and links with Thread Sanitizer" OFF)
|
||||
option(NGRAPH_UB_SANITIZER_ENABLE "Compiles and links with Undefined Behavior Sanitizer" OFF)
|
||||
option(NGRAPH_USE_PROTOBUF_LITE "Compiles and links with protobuf-lite" OFF)
|
||||
|
||||
if (NGRAPH_ONNX_IMPORT_ENABLE)
|
||||
@ -105,17 +34,12 @@ if(NGRAPH_ONNX_EDITOR_ENABLE AND NOT NGRAPH_ONNX_IMPORT_ENABLE)
|
||||
message(FATAL_ERROR "ONNX Editor component requires ONNX Importer. Set NGRAPH_ONNX_IMPORT_ENABLE=ON.")
|
||||
endif()
|
||||
|
||||
message(STATUS "NGRAPH_ADDRESS_SANITIZER_ENABLE: ${NGRAPH_ADDRESS_SANITIZER_ENABLE}")
|
||||
message(STATUS "NGRAPH_DEBUG_ENABLE: ${NGRAPH_DEBUG_ENABLE}")
|
||||
message(STATUS "NGRAPH_DYNAMIC_COMPONENTS_ENABLE: ${NGRAPH_DYNAMIC_COMPONENTS_ENABLE}")
|
||||
message(STATUS "NGRAPH_EXPORT_TARGETS_ENABLE: ${NGRAPH_EXPORT_TARGETS_ENABLE}")
|
||||
message(STATUS "NGRAPH_INTERPRETER_ENABLE: ${NGRAPH_INTERPRETER_ENABLE}")
|
||||
message(STATUS "NGRAPH_LIB_VERSIONING_ENABLE: ${NGRAPH_LIB_VERSIONING_ENABLE}")
|
||||
message(STATUS "NGRAPH_ONNX_IMPORT_ENABLE: ${NGRAPH_ONNX_IMPORT_ENABLE}")
|
||||
message(STATUS "NGRAPH_ONNX_EDITOR_ENABLE: ${NGRAPH_ONNX_EDITOR_ENABLE}")
|
||||
message(STATUS "NGRAPH_PYTHON_BUILD_ENABLE: ${NGRAPH_PYTHON_BUILD_ENABLE}")
|
||||
message(STATUS "NGRAPH_THREAD_SANITIZER_ENABLE: ${NGRAPH_THREAD_SANITIZER_ENABLE}")
|
||||
message(STATUS "NGRAPH_UB_SANITIZER_ENABLE: ${NGRAPH_UB_SANITIZER_ENABLE}")
|
||||
message(STATUS "NGRAPH_USE_PROTOBUF_LITE: ${NGRAPH_USE_PROTOBUF_LITE}")
|
||||
message(STATUS "NGRAPH_UNIT_TEST_ENABLE: ${NGRAPH_UNIT_TEST_ENABLE}")
|
||||
message(STATUS "NGRAPH_UNIT_TEST_BACKENDS_ENABLE: ${NGRAPH_UNIT_TEST_BACKENDS_ENABLE}")
|
||||
@ -159,14 +83,6 @@ if (NOT MSVC)
|
||||
endif()
|
||||
message(STATUS "NGRAPH_FORWARD_CMAKE_ARGS ${NGRAPH_FORWARD_CMAKE_ARGS}")
|
||||
|
||||
#-----------------------------------------------------------------------------------------------
|
||||
# Coverage
|
||||
#-----------------------------------------------------------------------------------------------
|
||||
|
||||
if(ENABLE_COVERAGE)
|
||||
include(cmake/coverage.cmake)
|
||||
endif()
|
||||
|
||||
#-----------------------------------------------------------------------------------------------
|
||||
# Installation logic...
|
||||
#-----------------------------------------------------------------------------------------------
|
||||
@ -213,39 +129,6 @@ if (NGRAPH_DYNAMIC_COMPONENTS_ENABLE)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DNGRAPH_DYNAMIC_COMPONENTS_ENABLE")
|
||||
endif()
|
||||
|
||||
if(NGRAPH_ADDRESS_SANITIZER_ENABLE)
|
||||
if (APPLE)
|
||||
set(ADDRESS_SANITIZER_FLAGS "-fsanitize=address")
|
||||
else()
|
||||
set(ADDRESS_SANITIZER_FLAGS "-fsanitize=address -fsanitize=leak")
|
||||
endif()
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${ADDRESS_SANITIZER_FLAGS}")
|
||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${ADDRESS_SANITIZER_FLAGS}")
|
||||
set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} ${ADDRESS_SANITIZER_FLAGS}")
|
||||
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${ADDRESS_SANITIZER_FLAGS}")
|
||||
endif()
|
||||
|
||||
if(NGRAPH_THREAD_SANITIZER_ENABLE)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=thread")
|
||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fsanitize=thread")
|
||||
set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -fsanitize=thread")
|
||||
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fsanitize=thread")
|
||||
endif()
|
||||
|
||||
if(NGRAPH_UB_SANITIZER_ENABLE)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=float-divide-by-zero -fsanitize=undefined -fsanitize=float-cast-overflow -fPIE -pie")
|
||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fsanitize=float-divide-by-zero -fsanitize=undefined -fsanitize=float-cast-overflow -fPIE -pie")
|
||||
set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -fsanitize=float-divide-by-zero -fsanitize=undefined -fsanitize=float-cast-overflow -fPIE -pie")
|
||||
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fsanitize=float-divide-by-zero -fsanitize=undefined -fsanitize=float-cast-overflow -fPIE -pie")
|
||||
endif()
|
||||
|
||||
if(NGRAPH_ADDRESS_SANITIZER_ENABLE OR NGRAPH_THREAD_SANITIZER_ENABLE OR NGRAPH_UB_SANITIZER_ENABLE)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -fno-omit-frame-pointer")
|
||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -g -fno-omit-frame-pointer")
|
||||
set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -g -fno-omit-frame-pointer")
|
||||
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -g -fno-omit-frame-pointer")
|
||||
endif()
|
||||
|
||||
add_definitions(-DPROJECT_ROOT_DIR="${CMAKE_CURRENT_SOURCE_DIR}")
|
||||
|
||||
#-----------------------------------------------------------------------------------------------
|
||||
@ -268,32 +151,34 @@ endif()
|
||||
|
||||
add_subdirectory(core)
|
||||
|
||||
if (NGRAPH_EXPORT_TARGETS_ENABLE)
|
||||
set(NGRAPH_TARGETS_FILE "${CMAKE_CURRENT_BINARY_DIR}/ngraphTargets.cmake")
|
||||
export(TARGETS ngraph NAMESPACE ngraph:: FILE "${NGRAPH_TARGETS_FILE}")
|
||||
#
|
||||
# Export targets
|
||||
#
|
||||
|
||||
if(BUILD_SHARED_LIBS)
|
||||
install(EXPORT ngraphTargets
|
||||
FILE ngraphTargets.cmake
|
||||
NAMESPACE ngraph::
|
||||
DESTINATION "deployment_tools/ngraph/cmake"
|
||||
COMPONENT ngraph_dev)
|
||||
endif()
|
||||
set(NGRAPH_TARGETS_FILE "${CMAKE_CURRENT_BINARY_DIR}/ngraphTargets.cmake")
|
||||
export(TARGETS ngraph NAMESPACE ngraph:: FILE "${NGRAPH_TARGETS_FILE}")
|
||||
|
||||
configure_package_config_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake/share/ngraphConfig.cmake.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/ngraphConfig.cmake
|
||||
INSTALL_DESTINATION cmake)
|
||||
|
||||
write_basic_package_version_file(${CMAKE_CURRENT_BINARY_DIR}/ngraphConfigVersion.cmake
|
||||
VERSION ${NGRAPH_VERSION}
|
||||
COMPATIBILITY SameMajorVersion)
|
||||
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/ngraphConfig.cmake
|
||||
${CMAKE_CURRENT_BINARY_DIR}/ngraphConfigVersion.cmake
|
||||
if(BUILD_SHARED_LIBS)
|
||||
install(EXPORT ngraphTargets
|
||||
FILE ngraphTargets.cmake
|
||||
NAMESPACE ngraph::
|
||||
DESTINATION "deployment_tools/ngraph/cmake"
|
||||
COMPONENT ngraph_dev)
|
||||
endif()
|
||||
|
||||
configure_package_config_file(${OpenVINO_MAIN_SOURCE_DIR}/cmake/templates/ngraphConfig.cmake.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/ngraphConfig.cmake
|
||||
INSTALL_DESTINATION cmake)
|
||||
|
||||
write_basic_package_version_file(${CMAKE_CURRENT_BINARY_DIR}/ngraphConfigVersion.cmake
|
||||
VERSION ${IE_VERSION_MAJOR}.${IE_VERSION_MINOR}.${IE_VERSION_PATCH}
|
||||
COMPATIBILITY SameMajorVersion)
|
||||
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/ngraphConfig.cmake
|
||||
${CMAKE_CURRENT_BINARY_DIR}/ngraphConfigVersion.cmake
|
||||
DESTINATION "deployment_tools/ngraph/cmake"
|
||||
COMPONENT ngraph_dev)
|
||||
|
||||
if (NGRAPH_ONNX_IMPORT_ENABLE)
|
||||
if (MSVC)
|
||||
# When we build dll libraries. These flags make sure onnx and protobuf build with /MD, not /MT.
|
||||
@ -333,7 +218,3 @@ add_subdirectory(test)
|
||||
if (NGRAPH_PYTHON_BUILD_ENABLE)
|
||||
add_subdirectory(python)
|
||||
endif()
|
||||
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/VERSION
|
||||
DESTINATION "deployment_tools/ngraph"
|
||||
COMPONENT ngraph)
|
||||
|
@ -1 +0,0 @@
|
||||
${NGRAPH_VERSION}
|
@ -1,90 +0,0 @@
|
||||
# Copyright (C) 2018-2021 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
function(NGRAPH_GET_CURRENT_HASH)
|
||||
find_package(Git REQUIRED)
|
||||
execute_process(
|
||||
COMMAND ${GIT_EXECUTABLE} rev-parse --verify HEAD
|
||||
RESULT_VARIABLE result
|
||||
OUTPUT_VARIABLE HASH
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
ERROR_QUIET)
|
||||
|
||||
if(NOT HASH)
|
||||
return()
|
||||
endif()
|
||||
string(STRIP ${HASH} HASH)
|
||||
set(NGRAPH_CURRENT_HASH ${HASH} PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
function(NGRAPH_GET_TAG_OF_CURRENT_HASH)
|
||||
find_package(Git REQUIRED)
|
||||
execute_process(
|
||||
COMMAND ${GIT_EXECUTABLE} show-ref
|
||||
RESULT_VARIABLE RESULT
|
||||
OUTPUT_VARIABLE TAG_LIST
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
ERROR_QUIET)
|
||||
|
||||
NGRAPH_GET_CURRENT_HASH()
|
||||
|
||||
if (NOT ${TAG_LIST} STREQUAL "")
|
||||
# first look for vX.Y.Z release tag
|
||||
string(REGEX MATCH "${NGRAPH_CURRENT_HASH}[\t ]+refs/tags/v([0-9?]+)\\.([0-9?]+)\\.([0-9?]+)$" TAG ${TAG_LIST})
|
||||
if ("${TAG}" STREQUAL "")
|
||||
# release tag not found so now look for vX.Y.Z-rc.N tag
|
||||
string(REGEX MATCH "${NGRAPH_CURRENT_HASH}[\t ]+refs/tags/v([0-9?]+)\\.([0-9?]+)\\.([0-9?]+)-(rc\\.[0-9?]+)$" TAG ${TAG_LIST})
|
||||
endif()
|
||||
set(STATUS ${TAG})
|
||||
if (NOT "${TAG}" STREQUAL "")
|
||||
string(REGEX REPLACE "${NGRAPH_CURRENT_HASH}[\t ]+refs/tags/(.*)" "\\1" FINAL_TAG ${TAG})
|
||||
endif()
|
||||
else()
|
||||
set(FINAL_TAG "")
|
||||
endif()
|
||||
set(NGRAPH_CURRENT_RELEASE_TAG ${FINAL_TAG} PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
function(NGRAPH_GET_MOST_RECENT_TAG)
|
||||
find_package(Git REQUIRED)
|
||||
execute_process(
|
||||
COMMAND ${GIT_EXECUTABLE} describe --tags --abbrev=0 --match v*.*.*
|
||||
RESULT_VARIABLE RESULT
|
||||
OUTPUT_VARIABLE TAG
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
ERROR_QUIET)
|
||||
|
||||
if (NOT ${TAG} STREQUAL "")
|
||||
string(STRIP ${TAG} TAG)
|
||||
endif()
|
||||
set(NGRAPH_MOST_RECENT_RELEASE_TAG ${TAG} PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
function(NGRAPH_GET_VERSION_LABEL)
|
||||
NGRAPH_GET_TAG_OF_CURRENT_HASH()
|
||||
set(NGRAPH_VERSION_LABEL ${NGRAPH_CURRENT_RELEASE_TAG} PARENT_SCOPE)
|
||||
if ("${NGRAPH_CURRENT_RELEASE_TAG}" STREQUAL "")
|
||||
NGRAPH_GET_CURRENT_HASH()
|
||||
NGRAPH_GET_MOST_RECENT_TAG()
|
||||
message(STATUS "Current hash ${NGRAPH_CURRENT_HASH}")
|
||||
string(SUBSTRING "${NGRAPH_CURRENT_HASH}" 0 7 HASH)
|
||||
if (NOT ${NGRAPH_MOST_RECENT_RELEASE_TAG} STREQUAL "")
|
||||
set(NGRAPH_VERSION_LABEL "${NGRAPH_MOST_RECENT_RELEASE_TAG}+${HASH}" PARENT_SCOPE)
|
||||
else()
|
||||
if(HASH)
|
||||
set(NGRAPH_VERSION_LABEL "v0.0.0+${HASH}" PARENT_SCOPE)
|
||||
else()
|
||||
# Not in a git repo
|
||||
if (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/TAG)
|
||||
# TAG file exists and TAG is assumed to be in the 'correct format', i.e. *.*.*
|
||||
file(READ ${CMAKE_CURRENT_SOURCE_DIR}/TAG NGRAPH_TAG)
|
||||
string(STRIP ${NGRAPH_TAG} NGRAPH_TAG)
|
||||
set(NGRAPH_VERSION_LABEL "${NGRAPH_TAG}" PARENT_SCOPE)
|
||||
else()
|
||||
set(NGRAPH_VERSION_LABEL "v0.0.0+custom-build" PARENT_SCOPE)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
endfunction()
|
@ -1,31 +0,0 @@
|
||||
# Copyright (C) 2018-2021 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
set(NGRAPH_COVERAGE_BASE_DIRECTORY "${OpenVINO_MAIN_SOURCE_DIR}")
|
||||
|
||||
ie_coverage_clean(REPOSITORY "nGraph"
|
||||
DIRECTORY "${OV_COVERAGE_GCDA_DATA_DIRECTORY}")
|
||||
ie_coverage_capture(INFO_FILE "nGraph"
|
||||
BASE_DIRECTORY "${NGRAPH_COVERAGE_BASE_DIRECTORY}"
|
||||
DIRECTORY "${OV_COVERAGE_GCDA_DATA_DIRECTORY}")
|
||||
|
||||
# Generate reports
|
||||
|
||||
ie_coverage_extract(INPUT "nGraph" OUTPUT "ngraph"
|
||||
PATTERNS "${NGRAPH_COVERAGE_BASE_DIRECTORY}/ngraph/core/*")
|
||||
ie_coverage_genhtml(INFO_FILE "ngraph"
|
||||
PREFIX "${NGRAPH_COVERAGE_BASE_DIRECTORY}")
|
||||
if (NGRAPH_ONNX_IMPORT_ENABLE)
|
||||
ie_coverage_extract(INPUT "nGraph" OUTPUT "onnx_importer"
|
||||
PATTERNS "${NGRAPH_COVERAGE_BASE_DIRECTORY}/ngraph/frontend/onnx_common*"
|
||||
"${NGRAPH_COVERAGE_BASE_DIRECTORY}/ngraph/frontend/onnx_import*")
|
||||
ie_coverage_genhtml(INFO_FILE "onnx_importer"
|
||||
PREFIX "${NGRAPH_COVERAGE_BASE_DIRECTORY}")
|
||||
endif()
|
||||
if (NGRAPH_ONNX_EDITOR_ENABLE)
|
||||
ie_coverage_extract(INPUT "nGraph" OUTPUT "onnx_editor"
|
||||
PATTERNS
|
||||
"${NGRAPH_COVERAGE_BASE_DIRECTORY}/ngraph/frontend/onnx_editor*")
|
||||
ie_coverage_genhtml(INFO_FILE "onnx_editor"
|
||||
PREFIX "${NGRAPH_COVERAGE_BASE_DIRECTORY}")
|
||||
endif()
|
@ -52,9 +52,7 @@ macro(onnx_set_target_properties)
|
||||
ARCHIVE DESTINATION ${NGRAPH_INSTALL_LIB} COMPONENT ngraph
|
||||
LIBRARY DESTINATION ${NGRAPH_INSTALL_LIB} COMPONENT ngraph)
|
||||
|
||||
if (NGRAPH_EXPORT_TARGETS_ENABLE)
|
||||
export(TARGETS onnx onnx_proto NAMESPACE ngraph:: APPEND FILE "${NGRAPH_TARGETS_FILE}")
|
||||
endif()
|
||||
export(TARGETS onnx onnx_proto NAMESPACE ngraph:: APPEND FILE "${NGRAPH_TARGETS_FILE}")
|
||||
endmacro()
|
||||
|
||||
FetchContent_GetProperties(ext_onnx)
|
||||
|
@ -121,6 +121,5 @@ install(TARGETS ${Protobuf_LIBRARIES}
|
||||
RUNTIME DESTINATION ${NGRAPH_INSTALL_LIB} COMPONENT ngraph
|
||||
ARCHIVE DESTINATION ${NGRAPH_INSTALL_LIB} COMPONENT ngraph
|
||||
LIBRARY DESTINATION ${NGRAPH_INSTALL_LIB} COMPONENT ngraph)
|
||||
if (NGRAPH_EXPORT_TARGETS_ENABLE)
|
||||
export(TARGETS ${Protobuf_LIBRARIES} NAMESPACE ngraph:: APPEND FILE "${NGRAPH_TARGETS_FILE}")
|
||||
endif()
|
||||
|
||||
export(TARGETS ${Protobuf_LIBRARIES} NAMESPACE ngraph:: APPEND FILE "${NGRAPH_TARGETS_FILE}")
|
||||
|
@ -45,17 +45,6 @@ ie_mark_target_as_cc(ngraph)
|
||||
|
||||
add_clang_format_target(ngraph_clang FOR_TARGETS ngraph)
|
||||
|
||||
if(NGRAPH_ADDRESS_SANITIZER)
|
||||
message(STATUS "Enable Address Sanitizer")
|
||||
add_compile_options(-g -fsanitize=address -fno-omit-frame-pointer)
|
||||
endif()
|
||||
|
||||
if(NGRAPH_LIB_VERSIONING_ENABLE)
|
||||
set_target_properties(ngraph PROPERTIES
|
||||
VERSION ${NGRAPH_VERSION}
|
||||
SOVERSION ${NGRAPH_API_VERSION})
|
||||
endif()
|
||||
|
||||
if(NOT BUILD_SHARED_LIBS)
|
||||
target_compile_definitions(ngraph PUBLIC NGRAPH_STATIC_LIBRARY)
|
||||
endif()
|
||||
@ -110,14 +99,3 @@ install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/include/
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/include/ngraph/version.hpp
|
||||
DESTINATION ${NGRAPH_INSTALL_INCLUDE}/ngraph
|
||||
COMPONENT ngraph_dev)
|
||||
|
||||
set(CPACK_GENERATOR "DEB")
|
||||
set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON)
|
||||
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "nGraph library")
|
||||
set(CPACK_PACKAGE_NAME "nGraph")
|
||||
set(CPACK_PACKAGE_VENDOR "Intel")
|
||||
|
||||
set(CPACK_PACKAGE_VERSION_MAJOR ${NGRAPH_VERSION_MAJOR})
|
||||
set(CPACK_PACKAGE_VERSION_MINOR ${NGRAPH_VERSION_MINOR})
|
||||
set(CPACK_PACKAGE_VERSION_PATCH ${NGRAPH_VERSION_PATCH})
|
||||
include(CPack)
|
||||
|
@ -2,4 +2,4 @@
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
//
|
||||
|
||||
const char* NGRAPH_VERSION_NUMBER = "${NGRAPH_VERSION}";
|
||||
const char* NGRAPH_VERSION_NUMBER = "${CI_BUILD_NUMBER}";
|
||||
|
@ -80,6 +80,4 @@ install(DIRECTORY ${ONNX_IMPORT_INCLUDE_DIR}/onnx_import
|
||||
PATTERN "*.h"
|
||||
)
|
||||
|
||||
if (NGRAPH_EXPORT_TARGETS_ENABLE)
|
||||
export(TARGETS onnx_importer NAMESPACE ngraph:: APPEND FILE "${NGRAPH_TARGETS_FILE}")
|
||||
endif()
|
||||
export(TARGETS onnx_importer NAMESPACE ngraph:: APPEND FILE "${NGRAPH_TARGETS_FILE}")
|
||||
|
@ -47,7 +47,6 @@ set(SRC
|
||||
main.cpp
|
||||
matcher_pass.cpp
|
||||
misc.cpp
|
||||
ngraph_api.cpp
|
||||
node_input_output.cpp
|
||||
op.cpp
|
||||
op_eval/binary_convolution.cpp
|
||||
@ -545,10 +544,6 @@ if(UNIT_TESTS_DEPENDENCIES)
|
||||
add_dependencies(unit-test ${UNIT_TESTS_DEPENDENCIES})
|
||||
endif()
|
||||
|
||||
if(NGRAPH_ADDRESS_SANITIZER)
|
||||
add_compile_options(-g -fsanitize=address -fno-omit-frame-pointer)
|
||||
endif()
|
||||
|
||||
target_link_libraries(unit-test PRIVATE ngraph_test_util
|
||||
ngraph::builder
|
||||
openvino::conditional_compilation)
|
||||
@ -570,7 +565,6 @@ if (NGRAPH_ONNX_IMPORT_ENABLE AND NOT NGRAPH_USE_PROTOBUF_LITE)
|
||||
target_include_directories(unit-test PRIVATE ${ONNX_IMPORTER_SRC_DIR}/src)
|
||||
endif()
|
||||
|
||||
target_compile_definitions(unit-test PRIVATE NGRAPH_VERSION_LABEL="${NGRAPH_VERSION_LABEL}")
|
||||
if(NOT WIN32)
|
||||
target_link_libraries(unit-test PRIVATE pthread)
|
||||
endif()
|
||||
|
@ -1,105 +0,0 @@
|
||||
// Copyright (C) 2018-2021 Intel Corporation
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
//
|
||||
|
||||
#include "gtest/gtest.h"
|
||||
|
||||
#include "ngraph/ngraph.hpp"
|
||||
|
||||
using namespace ngraph;
|
||||
using namespace std;
|
||||
|
||||
TEST(ngraph_api, parse_version)
|
||||
{
|
||||
size_t major;
|
||||
size_t minor;
|
||||
size_t patch;
|
||||
string extra;
|
||||
|
||||
{
|
||||
string version = "0.25.1-rc.0+7c32240";
|
||||
parse_version_string(version, major, minor, patch, extra);
|
||||
EXPECT_EQ(0, major);
|
||||
EXPECT_EQ(25, minor);
|
||||
EXPECT_EQ(1, patch);
|
||||
EXPECT_STREQ(extra.c_str(), "-rc.0+7c32240");
|
||||
}
|
||||
|
||||
{
|
||||
string version = "v0.25.1-rc.0+7c32240";
|
||||
parse_version_string(version, major, minor, patch, extra);
|
||||
EXPECT_EQ(0, major);
|
||||
EXPECT_EQ(25, minor);
|
||||
EXPECT_EQ(1, patch);
|
||||
EXPECT_STREQ(extra.c_str(), "-rc.0+7c32240");
|
||||
}
|
||||
|
||||
{
|
||||
string version = "0.25.1+7c32240";
|
||||
parse_version_string(version, major, minor, patch, extra);
|
||||
EXPECT_EQ(0, major);
|
||||
EXPECT_EQ(25, minor);
|
||||
EXPECT_EQ(1, patch);
|
||||
EXPECT_STREQ(extra.c_str(), "+7c32240");
|
||||
}
|
||||
|
||||
{
|
||||
string version = "0.25.1";
|
||||
parse_version_string(version, major, minor, patch, extra);
|
||||
EXPECT_EQ(0, major);
|
||||
EXPECT_EQ(25, minor);
|
||||
EXPECT_EQ(1, patch);
|
||||
EXPECT_STREQ(extra.c_str(), "");
|
||||
}
|
||||
|
||||
{
|
||||
string version = "x0.25.1";
|
||||
EXPECT_THROW(parse_version_string(version, major, minor, patch, extra), runtime_error);
|
||||
}
|
||||
|
||||
{
|
||||
string version = "0x.25.1";
|
||||
EXPECT_THROW(parse_version_string(version, major, minor, patch, extra), runtime_error);
|
||||
}
|
||||
|
||||
{
|
||||
string version = ".25.1";
|
||||
EXPECT_THROW(parse_version_string(version, major, minor, patch, extra), runtime_error);
|
||||
}
|
||||
|
||||
{
|
||||
string version = "123.456";
|
||||
EXPECT_THROW(parse_version_string(version, major, minor, patch, extra), runtime_error);
|
||||
}
|
||||
|
||||
{
|
||||
string version = "";
|
||||
EXPECT_THROW(parse_version_string(version, major, minor, patch, extra), runtime_error);
|
||||
}
|
||||
|
||||
{
|
||||
string version = "this is a test";
|
||||
EXPECT_THROW(parse_version_string(version, major, minor, patch, extra), runtime_error);
|
||||
}
|
||||
}
|
||||
|
||||
TEST(ngraph_api, version)
|
||||
{
|
||||
string version_label = NGRAPH_VERSION_LABEL;
|
||||
size_t expected_major;
|
||||
size_t expected_minor;
|
||||
size_t expected_patch;
|
||||
string expected_extra;
|
||||
parse_version_string(
|
||||
version_label, expected_major, expected_minor, expected_patch, expected_extra);
|
||||
|
||||
size_t actual_major;
|
||||
size_t actual_minor;
|
||||
size_t actual_patch;
|
||||
string actual_extra;
|
||||
get_version(actual_major, actual_minor, actual_patch, actual_extra);
|
||||
EXPECT_EQ(expected_major, actual_major);
|
||||
EXPECT_EQ(expected_minor, actual_minor);
|
||||
EXPECT_EQ(expected_patch, actual_patch);
|
||||
EXPECT_STREQ(expected_extra.c_str(), actual_extra.c_str());
|
||||
}
|
@ -9,7 +9,7 @@ if (NGRAPH_INTERPRETER_ENABLE)
|
||||
ie_faster_build(interpreter_backend
|
||||
UNITY
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(COMMAND ie_add_vs_version_file)
|
||||
ie_add_vs_version_file(NAME interpreter_backend
|
||||
@ -22,11 +22,5 @@ if (NGRAPH_INTERPRETER_ENABLE)
|
||||
endif()
|
||||
|
||||
target_compile_definitions(interpreter_backend PRIVATE INTERPRETER_BACKEND_EXPORTS)
|
||||
if(NGRAPH_LIB_VERSIONING_ENABLE)
|
||||
set_target_properties(interpreter_backend PROPERTIES
|
||||
VERSION ${NGRAPH_VERSION}
|
||||
SOVERSION ${NGRAPH_API_VERSION})
|
||||
endif()
|
||||
target_link_libraries(interpreter_backend PUBLIC ngraph_backend)
|
||||
|
||||
endif()
|
||||
|
@ -26,10 +26,6 @@ if(COMMAND ie_faster_build)
|
||||
)
|
||||
endif()
|
||||
|
||||
if(NGRAPH_LIB_VERSIONING_ENABLE)
|
||||
set_target_properties(ngraph_test_util PROPERTIES
|
||||
VERSION ${NGRAPH_VERSION})
|
||||
endif()
|
||||
target_include_directories(ngraph_test_util PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/.. ${IE_MAIN_SOURCE_DIR}/include)
|
||||
target_link_libraries(ngraph_test_util PUBLIC ngraph ngraph_backend gtest gmock)
|
||||
if (NGRAPH_ONNX_IMPORT_ENABLE)
|
||||
|
Loading…
Reference in New Issue
Block a user