Relocatable developer package (#20327)
* Merge Linux CC + static build + clang compiler * Improvements * Removed ie prefixes from cmake scripts * Fixes for NPU * Initial relocatable OpenVINO Developer package * Improvements * Try to fix * improvements * Export a lot of headers * Removed NVIDIA pipeline; make it to be a job * Fixes * Fixes 2 * Try ilya-lavrenov repo * Clean-up * More imrpovements * Even more improvements * Override export, install * Override export, install * Disable pythonwheel generation for relocatable OV dev package * Fixed issues with versions * Fixed android build * Fixed android build * Fixed NPU build * Update src/bindings/python/CMakeLists.txt
This commit is contained in:
parent
cb61ad46bd
commit
56d74a82cb
4
.github/workflows/build_doc.yml
vendored
4
.github/workflows/build_doc.yml
vendored
@ -17,8 +17,8 @@ jobs:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: true
|
||||
lfs: true
|
||||
submodules: 'true'
|
||||
lfs: 'true'
|
||||
|
||||
- name: Install apt-get dependencies
|
||||
uses: awalsh128/cache-apt-pkgs-action@v1.3.0
|
||||
|
136
.github/workflows/linux.yml
vendored
136
.github/workflows/linux.yml
vendored
@ -50,6 +50,7 @@ jobs:
|
||||
OPENVINO_CONTRIB_REPO: /__w/openvino/openvino/openvino_contrib
|
||||
INSTALL_DIR: /__w/openvino/openvino/openvino_install
|
||||
INSTALL_TEST_DIR: /__w/openvino/openvino/tests_install
|
||||
DEVELOPER_PACKAGE_DIR: /__w/openvino/openvino/developer_package_install
|
||||
BUILD_DIR: /__w/openvino/openvino/openvino_build
|
||||
CCACHE_DIR: /mount/caches/ccache/ubuntu20_x86_64_Release
|
||||
CCACHE_TEMPDIR: /__w/openvino/openvino/ccache_temp
|
||||
@ -74,6 +75,7 @@ jobs:
|
||||
repository: 'openvinotoolkit/openvino_contrib'
|
||||
path: ${{ env.OPENVINO_CONTRIB_REPO }}
|
||||
submodules: 'true'
|
||||
ref: 'master'
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
@ -150,6 +152,7 @@ jobs:
|
||||
run: |
|
||||
cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_DIR} -P ${BUILD_DIR}/cmake_install.cmake
|
||||
cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_TEST_DIR} -DCOMPONENT=tests -P ${BUILD_DIR}/cmake_install.cmake
|
||||
cmake -DCMAKE_INSTALL_PREFIX=${DEVELOPER_PACKAGE_DIR} -DCOMPONENT=developer_package -P ${BUILD_DIR}/cmake_install.cmake
|
||||
cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_DIR} -DCOMPONENT=python_wheels -P ${BUILD_DIR}/cmake_install.cmake
|
||||
|
||||
- name: Pack Artifacts
|
||||
@ -164,6 +167,10 @@ jobs:
|
||||
tar -czvf ${BUILD_DIR}/openvino_package.tar.gz *
|
||||
popd
|
||||
|
||||
pushd ${DEVELOPER_PACKAGE_DIR}
|
||||
tar -czvf ${BUILD_DIR}/openvino_developer_package.tar.gz *
|
||||
popd
|
||||
|
||||
pushd ${INSTALL_TEST_DIR}
|
||||
tar -czvf ${BUILD_DIR}/openvino_tests.tar.gz *
|
||||
popd
|
||||
@ -203,6 +210,14 @@ jobs:
|
||||
path: ${{ env.BUILD_DIR }}/openvino_package.tar.gz
|
||||
if-no-files-found: 'error'
|
||||
|
||||
- name: Upload openvino developer package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: openvino_developer_package
|
||||
path: ${{ env.BUILD_DIR }}/openvino_developer_package.tar.gz
|
||||
if-no-files-found: 'error'
|
||||
|
||||
- name: Upload openvino debian packages
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@v3
|
||||
@ -493,7 +508,6 @@ jobs:
|
||||
ONNX_RUNTIME_BUILD_DIR: /__w/openvino/openvino/onnxruntime/build
|
||||
|
||||
steps:
|
||||
|
||||
- name: Fetch install_build_dependencies.sh
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
@ -501,6 +515,7 @@ jobs:
|
||||
install_build_dependencies.sh
|
||||
sparse-checkout-cone-mode: false
|
||||
path: ${{ env.OPENVINO_REPO }}
|
||||
ref: 'master'
|
||||
|
||||
- name: Install git
|
||||
run: |
|
||||
@ -1292,3 +1307,122 @@ jobs:
|
||||
path: |
|
||||
${{ env.INSTALL_TEST_DIR }}/TEST*.html
|
||||
if-no-files-found: 'error'
|
||||
|
||||
NVIDIA_Plugin:
|
||||
name: NVIDIA plugin
|
||||
needs: Build
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: aks-linux-16-cores
|
||||
container:
|
||||
image: openvinogithubactions.azurecr.io/dockerhub/nvidia/cuda:11.8.0-runtime-ubuntu20.04
|
||||
volumes:
|
||||
- /mount/caches:/mount/caches
|
||||
env:
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
CMAKE_GENERATOR: 'Ninja Multi-Config'
|
||||
CMAKE_CUDA_COMPILER_LAUNCHER: ccache
|
||||
CMAKE_CXX_COMPILER_LAUNCHER: ccache
|
||||
CMAKE_C_COMPILER_LAUNCHER: ccache
|
||||
INSTALL_DIR: /__w/openvino/openvino/install
|
||||
OPENVINO_DEVELOPER_PACKAGE: /__w/openvino/openvino/install/developer_package
|
||||
OPENVINO_REPO: /__w/openvino/openvino/openvino
|
||||
OPENVINO_CONTRIB_REPO: /__w/openvino/openvino/openvino_contrib
|
||||
NVIDIA_BUILD_DIR: /__w/openvino/openvino/nvidia_plugin_build
|
||||
DEBIAN_FRONTEND: 'noninteractive'
|
||||
CCACHE_DIR: /mount/caches/ccache/ubuntu20_x86_64_Release
|
||||
CCACHE_TEMPDIR: /__w/openvino/openvino/ccache_temp
|
||||
CCACHE_MAXSIZE: 50G
|
||||
|
||||
steps:
|
||||
- name: Install Prerequisites
|
||||
run: apt update && apt install -y git ca-certificates
|
||||
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO Developer package
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: openvino_developer_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Extract OpenVINO packages
|
||||
run: |
|
||||
pushd ${INSTALL_DIR}
|
||||
tar -xzf openvino_package.tar.gz -C ${INSTALL_DIR}
|
||||
popd
|
||||
|
||||
pushd ${INSTALL_DIR}
|
||||
tar -xzf openvino_developer_package.tar.gz -C ${INSTALL_DIR}
|
||||
popd
|
||||
|
||||
# TODO: replace with sparse checkout below
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: ${{ env.OPENVINO_REPO }}
|
||||
|
||||
- name: Fetch install_build_dependencies.sh
|
||||
if: ${{ 'false' }}
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
install_build_dependencies.sh
|
||||
sparse-checkout-cone-mode: false
|
||||
path: ${{ env.OPENVINO_REPO }}
|
||||
|
||||
- name: Clone OpenVINO Contrib
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'openvinotoolkit/openvino_contrib'
|
||||
path: ${{ env.OPENVINO_CONTRIB_REPO }}
|
||||
ref: 'master'
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
#
|
||||
|
||||
- name: Install build dependencies
|
||||
run: |
|
||||
${OPENVINO_REPO}/install_build_dependencies.sh
|
||||
apt -y --no-install-recommends install software-properties-common
|
||||
|
||||
- name: Install CUDA
|
||||
run: |
|
||||
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin
|
||||
mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600
|
||||
|
||||
apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/3bf863cc.pub
|
||||
add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/ /"
|
||||
apt update
|
||||
apt install -y \
|
||||
libcudnn8=8.9.4.*-1+cuda11.8 \
|
||||
libcudnn8-dev=8.9.4.*-1+cuda11.8 \
|
||||
libcudnn8-samples=8.9.4.*-1+cuda11.8 \
|
||||
cuda-runtime-11-8 \
|
||||
cuda-11-8 \
|
||||
libcutensor1=1.6.1.5-1 \
|
||||
libcutensor-dev=1.6.1.5-1 \
|
||||
cuda-drivers=520.61.05-1
|
||||
|
||||
#
|
||||
# Build
|
||||
#
|
||||
|
||||
- name: Cmake & Build - NVIDIA Plugin
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
cmake \
|
||||
-DOpenVINODeveloperPackage_DIR=${OPENVINO_DEVELOPER_PACKAGE}/cmake \
|
||||
-DCMAKE_COMPILE_WARNING_AS_ERROR=OFF \
|
||||
-S ${OPENVINO_CONTRIB_REPO}/modules/nvidia_plugin \
|
||||
-B ${NVIDIA_BUILD_DIR}
|
||||
cmake --build ${NVIDIA_BUILD_DIR} --parallel --config ${{ env.CMAKE_BUILD_TYPE }} --verbose -- ov_nvidia_func_tests ov_nvidia_unit_tests
|
||||
|
||||
- name: Show ccache stats
|
||||
run: ccache --show-stats
|
||||
|
@ -73,6 +73,7 @@ jobs:
|
||||
repository: 'openvinotoolkit/testdata'
|
||||
path: ${{ env.MODELS_PATH }}
|
||||
lfs: 'true'
|
||||
ref: 'master'
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
@ -230,6 +231,7 @@ jobs:
|
||||
repository: 'openvinotoolkit/testdata'
|
||||
path: ${{ env.MODELS_PATH }}
|
||||
lfs: 'true'
|
||||
ref: 'master'
|
||||
|
||||
- name: Download selective build statistics package
|
||||
uses: actions/download-artifact@v3
|
||||
|
143
.github/workflows/linux_cuda.yml
vendored
143
.github/workflows/linux_cuda.yml
vendored
@ -1,143 +0,0 @@
|
||||
name: Linux NVIDIA Plugin (Ubuntu 20.04)
|
||||
on:
|
||||
workflow_dispatch:
|
||||
pull_request:
|
||||
paths-ignore:
|
||||
- '**/docs/**'
|
||||
- 'docs/**'
|
||||
- '**/**.md'
|
||||
- '**.md'
|
||||
- '**/layer_tests_summary/**'
|
||||
- '**/conformance/**'
|
||||
push:
|
||||
paths-ignore:
|
||||
- '**/docs/**'
|
||||
- 'docs/**'
|
||||
- '**/**.md'
|
||||
- '**.md'
|
||||
- '**/layer_tests_summary/**'
|
||||
- '**/conformance/**'
|
||||
branches:
|
||||
- master
|
||||
|
||||
concurrency:
|
||||
# github.ref is not unique in post-commit
|
||||
group: ${{ github.event_name == 'push' && github.run_id || github.ref }}-linux-nvidia
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
Build:
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: aks-linux-16-cores
|
||||
container:
|
||||
image: openvinogithubactions.azurecr.io/dockerhub/nvidia/cuda:11.8.0-runtime-ubuntu20.04
|
||||
volumes:
|
||||
- /mount/caches:/mount/caches
|
||||
env:
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
CMAKE_GENERATOR: 'Ninja Multi-Config'
|
||||
CMAKE_CUDA_COMPILER_LAUNCHER: ccache
|
||||
CMAKE_CXX_COMPILER_LAUNCHER: ccache
|
||||
CMAKE_C_COMPILER_LAUNCHER: ccache
|
||||
OPENVINO_REPO: /__w/openvino/openvino/openvino
|
||||
OPENVINO_CONTRIB_REPO: /__w/openvino/openvino/openvino_contrib
|
||||
OV_BUILD_DIR: /__w/openvino/openvino/openvino_build
|
||||
NVIDIA_BUILD_DIR: /__w/openvino/openvino/nvidia_plugin_build
|
||||
DEBIAN_FRONTEND: 'noninteractive'
|
||||
CCACHE_DIR: /mount/caches/ccache/ubuntu20_x86_64_Release
|
||||
CCACHE_TEMPDIR: /__w/openvino/openvino/ccache_temp
|
||||
CCACHE_MAXSIZE: 50G
|
||||
steps:
|
||||
|
||||
- name: Install Prerequisites
|
||||
run: |
|
||||
apt update
|
||||
apt install -y git curl git git-lfs unzip wget
|
||||
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: ${{ env.OPENVINO_REPO }}
|
||||
submodules: 'true'
|
||||
|
||||
- name: Clone OpenVINO Contrib
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'openvinotoolkit/openvino_contrib'
|
||||
path: ${{ env.OPENVINO_CONTRIB_REPO }}
|
||||
ref: 'master'
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
#
|
||||
|
||||
- name: Install build dependencies
|
||||
run: |
|
||||
${OPENVINO_REPO}/install_build_dependencies.sh
|
||||
|
||||
apt -y --no-install-recommends install unzip wget software-properties-common
|
||||
|
||||
- name: Install CUDA
|
||||
run: |
|
||||
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin
|
||||
mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600
|
||||
|
||||
apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/3bf863cc.pub
|
||||
add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/ /"
|
||||
apt update
|
||||
apt install -y \
|
||||
libcudnn8=8.9.4.*-1+cuda11.8 \
|
||||
libcudnn8-dev=8.9.4.*-1+cuda11.8 \
|
||||
libcudnn8-samples=8.9.4.*-1+cuda11.8 \
|
||||
cuda-runtime-11-8 \
|
||||
cuda-11-8 \
|
||||
libcutensor1=1.6.1.5-1 \
|
||||
libcutensor-dev=1.6.1.5-1 \
|
||||
cuda-drivers=520.61.05-1
|
||||
|
||||
#
|
||||
# Build
|
||||
#
|
||||
|
||||
- name: CMake configure
|
||||
run: |
|
||||
cmake \
|
||||
-G "${{ env.CMAKE_GENERATOR }}" \
|
||||
-DENABLE_CPPLINT=OFF \
|
||||
-DENABLE_NCC_STYLE=OFF \
|
||||
-DENABLE_SYSTEM_PUGIXML=ON \
|
||||
-DENABLE_SYSTEM_OPENCL=ON \
|
||||
-DENABLE_STRICT_DEPENDENCIES=OFF \
|
||||
-DCMAKE_BUILD_TYPE=${{ env.CMAKE_BUILD_TYPE }} \
|
||||
-DENABLE_INTEL_CPU=OFF \
|
||||
-DENABLE_INTEL_GPU=OFF \
|
||||
-DENABLE_INTEL_GNA=OFF \
|
||||
-DENABLE_OV_TF_FRONTEND=OFF \
|
||||
-DENABLE_OV_TF_LITE_FRONTEND=OFF \
|
||||
-DENABLE_OV_PADDLE_FRONTEND=OFF \
|
||||
-DENABLE_OV_PYTORCH_FRONTEND=OFF \
|
||||
-DENABLE_OV_ONNX_FRONTEND=OFF \
|
||||
-DENABLE_PYTHON=OFF \
|
||||
-DENABLE_TESTS=ON \
|
||||
-DCPACK_GENERATOR=TGZ \
|
||||
-DCMAKE_COMPILE_WARNING_AS_ERROR=ON \
|
||||
-S ${OPENVINO_REPO} \
|
||||
-B ${OV_BUILD_DIR}
|
||||
|
||||
- name: Build - OpenVINO
|
||||
run: |
|
||||
cmake --build ${OV_BUILD_DIR} --parallel --config ${{ env.CMAKE_BUILD_TYPE }} --verbose --target ov_dev_targets
|
||||
|
||||
- name: Cmake & Build - NVIDIA Plugin
|
||||
run: |
|
||||
cmake \
|
||||
-DOpenVINODeveloperPackage_DIR=${OV_BUILD_DIR} \
|
||||
-DCMAKE_COMPILE_WARNING_AS_ERROR=OFF \
|
||||
-S ${OPENVINO_CONTRIB_REPO}/modules/nvidia_plugin \
|
||||
-B ${NVIDIA_BUILD_DIR}
|
||||
cmake --build ${NVIDIA_BUILD_DIR} --parallel --config ${{ env.CMAKE_BUILD_TYPE }} --verbose -- ov_nvidia_func_tests ov_nvidia_unit_tests
|
||||
|
||||
- name: Show ccache stats
|
||||
run: ccache --show-stats
|
1
.github/workflows/windows.yml
vendored
1
.github/workflows/windows.yml
vendored
@ -56,6 +56,7 @@ jobs:
|
||||
with:
|
||||
repository: 'openvinotoolkit/openvino_contrib'
|
||||
path: 'openvino_contrib'
|
||||
ref: 'master'
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
|
@ -67,6 +67,7 @@ jobs:
|
||||
repository: 'openvinotoolkit/testdata'
|
||||
path: 'testdata'
|
||||
lfs: 'true'
|
||||
ref: 'master'
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
|
@ -81,54 +81,55 @@ file(REMOVE "${CMAKE_BINARY_DIR}/ngraphTargets.cmake")
|
||||
file(REMOVE "${CMAKE_BINARY_DIR}/InferenceEngineTargets.cmake")
|
||||
file(REMOVE "${CMAKE_BINARY_DIR}/OpenVINOTargets.cmake")
|
||||
|
||||
# remove exported developer targets to force its regeneration
|
||||
macro(ov_clean_dev_targets)
|
||||
foreach(component IN LISTS openvino_export_components)
|
||||
file(REMOVE "${CMAKE_BINARY_DIR}/${component}_dev_targets.cmake")
|
||||
file(REMOVE "${CMAKE_BINARY_DIR}/ov_${component}_dev_targets.cmake")
|
||||
unset(${component} CACHE)
|
||||
endforeach()
|
||||
unset(openvino_export_components CACHE)
|
||||
# remove exported developer targets files to force its regeneration
|
||||
macro(ov_clean_developer_package_targets)
|
||||
file(REMOVE "${CMAKE_BINARY_DIR}/inference_engine_developer_package_targets.cmake")
|
||||
file(REMOVE "${CMAKE_BINARY_DIR}/openvino_developer_package_targets.cmake")
|
||||
unset(_OPENVINO_DEVELOPER_PACKAGE_TARGETS CACHE)
|
||||
unset(openvino_installed_targets CACHE)
|
||||
endmacro()
|
||||
ov_clean_dev_targets()
|
||||
ov_clean_developer_package_targets()
|
||||
|
||||
function(ov_developer_package_export_targets)
|
||||
cmake_parse_arguments(EXPORT "" "TARGET;INSTALL_DESTIONATION" "INSTALL_INCLUDE_DIRECTORIES" ${ARGN})
|
||||
|
||||
# to allow exporting of aliased targets with the original names
|
||||
if(TARGET "${EXPORT_TARGET}")
|
||||
get_target_property(original_name ${EXPORT_TARGET} ALIASED_TARGET)
|
||||
if(TARGET "${original_name}")
|
||||
# replace target with its original name
|
||||
set(EXPORT_TARGET ${original_name})
|
||||
endif()
|
||||
list(APPEND _OPENVINO_DEVELOPER_PACKAGE_TARGETS ${EXPORT_TARGET})
|
||||
|
||||
if(EXPORT_INSTALL_INCLUDE_DIRECTORIES)
|
||||
if(NOT EXPORT_INSTALL_DESTIONATION)
|
||||
set(EXPORT_INSTALL_DESTIONATION "developer_package/include/${EXPORT_TARGET}")
|
||||
endif()
|
||||
|
||||
target_include_directories(${EXPORT_TARGET} INTERFACE "$<INSTALL_INTERFACE:${EXPORT_INSTALL_DESTIONATION}>")
|
||||
|
||||
foreach(install_dir IN LISTS EXPORT_INSTALL_INCLUDE_DIRECTORIES)
|
||||
install(DIRECTORY "${install_dir}"
|
||||
DESTINATION "${EXPORT_INSTALL_DESTIONATION}"
|
||||
COMPONENT developer_package EXCLUDE_FROM_ALL)
|
||||
endforeach()
|
||||
endif()
|
||||
else()
|
||||
message(FATAL_ERROR "Internal error: ${target_name} does not represent a cmake target")
|
||||
endif()
|
||||
|
||||
list(REMOVE_DUPLICATES _OPENVINO_DEVELOPER_PACKAGE_TARGETS)
|
||||
set(_OPENVINO_DEVELOPER_PACKAGE_TARGETS "${_OPENVINO_DEVELOPER_PACKAGE_TARGETS}" CACHE INTERNAL
|
||||
"A list of OpenVINO Developer Package exported targets" FORCE)
|
||||
endfunction()
|
||||
|
||||
#
|
||||
# Build
|
||||
#
|
||||
|
||||
function(openvino_developer_export_targets)
|
||||
cmake_parse_arguments(EXPORT "" "COMPONENT" "TARGETS" ${ARGN})
|
||||
|
||||
if(EXPORT_UNPARSED_ARGUMENTS)
|
||||
message(FATAL_ERROR "openvino_developer_export_targets has unparsed arguments: ${EXPORT_UNPARSED_ARGUMENTS}")
|
||||
endif()
|
||||
|
||||
set(${EXPORT_COMPONENT} "${${EXPORT_COMPONENT}};${EXPORT_TARGETS}")
|
||||
|
||||
# to allow exporting of aliased targets with the original names
|
||||
foreach(target_name IN LISTS ${EXPORT_COMPONENT})
|
||||
if(TARGET "${target_name}")
|
||||
get_target_property(original_name ${target_name} ALIASED_TARGET)
|
||||
if(TARGET "${original_name}")
|
||||
list(REMOVE_ITEM ${EXPORT_COMPONENT} ${target_name})
|
||||
list(APPEND ${EXPORT_COMPONENT} ${original_name})
|
||||
endif()
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
list(REMOVE_DUPLICATES ${EXPORT_COMPONENT})
|
||||
set(${EXPORT_COMPONENT} "${${EXPORT_COMPONENT}}" CACHE INTERNAL
|
||||
"A list of OpenVINO ${EXPORT_COMPONENT} exported targets" FORCE)
|
||||
|
||||
list(APPEND openvino_export_components ${EXPORT_COMPONENT})
|
||||
list(REMOVE_DUPLICATES openvino_export_components)
|
||||
set(openvino_export_components "${openvino_export_components}" CACHE INTERNAL
|
||||
"A list of OpenVINO exported components" FORCE)
|
||||
endfunction()
|
||||
|
||||
# add target with processed tests model zoo
|
||||
if(ENABLE_TESTS)
|
||||
# add target with processed tests model zoo
|
||||
include(cmake/test_model_zoo.cmake)
|
||||
endif()
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
cmake_policy(SET CMP0054 NEW)
|
||||
|
||||
# TODO: fix it, outside of source dir MO cannot find TBB dependency
|
||||
set_temp_directory(TEMP "${CMAKE_SOURCE_DIR}")
|
||||
ov_set_temp_directory(TEMP "${CMAKE_SOURCE_DIR}")
|
||||
|
||||
## Intel OMP package
|
||||
if(THREADING STREQUAL "OMP")
|
||||
@ -71,12 +71,16 @@ function(ov_download_tbb)
|
||||
|
||||
if(NOT DEFINED ENV{TBBROOT} AND (DEFINED ENV{TBB_DIR} OR DEFINED TBB_DIR))
|
||||
if(DEFINED ENV{TBB_DIR})
|
||||
set(TEMP_ROOT $ENV{TBB_DIR})
|
||||
elseif (DEFINED TBB_DIR)
|
||||
set(TEMP_ROOT ${TBB_DIR})
|
||||
set(TBB_DIR "$ENV{TBB_DIR}")
|
||||
endif()
|
||||
set(TEMP_ROOT "${TBB_DIR}")
|
||||
while(NOT EXISTS "${TEMP_ROOT}/include")
|
||||
get_filename_component(TEMP_ROOT ${TEMP_ROOT} PATH)
|
||||
get_filename_component(TEMP_ROOT_PARENT ${TEMP_ROOT} PATH)
|
||||
if(TEMP_ROOT_PARENT STREQUAL TEMP_ROOT)
|
||||
# to prevent recursion
|
||||
message(FATAL_ERROR "${TBB_DIR} does not contain 'include' folder. Please, unset TBB_DIR")
|
||||
endif()
|
||||
set(TEMP_ROOT "${TEMP_ROOT_PARENT}")
|
||||
endwhile()
|
||||
set(TBBROOT ${TEMP_ROOT})
|
||||
endif()
|
||||
|
@ -27,11 +27,12 @@ endmacro()
|
||||
set(OLD_CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH})
|
||||
set(CMAKE_MODULE_PATH "${OpenVINODeveloperScripts_DIR}")
|
||||
|
||||
function(set_ci_build_number)
|
||||
set(repo_root "${CMAKE_SOURCE_DIR}")
|
||||
function(ov_set_ci_build_number)
|
||||
include(version)
|
||||
foreach(var CI_BUILD_NUMBER OpenVINO_VERSION OpenVINO_SOVERSION OpenVINO_VERSION_SUFFIX OpenVINO_VERSION_BUILD
|
||||
OpenVINO_VERSION_MAJOR OpenVINO_VERSION_MINOR OpenVINO_VERSION_PATCH)
|
||||
ov_parse_ci_build_number("${CMAKE_SOURCE_DIR}")
|
||||
|
||||
foreach(var CI_BUILD_NUMBER OpenVINO_VERSION OpenVINO_SOVERSION OpenVINO_VERSION_SUFFIX
|
||||
OpenVINO_VERSION_MAJOR OpenVINO_VERSION_MINOR OpenVINO_VERSION_PATCH OpenVINO_VERSION_BUILD)
|
||||
if(NOT DEFINED ${var})
|
||||
message(FATAL_ERROR "${var} version component is not defined")
|
||||
endif()
|
||||
@ -44,7 +45,7 @@ ov_set_if_not_defined(Python3_FIND_STRATEGY LOCATION)
|
||||
|
||||
include(features)
|
||||
|
||||
set_ci_build_number()
|
||||
ov_set_ci_build_number()
|
||||
|
||||
#
|
||||
# Detect target
|
||||
@ -139,10 +140,13 @@ endif()
|
||||
|
||||
# allow to override default OUTPUT_ROOT root
|
||||
if(NOT DEFINED OUTPUT_ROOT)
|
||||
if(NOT DEFINED OpenVINO_SOURCE_DIR)
|
||||
message(FATAL_ERROR "OpenVINO_SOURCE_DIR is not defined")
|
||||
if(DEFINED OpenVINO_SOURCE_DIR)
|
||||
# For BW compatiblity, when extra modules are built separately
|
||||
# but still write its artifacts to OpenVINO source directory
|
||||
set(OUTPUT_ROOT ${OpenVINO_SOURCE_DIR})
|
||||
else()
|
||||
set(OUTPUT_ROOT ${CMAKE_SOURCE_DIR})
|
||||
endif()
|
||||
set(OUTPUT_ROOT ${OpenVINO_SOURCE_DIR})
|
||||
endif()
|
||||
|
||||
# Enable postfixes for Debug/Release builds
|
||||
|
@ -9,7 +9,6 @@ ov_add_target(
|
||||
NAME core_lib
|
||||
ADD_CPPLINT
|
||||
ADD_CLANG_FORMAT
|
||||
DEVELOPER_PACKAGE <component>
|
||||
TYPE <SHARED / STATIC / EXECUTABLE>
|
||||
ROOT ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
ADDITIONAL_SOURCE_DIRS
|
||||
@ -44,9 +43,6 @@ function(ov_add_target)
|
||||
NAME # name of target
|
||||
ROOT # root directory to be used for recursive search of source files
|
||||
)
|
||||
set(oneValueOptionalArgs
|
||||
DEVELOPER_PACKAGE # Enables exporting of the target through the developer package
|
||||
)
|
||||
set(multiValueArgs
|
||||
INCLUDES # Extra include directories
|
||||
LINK_LIBRARIES # Link libraries (in form of target name or file name)
|
||||
@ -58,7 +54,7 @@ function(ov_add_target)
|
||||
LINK_LIBRARIES_WHOLE_ARCHIVE # list of static libraries to link, each object file should be used and not discarded
|
||||
LINK_FLAGS # list of extra commands to linker
|
||||
)
|
||||
cmake_parse_arguments(ARG "${options}" "${oneValueRequiredArgs};${oneValueOptionalArgs}" "${multiValueArgs}" ${ARGN} )
|
||||
cmake_parse_arguments(ARG "${options}" "${oneValueRequiredArgs}" "${multiValueArgs}" ${ARGN} )
|
||||
|
||||
# sanity checks
|
||||
foreach(argName IN LISTS oneValueRequiredArgs)
|
||||
@ -128,11 +124,6 @@ function(ov_add_target)
|
||||
# code style
|
||||
ov_add_clang_format_target(${ARG_NAME}_clang FOR_TARGETS ${ARG_NAME})
|
||||
endif()
|
||||
if (ARG_DEVELOPER_PACKAGE)
|
||||
# developer package
|
||||
openvino_developer_export_targets(COMPONENT ${ARG_DEVELOPER_PACKAGE}
|
||||
TARGETS ${ARG_NAME})
|
||||
endif()
|
||||
if(WIN32)
|
||||
# Provide default compile pdb name equal to target name
|
||||
set_target_properties(${ARG_NAME} PROPERTIES COMPILE_PDB_NAME ${ARG_NAME})
|
||||
|
@ -329,15 +329,15 @@ endif()
|
||||
|
||||
file(RELATIVE_PATH OV_RELATIVE_BIN_PATH ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_SOURCE_DIR})
|
||||
|
||||
if(${CMAKE_VERSION} VERSION_LESS "3.20")
|
||||
file(TO_NATIVE_PATH ${OpenVINO_SOURCE_DIR} OV_NATIVE_PROJECT_ROOT_DIR)
|
||||
if(CMAKE_VERSION VERSION_LESS 3.20)
|
||||
file(TO_NATIVE_PATH ${CMAKE_SOURCE_DIR} OV_NATIVE_PROJECT_ROOT_DIR)
|
||||
file(TO_NATIVE_PATH ${OV_RELATIVE_BIN_PATH} NATIVE_OV_RELATIVE_BIN_PATH)
|
||||
else()
|
||||
cmake_path(NATIVE_PATH OpenVINO_SOURCE_DIR OV_NATIVE_PROJECT_ROOT_DIR)
|
||||
cmake_path(NATIVE_PATH CMAKE_SOURCE_DIR OV_NATIVE_PROJECT_ROOT_DIR)
|
||||
cmake_path(NATIVE_PATH OV_RELATIVE_BIN_PATH NATIVE_OV_RELATIVE_BIN_PATH)
|
||||
endif()
|
||||
|
||||
file(RELATIVE_PATH OV_NATIVE_PARENT_PROJECT_ROOT_DIR "${OpenVINO_SOURCE_DIR}/.." ${OpenVINO_SOURCE_DIR})
|
||||
file(RELATIVE_PATH OV_NATIVE_PARENT_PROJECT_ROOT_DIR "${CMAKE_SOURCE_DIR}/.." ${CMAKE_SOURCE_DIR})
|
||||
|
||||
if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
|
||||
#
|
||||
@ -392,7 +392,7 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
|
||||
if(NOT DEFINED ENV{GITHUB_ACTIONS})
|
||||
add_compile_options(
|
||||
"$<$<COMPILE_LANGUAGE:CXX>:/d1trimfile:${OV_NATIVE_PROJECT_ROOT_DIR}\\>"
|
||||
"$<$<COMPILE_LANGUAGE:CXX>:/d1trimfile:${OpenVINO_SOURCE_DIR}/>")
|
||||
"$<$<COMPILE_LANGUAGE:CXX>:/d1trimfile:${CMAKE_SOURCE_DIR}/>")
|
||||
endif()
|
||||
|
||||
#
|
||||
|
@ -43,7 +43,7 @@ macro(ov_option_enum variable description value)
|
||||
endmacro()
|
||||
|
||||
function (ov_print_enabled_features)
|
||||
if(NOT COMMAND set_ci_build_number)
|
||||
if(NOT COMMAND ov_set_ci_build_number)
|
||||
message(FATAL_ERROR "CI_BUILD_NUMBER is not set yet")
|
||||
endif()
|
||||
|
||||
|
@ -5,6 +5,8 @@
|
||||
macro(ov_nsis_specific_settings)
|
||||
# installation directory
|
||||
set(CPACK_PACKAGE_INSTALL_DIRECTORY "Intel")
|
||||
# License to be embedded in the installer
|
||||
set(CPACK_RESOURCE_FILE_LICENSE "${OpenVINO_SOURCE_DIR}/LICENSE")
|
||||
|
||||
# TODO: provide icons
|
||||
# set(CPACK_NSIS_MUI_ICON "")
|
||||
|
@ -193,8 +193,6 @@ macro(ov_cpack)
|
||||
set(CPACK_PACKAGE_CONTACT "OpenVINO Developers <openvino@intel.com>")
|
||||
set(CPACK_VERBATIM_VARIABLES ON)
|
||||
set(CPACK_COMPONENTS_ALL ${ARGN})
|
||||
# TODO: set proper license file for Windows installer
|
||||
set(CPACK_RESOURCE_FILE_LICENSE "${OpenVINO_SOURCE_DIR}/LICENSE")
|
||||
|
||||
# default permissions for directories creation
|
||||
set(CMAKE_INSTALL_DEFAULT_DIRECTORY_PERMISSIONS
|
||||
|
@ -4,50 +4,51 @@
|
||||
|
||||
find_package(Git QUIET)
|
||||
|
||||
function (branchName VAR)
|
||||
if(NOT DEFINED repo_root)
|
||||
message(FATAL_ERROR "repo_root is not defined")
|
||||
endif()
|
||||
function(ov_branch_name VAR REPO_ROOT)
|
||||
if(GIT_FOUND)
|
||||
execute_process(
|
||||
COMMAND ${GIT_EXECUTABLE} rev-parse --abbrev-ref HEAD
|
||||
WORKING_DIRECTORY ${repo_root}
|
||||
WORKING_DIRECTORY ${REPO_ROOT}
|
||||
OUTPUT_VARIABLE GIT_BRANCH
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
set (${VAR} ${GIT_BRANCH} PARENT_SCOPE)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
function (commitHash VAR)
|
||||
if(NOT DEFINED repo_root)
|
||||
message(FATAL_ERROR "repo_root is not defined")
|
||||
endif()
|
||||
function(ov_commit_hash VAR REPO_ROOT)
|
||||
if(GIT_FOUND)
|
||||
execute_process(
|
||||
COMMAND ${GIT_EXECUTABLE} rev-parse --short=11 HEAD
|
||||
WORKING_DIRECTORY ${repo_root}
|
||||
WORKING_DIRECTORY ${REPO_ROOT}
|
||||
OUTPUT_VARIABLE GIT_COMMIT_HASH
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
set (${VAR} ${GIT_COMMIT_HASH} PARENT_SCOPE)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
function (commitNumber VAR)
|
||||
if(NOT DEFINED repo_root)
|
||||
message(FATAL_ERROR "repo_root is not defined")
|
||||
endif()
|
||||
function(ov_commit_number VAR REPO_ROOT)
|
||||
if(GIT_FOUND)
|
||||
execute_process(
|
||||
COMMAND ${GIT_EXECUTABLE} rev-list --count --first-parent HEAD
|
||||
WORKING_DIRECTORY ${repo_root}
|
||||
WORKING_DIRECTORY ${REPO_ROOT}
|
||||
OUTPUT_VARIABLE GIT_COMMIT_NUMBER
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
set (${VAR} ${GIT_COMMIT_NUMBER} PARENT_SCOPE)
|
||||
else()
|
||||
# set zeros since git is not available
|
||||
set (${VAR} "000" PARENT_SCOPE)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
macro(ov_parse_ci_build_number)
|
||||
set(OpenVINO_VERSION_BUILD 000)
|
||||
macro(ov_parse_ci_build_number repo_root)
|
||||
# provides OpenVINO version
|
||||
# 1. If CI_BUILD_NUMBER is defined, parses this information
|
||||
# 2. Otherwise, either:
|
||||
# - parses openvino/core/version.hpp
|
||||
# - takes from OpenVINOConfig-version.cmake in case of relocatable Developer package
|
||||
if (DEFINED ENV{CI_BUILD_NUMBER})
|
||||
set(CI_BUILD_NUMBER $ENV{CI_BUILD_NUMBER})
|
||||
endif()
|
||||
|
||||
if(CI_BUILD_NUMBER MATCHES "^([0-9]+)\.([0-9]+)\.([0-9]+)\-([0-9]+)\-.*")
|
||||
set(OpenVINO_VERSION_MAJOR ${CMAKE_MATCH_1})
|
||||
@ -63,12 +64,9 @@ macro(ov_parse_ci_build_number)
|
||||
message(FATAL_ERROR "Failed to parse CI_BUILD_NUMBER which is ${CI_BUILD_NUMBER}")
|
||||
endif()
|
||||
|
||||
if(NOT DEFINED repo_root)
|
||||
message(FATAL_ERROR "repo_root is not defined")
|
||||
endif()
|
||||
|
||||
macro(ov_get_hpp_version)
|
||||
function(ov_compare_version_with_headers)
|
||||
if(NOT DEFINED OpenVINO_SOURCE_DIR)
|
||||
# if we are not in OpenVINO source tree, let's ignore this comparison
|
||||
return()
|
||||
endif()
|
||||
|
||||
@ -101,30 +99,29 @@ macro(ov_parse_ci_build_number)
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
# detect commit number
|
||||
commitNumber(OpenVINO_VERSION_BUILD_HPP)
|
||||
if(OpenVINO_VERSION_BUILD STREQUAL "000" AND DEFINED OpenVINO_VERSION_BUILD_HPP)
|
||||
set(OpenVINO_VERSION_BUILD "${OpenVINO_VERSION_BUILD_HPP}")
|
||||
else()
|
||||
set(OpenVINO_VERSION_BUILD_HPP "${OpenVINO_VERSION_BUILD}")
|
||||
endif()
|
||||
|
||||
set(ov_hpp_version_is_found ON)
|
||||
endmacro()
|
||||
|
||||
# detect OpenVINO version via openvino/core/version.hpp and ie_version.hpp
|
||||
ov_get_hpp_version()
|
||||
|
||||
if(ov_hpp_version_is_found)
|
||||
foreach(var OpenVINO_VERSION_MAJOR OpenVINO_VERSION_MINOR OpenVINO_VERSION_PATCH OpenVINO_VERSION_BUILD)
|
||||
foreach(var OpenVINO_VERSION_MAJOR OpenVINO_VERSION_MINOR OpenVINO_VERSION_PATCH)
|
||||
if(DEFINED ${var} AND NOT ${var} EQUAL ${var}_HPP)
|
||||
message(FATAL_ERROR "${var} parsed from CI_BUILD_NUMBER (${${var}}) \
|
||||
and from openvino/core/version.hpp (${${var}_HPP}) are different")
|
||||
else()
|
||||
# CI_BUILD_NUMBER is not defined well, take info from openvino/core/version.hpp as a baseline
|
||||
set(${var} ${${var}_HPP})
|
||||
set(${var} ${${var}_HPP} PARENT_SCOPE)
|
||||
endif()
|
||||
endforeach()
|
||||
endfunction()
|
||||
|
||||
# detect OpenVINO version via openvino/core/version.hpp and ie_version.hpp
|
||||
ov_compare_version_with_headers()
|
||||
|
||||
# detect commit number
|
||||
ov_commit_number(OpenVINO_VERSION_BUILD_FROM_GIT "${repo_root}")
|
||||
|
||||
if(OpenVINO_VERSION_BUILD AND NOT OpenVINO_VERSION_BUILD STREQUAL OpenVINO_VERSION_BUILD_FROM_GIT)
|
||||
# TODO: replace with FATAL_ERROR once NPU version will be discussed
|
||||
message(WARNING "OpenVINO_VERSION_BUILD parsed from CI_BUILD_NUMBER (${OpenVINO_VERSION_BUILD}) \
|
||||
and determined by git (${OpenVINO_VERSION_BUILD_FROM_GIT}) are different")
|
||||
else()
|
||||
set(OpenVINO_VERSION_BUILD "${OpenVINO_VERSION_BUILD_FROM_GIT}")
|
||||
endif()
|
||||
|
||||
set(OpenVINO_SOVERSION "${OpenVINO_VERSION_MAJOR}${OpenVINO_VERSION_MINOR}${OpenVINO_VERSION_PATCH}")
|
||||
@ -140,8 +137,8 @@ macro(ov_parse_ci_build_number)
|
||||
if(NOT the_whole_version_is_defined_by_ci)
|
||||
# create CI_BUILD_NUMBER
|
||||
|
||||
branchName(GIT_BRANCH)
|
||||
commitHash(GIT_COMMIT_HASH)
|
||||
ov_branch_name(GIT_BRANCH "${repo_root}")
|
||||
ov_commit_hash(GIT_COMMIT_HASH "${repo_root}")
|
||||
|
||||
if(NOT GIT_BRANCH STREQUAL "master")
|
||||
set(GIT_BRANCH_POSTFIX "-${GIT_BRANCH}")
|
||||
@ -157,14 +154,6 @@ macro(ov_parse_ci_build_number)
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
# provides OpenVINO version
|
||||
# 1. If CI_BUILD_NUMBER is defined, parses this information
|
||||
# 2. Otherwise, parses openvino/core/version.hpp
|
||||
if (DEFINED ENV{CI_BUILD_NUMBER})
|
||||
set(CI_BUILD_NUMBER $ENV{CI_BUILD_NUMBER})
|
||||
endif()
|
||||
ov_parse_ci_build_number()
|
||||
|
||||
macro (addVersionDefines FILE)
|
||||
message(WARNING "'addVersionDefines' is deprecated. Please, use 'ov_add_version_defines'")
|
||||
|
||||
|
@ -9,13 +9,10 @@ function(ie_generate_dev_package_config)
|
||||
set(OpenCV_FOUND OFF)
|
||||
endif()
|
||||
|
||||
foreach(component IN LISTS openvino_export_components)
|
||||
# export all targets with prefix and use them during extra modules build
|
||||
export(TARGETS ${${component}} NAMESPACE IE::
|
||||
APPEND FILE "${CMAKE_BINARY_DIR}/${component}_dev_targets.cmake")
|
||||
list(APPEND all_dev_targets ${${component}})
|
||||
endforeach()
|
||||
add_custom_target(ie_dev_targets DEPENDS ${all_dev_targets})
|
||||
# export all targets with prefix and use them during extra modules build
|
||||
export(TARGETS ${_OPENVINO_DEVELOPER_PACKAGE_TARGETS} NAMESPACE IE::
|
||||
APPEND FILE "${CMAKE_BINARY_DIR}/inference_engine_developer_package_targets.cmake")
|
||||
add_custom_target(ie_dev_targets DEPENDS ${_OPENVINO_DEVELOPER_PACKAGE_TARGETS})
|
||||
|
||||
set(PATH_VARS "OpenVINO_SOURCE_DIR")
|
||||
if(ENABLE_SAMPLES OR ENABLE_TESTS)
|
||||
@ -44,20 +41,20 @@ function(ov_generate_dev_package_config)
|
||||
set(OpenCV_FOUND OFF)
|
||||
endif()
|
||||
|
||||
foreach(component IN LISTS openvino_export_components)
|
||||
# filter out targets which are installed by OpenVINOConfig.cmake static build case
|
||||
set(exported_targets)
|
||||
foreach(target IN LISTS ${component})
|
||||
if(NOT target IN_LIST openvino_installed_targets)
|
||||
list(APPEND exported_targets ${target})
|
||||
endif()
|
||||
endforeach()
|
||||
# export all developer targets with prefix and use them during extra modules build
|
||||
export(TARGETS ${exported_targets} NAMESPACE openvino::
|
||||
APPEND FILE "${CMAKE_BINARY_DIR}/ov_${component}_dev_targets.cmake")
|
||||
list(APPEND all_dev_targets ${${component}})
|
||||
endforeach()
|
||||
add_custom_target(ov_dev_targets DEPENDS ${all_dev_targets})
|
||||
# create a helper target to build all developer package targets
|
||||
add_custom_target(ov_dev_targets DEPENDS ${_OPENVINO_DEVELOPER_PACKAGE_TARGETS})
|
||||
|
||||
# filter out targets which are installed by OpenVINOConfig.cmake static build case
|
||||
if(openvino_installed_targets)
|
||||
list(REMOVE_ITEM _OPENVINO_DEVELOPER_PACKAGE_TARGETS ${openvino_installed_targets})
|
||||
endif()
|
||||
# export all developer targets with prefix and use them during extra modules build
|
||||
export(TARGETS ${_OPENVINO_DEVELOPER_PACKAGE_TARGETS} NAMESPACE openvino::
|
||||
APPEND FILE "${CMAKE_BINARY_DIR}/openvino_developer_package_targets.cmake")
|
||||
|
||||
#
|
||||
# OpenVINODeveloperPackageConfig.cmake for build tree
|
||||
#
|
||||
|
||||
set(PATH_VARS "OpenVINO_SOURCE_DIR")
|
||||
if(ENABLE_SAMPLES OR ENABLE_TESTS)
|
||||
@ -77,38 +74,91 @@ function(ov_generate_dev_package_config)
|
||||
configure_file("${OpenVINO_SOURCE_DIR}/cmake/templates/OpenVINOConfig-version.cmake.in"
|
||||
"${CMAKE_BINARY_DIR}/OpenVINODeveloperPackageConfig-version.cmake"
|
||||
@ONLY)
|
||||
|
||||
#
|
||||
# OpenVINODeveloperPackageConfig.cmake for installation tree
|
||||
#
|
||||
|
||||
set(DEV_PACKAGE_ROOT_DIR developer_package)
|
||||
set(DEV_PACKAGE_CMAKE_DIR ${DEV_PACKAGE_ROOT_DIR}/cmake)
|
||||
set(DEVELOPER_PACKAGE_COMPONENT developer_package)
|
||||
set(DEVELOPER_PACKAGE_EXPORT_SET OpenVINODeveloperTargets)
|
||||
|
||||
# create and install main developer package config files
|
||||
configure_package_config_file("${OpenVINO_SOURCE_DIR}/cmake/templates/OpenVINODeveloperPackageConfigRelocatable.cmake.in"
|
||||
"${OpenVINO_BINARY_DIR}/share/OpenVINODeveloperPackageConfig.cmake"
|
||||
INSTALL_DESTINATION ${DEV_PACKAGE_CMAKE_DIR}
|
||||
NO_CHECK_REQUIRED_COMPONENTS_MACRO)
|
||||
|
||||
configure_file("${OpenVINO_SOURCE_DIR}/cmake/templates/OpenVINOConfig-version.cmake.in"
|
||||
"${OpenVINO_BINARY_DIR}/share/OpenVINODeveloperPackageConfig-version.cmake"
|
||||
@ONLY)
|
||||
|
||||
install(FILES "${OpenVINO_BINARY_DIR}/share/OpenVINODeveloperPackageConfig.cmake"
|
||||
"${OpenVINO_BINARY_DIR}/share/OpenVINODeveloperPackageConfig-version.cmake"
|
||||
DESTINATION ${DEV_PACKAGE_CMAKE_DIR}
|
||||
COMPONENT ${DEVELOPER_PACKAGE_COMPONENT}
|
||||
EXCLUDE_FROM_ALL)
|
||||
|
||||
# Install whole 'cmake/developer_package' folder
|
||||
install(DIRECTORY "${OpenVINODeveloperScripts_DIR}/"
|
||||
DESTINATION "${DEV_PACKAGE_CMAKE_DIR}"
|
||||
COMPONENT ${DEVELOPER_PACKAGE_COMPONENT}
|
||||
EXCLUDE_FROM_ALL)
|
||||
|
||||
# Install CMakeLists.txt to read cache variables from
|
||||
install(FILES "${OpenVINO_BINARY_DIR}/CMakeCache.txt"
|
||||
DESTINATION ${DEV_PACKAGE_CMAKE_DIR}
|
||||
COMPONENT ${DEVELOPER_PACKAGE_COMPONENT}
|
||||
EXCLUDE_FROM_ALL)
|
||||
|
||||
# install developer package targets
|
||||
install(TARGETS ${_OPENVINO_DEVELOPER_PACKAGE_TARGETS} EXPORT ${DEVELOPER_PACKAGE_EXPORT_SET}
|
||||
RUNTIME DESTINATION ${DEV_PACKAGE_ROOT_DIR}/bin COMPONENT ${DEVELOPER_PACKAGE_COMPONENT} EXCLUDE_FROM_ALL
|
||||
ARCHIVE DESTINATION ${DEV_PACKAGE_ROOT_DIR}/lib COMPONENT ${DEVELOPER_PACKAGE_COMPONENT} EXCLUDE_FROM_ALL
|
||||
LIBRARY DESTINATION ${DEV_PACKAGE_ROOT_DIR}/lib COMPONENT ${DEVELOPER_PACKAGE_COMPONENT} EXCLUDE_FROM_ALL)
|
||||
|
||||
install(EXPORT ${DEVELOPER_PACKAGE_EXPORT_SET}
|
||||
FILE OpenVINODeveloperPackageTargets.cmake
|
||||
NAMESPACE openvino::
|
||||
DESTINATION ${DEV_PACKAGE_ROOT_DIR}/cmake
|
||||
COMPONENT ${DEVELOPER_PACKAGE_COMPONENT}
|
||||
EXCLUDE_FROM_ALL)
|
||||
|
||||
# Note: that OpenCV and gflags are explicitly not installed to simplify relocatable
|
||||
# OpenVINO Developer package maintainance. OpenVINO_SOURCE_DIR is also unvailable, because
|
||||
# relocatable developer package can be used on a different machine where OpenVINO repo is not available
|
||||
endfunction()
|
||||
|
||||
#
|
||||
# Add extra modules
|
||||
#
|
||||
|
||||
function(register_extra_modules)
|
||||
function(_ov_register_extra_modules)
|
||||
set(InferenceEngineDeveloperPackage_DIR "${CMAKE_CURRENT_BINARY_DIR}/build-modules")
|
||||
set(OpenVINODeveloperPackage_DIR "${CMAKE_BINARY_DIR}/build-modules")
|
||||
set(OpenVINO_DIR "${CMAKE_BINARY_DIR}")
|
||||
|
||||
function(generate_fake_dev_package NS)
|
||||
function(_ov_generate_fake_developer_package NS)
|
||||
if(NS STREQUAL "openvino")
|
||||
set(devconfig_file "${OpenVINODeveloperPackage_DIR}/OpenVINODeveloperPackageConfig.cmake")
|
||||
else()
|
||||
set(devconfig_file "${InferenceEngineDeveloperPackage_DIR}/InferenceEngineDeveloperPackageConfig.cmake")
|
||||
endif()
|
||||
file(REMOVE "${devconfig_file}")
|
||||
|
||||
file(REMOVE "${devconfig_file}")
|
||||
file(WRITE "${devconfig_file}" "\# !! AUTOGENERATED: DON'T EDIT !!\n\n")
|
||||
|
||||
foreach(targets_list IN LISTS ${openvino_export_components})
|
||||
foreach(target IN LISTS targets_list)
|
||||
file(APPEND "${devconfig_file}" "if(NOT TARGET ${NS}::${target})
|
||||
add_library(${NS}::${target} ALIAS ${target})
|
||||
foreach(exported_target IN LISTS _OPENVINO_DEVELOPER_PACKAGE_TARGETS)
|
||||
file(APPEND "${devconfig_file}" "if(NOT TARGET ${NS}::${exported_target})
|
||||
add_library(${NS}::${exported_target} ALIAS ${exported_target})
|
||||
endif()\n")
|
||||
endforeach()
|
||||
endforeach()
|
||||
endfunction()
|
||||
|
||||
generate_fake_dev_package("openvino")
|
||||
generate_fake_dev_package("IE")
|
||||
_ov_generate_fake_developer_package("openvino")
|
||||
# TODO: remove with API 1.0 removal
|
||||
_ov_generate_fake_developer_package("IE")
|
||||
|
||||
# detect where OPENVINO_EXTRA_MODULES contains folders with CMakeLists.txt
|
||||
# other folders are supposed to have sub-folders with CMakeLists.txt
|
||||
@ -155,21 +205,18 @@ endfunction()
|
||||
# Extra modules support
|
||||
#
|
||||
|
||||
# this InferenceEngineDeveloperPackageConfig.cmake is not used
|
||||
# during extra modules build since it's generated after modules
|
||||
# are configured
|
||||
# this OpenVINODeveloperPackageConfig.cmake is not used during extra modules build
|
||||
# since it's generated after modules are configured
|
||||
ie_generate_dev_package_config()
|
||||
ov_generate_dev_package_config()
|
||||
|
||||
# extra modules must be registered after inference_engine library
|
||||
# and all other OpenVINO Core libraries are creared
|
||||
# because 'register_extra_modules' creates fake InferenceEngineDeveloperPackageConfig.cmake
|
||||
# because '_ov_register_extra_modules' creates fake InferenceEngineDeveloperPackageConfig.cmake
|
||||
# with all imported developer targets
|
||||
register_extra_modules()
|
||||
_ov_register_extra_modules()
|
||||
|
||||
# for static libraries case we need to generate final ov_plugins.hpp
|
||||
# with all the information about plugins
|
||||
# we need to generate final ov_plugins.hpp with all the information about plugins
|
||||
ov_generate_plugins_hpp()
|
||||
|
||||
# used for static build
|
||||
# we need to generate final ov_frontends.hpp with all the information about frontends
|
||||
ov_generate_frontends_hpp()
|
||||
|
@ -88,9 +88,7 @@ endif()
|
||||
|
||||
_ov_find_tbb()
|
||||
|
||||
foreach(component @openvino_export_components@)
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/${component}_dev_targets.cmake")
|
||||
endforeach()
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/inference_engine_developer_package_targets.cmake")
|
||||
|
||||
if(TARGET IE::ov_core_dev AND NOT TARGET openvino::core::dev)
|
||||
add_library(openvino::core::dev INTERFACE IMPORTED)
|
||||
|
@ -77,13 +77,7 @@ find_dependency(OpenVINO
|
||||
_ov_find_tbb()
|
||||
_ov_find_pugixml()
|
||||
|
||||
foreach(component @openvino_export_components@)
|
||||
# TODO: remove legacy targets from some tests
|
||||
# string(FIND "${component}" "_legacy" index)
|
||||
# if (index EQUAL -1)
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/ov_${component}_dev_targets.cmake")
|
||||
# endif()
|
||||
endforeach()
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/openvino_developer_package_targets.cmake")
|
||||
|
||||
# inherit OpenCV from main OpenVINO project if enabled
|
||||
if("@OpenCV_FOUND@")
|
||||
|
@ -0,0 +1,76 @@
|
||||
# Copyright (C) 2018-2023 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
@PACKAGE_INIT@
|
||||
|
||||
include(CMakeFindDependencyMacro)
|
||||
|
||||
# Variables to export in plugin's projects
|
||||
|
||||
set(ov_options "@OV_OPTIONS@")
|
||||
list(APPEND ov_options CMAKE_CXX_COMPILER_LAUNCHER CMAKE_C_COMPILER_LAUNCHER
|
||||
CMAKE_CXX_LINKER_LAUNCHER CMAKE_C_LINKER_LAUNCHER
|
||||
CMAKE_INSTALL_PREFIX CPACK_GENERATOR)
|
||||
|
||||
if(APPLE)
|
||||
list(APPEND ov_options CMAKE_OSX_ARCHITECTURES CMAKE_OSX_DEPLOYMENT_TARGET)
|
||||
endif()
|
||||
|
||||
get_property(_OV_GENERATOR_MULTI_CONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
|
||||
if(_OV_GENERATOR_MULTI_CONFIG)
|
||||
list(APPEND ov_options CMAKE_CONFIGURATION_TYPES)
|
||||
if(CMAKE_GENERATOR MATCHES "^Ninja Multi-Config$")
|
||||
list(APPEND ov_options CMAKE_DEFAULT_BUILD_TYPE)
|
||||
endif()
|
||||
else()
|
||||
list(APPEND ov_options CMAKE_BUILD_TYPE)
|
||||
endif()
|
||||
unset(_OV_GENERATOR_MULTI_CONFIG)
|
||||
|
||||
file(TO_CMAKE_PATH "${CMAKE_CURRENT_LIST_DIR}" cache_path)
|
||||
|
||||
message(STATUS "The following CMake options are exported from OpenVINO Developer package")
|
||||
message(" ")
|
||||
foreach(option IN LISTS ov_options)
|
||||
if(NOT DEFINED "${option}")
|
||||
load_cache("${cache_path}" READ_WITH_PREFIX "" ${option})
|
||||
endif()
|
||||
message(" ${option}: ${${option}}")
|
||||
endforeach()
|
||||
message(" ")
|
||||
|
||||
# Restore TBB installation directory (requires for proper LC_RPATH on macOS with SIP)
|
||||
load_cache("${cache_path}" READ_WITH_PREFIX "" TBB_INSTALL_DIR)
|
||||
|
||||
# activate generation of plugins.xml
|
||||
set(ENABLE_PLUGINS_XML ON)
|
||||
|
||||
# Disable warning as error for private components
|
||||
set(CMAKE_COMPILE_WARNING_AS_ERROR OFF)
|
||||
|
||||
#
|
||||
# Content
|
||||
#
|
||||
|
||||
# OpenVINO_DIR is supposed to be set as an environment variable
|
||||
find_dependency(OpenVINO)
|
||||
|
||||
find_dependency(OpenVINODeveloperScripts
|
||||
PATHS "${CMAKE_CURRENT_LIST_DIR}"
|
||||
NO_CMAKE_FIND_ROOT_PATH
|
||||
NO_DEFAULT_PATH)
|
||||
|
||||
_ov_find_tbb()
|
||||
_ov_find_pugixml()
|
||||
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/OpenVINODeveloperPackageTargets.cmake")
|
||||
#
|
||||
# Extra Compile Flags
|
||||
#
|
||||
|
||||
# don't fail on strict compilation options in 3rd party modules
|
||||
ov_dev_package_no_errors()
|
||||
|
||||
# Don't threat deprecated API warnings as errors in 3rd party apps
|
||||
ov_deprecated_no_errors()
|
@ -5,7 +5,8 @@
|
||||
add_subdirectory(cpp)
|
||||
add_subdirectory(c)
|
||||
|
||||
openvino_developer_export_targets(COMPONENT samples TARGETS format_reader ie_samples_utils)
|
||||
ov_developer_package_export_targets(TARGET format_reader)
|
||||
ov_developer_package_export_targets(TARGET ie_samples_utils)
|
||||
|
||||
#
|
||||
# Install
|
||||
|
@ -30,7 +30,7 @@ else()
|
||||
target_compile_definitions(${TARGET_NAME} PRIVATE USE_OPENCV)
|
||||
endif()
|
||||
|
||||
target_include_directories(${TARGET_NAME} PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include"
|
||||
target_include_directories(${TARGET_NAME} PUBLIC "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
|
||||
PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/src")
|
||||
|
||||
set_target_properties(${TARGET_NAME} PROPERTIES FOLDER cpp_samples)
|
||||
|
@ -11,7 +11,7 @@ add_library(${TARGET_NAME} STATIC EXCLUDE_FROM_ALL ${SOURCES})
|
||||
set_target_properties(${TARGET_NAME} PROPERTIES FOLDER "src")
|
||||
|
||||
target_include_directories(${TARGET_NAME}
|
||||
PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include")
|
||||
PUBLIC "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>")
|
||||
|
||||
find_package(OpenVINO REQUIRED COMPONENTS Runtime)
|
||||
|
||||
|
@ -46,6 +46,7 @@ export(TARGETS ${TARGET_NAME} NAMESPACE openvino::
|
||||
APPEND FILE "${CMAKE_BINARY_DIR}/OpenVINOTargets.cmake")
|
||||
|
||||
# install
|
||||
|
||||
ov_cpack_add_component(${OV_CPACK_COMP_CORE_C} HIDDEN)
|
||||
ov_cpack_add_component(${OV_CPACK_COMP_CORE_C_DEV} HIDDEN)
|
||||
|
||||
|
@ -20,7 +20,18 @@ project(OpenVINOPython DESCRIPTION "OpenVINO Runtime Python bindings")
|
||||
if(NOT DEFINED OpenVINO_SOURCE_DIR)
|
||||
find_package(OpenVINODeveloperPackage REQUIRED
|
||||
PATHS "${InferenceEngineDeveloperPackage_DIR}")
|
||||
|
||||
# we assume that OpenVINODeveloperPackage is generated in OpenVINO build tree
|
||||
set(OpenVINO_BINARY_DIR "${OpenVINODeveloperPackage_DIR}")
|
||||
# but this can be invalid for cases of OpenVINODeveloperPackage relocatable installation
|
||||
# so, we need to disable wheen generation for this case
|
||||
if(NOT EXISTS "${OpenVINO_BINARY_DIR}/cmake_install.cmake")
|
||||
set(OpenVINODeveloperPackage_RELOCATABLE ON)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(NOT DEFINED OpenVINODeveloperPackage_RELOCATABLE)
|
||||
set(OpenVINODeveloperPackage_RELOCATABLE OFF)
|
||||
endif()
|
||||
|
||||
#
|
||||
@ -141,11 +152,10 @@ function(ov_check_init_files_alignment init_files)
|
||||
endforeach()
|
||||
endfunction()
|
||||
|
||||
set(INIT_FILES_RUNTIME
|
||||
"${OpenVINOPython_SOURCE_DIR}/src/openvino/__init__.py"
|
||||
"${OpenVINOPython_SOURCE_DIR}/src/compatibility/openvino/__init__.py"
|
||||
"${OpenVINO_SOURCE_DIR}/tools/ovc/openvino/__init__.py"
|
||||
"${OpenVINO_SOURCE_DIR}/tools/benchmark_tool/openvino/__init__.py")
|
||||
set(INIT_FILES_RUNTIME "${OpenVINOPython_SOURCE_DIR}/src/openvino/__init__.py"
|
||||
"${OpenVINOPython_SOURCE_DIR}/src/compatibility/openvino/__init__.py"
|
||||
"${OpenVINOPython_SOURCE_DIR}/../../../tools/ovc/openvino/__init__.py"
|
||||
"${OpenVINOPython_SOURCE_DIR}/../../../tools/benchmark_tool/openvino/__init__.py")
|
||||
|
||||
ov_check_init_files_alignment("${INIT_FILES_RUNTIME}")
|
||||
|
||||
@ -193,7 +203,7 @@ endif()
|
||||
|
||||
# this option should not be a part of OpenVINODeveloperPackage
|
||||
# since wheels can be built only together with main OV build
|
||||
ov_dependent_option(ENABLE_WHEEL "Build wheel packages for PyPI" ${ENABLE_WHEEL_DEFAULT} "ENABLE_PYTHON" OFF)
|
||||
ov_dependent_option(ENABLE_WHEEL "Build wheel packages for PyPI" ${ENABLE_WHEEL_DEFAULT} "ENABLE_PYTHON;NOT OpenVINODeveloperPackage_RELOCATABLE" OFF)
|
||||
|
||||
if(NOT ENABLE_PYTHON)
|
||||
if(CMAKE_SOURCE_DIR STREQUAL OpenVINOPython_SOURCE_DIR)
|
||||
@ -309,15 +319,15 @@ macro(ov_define_setup_py_dependencies)
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/wheel/setup.py"
|
||||
"${OpenVINOPython_SOURCE_DIR}/requirements.txt"
|
||||
"${OpenVINOPython_SOURCE_DIR}/wheel/readme.txt"
|
||||
"${OpenVINO_SOURCE_DIR}/LICENSE"
|
||||
"${OpenVINO_SOURCE_DIR}/licensing/onednn_third-party-programs.txt"
|
||||
"${OpenVINO_SOURCE_DIR}/licensing/runtime-third-party-programs.txt"
|
||||
"${OpenVINO_SOURCE_DIR}/licensing/tbb_third-party-programs.txt"
|
||||
"${OpenVINO_SOURCE_DIR}/docs/install_guides/pypi-openvino-rt.md")
|
||||
"${OpenVINOPython_SOURCE_DIR}/../../../LICENSE"
|
||||
"${OpenVINOPython_SOURCE_DIR}/../../../licensing/onednn_third-party-programs.txt"
|
||||
"${OpenVINOPython_SOURCE_DIR}/../../../licensing/runtime-third-party-programs.txt"
|
||||
"${OpenVINOPython_SOURCE_DIR}/../../../licensing/tbb_third-party-programs.txt"
|
||||
"${OpenVINOPython_SOURCE_DIR}/../../../docs/install_guides/pypi-openvino-rt.md")
|
||||
|
||||
if(wheel_pre_release)
|
||||
list(APPEND ov_setup_py_deps
|
||||
"${OpenVINO_SOURCE_DIR}/docs/install_guides/pre-release-note.md")
|
||||
"${OpenVINOPython_SOURCE_DIR}/../../../docs/install_guides/pre-release-note.md")
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
@ -394,8 +404,9 @@ if(ENABLE_TESTS)
|
||||
endif()
|
||||
|
||||
if(OpenVINODeveloperPackage_FOUND)
|
||||
# TODO: understand whether it's required
|
||||
# provides a callback function to describe each component in repo
|
||||
include("${OpenVINO_SOURCE_DIR}/cmake/packaging/packaging.cmake")
|
||||
include("${OpenVINOPython_SOURCE_DIR}/../../../cmake/packaging/packaging.cmake")
|
||||
|
||||
ov_cpack(${OV_CPACK_COMPONENTS_ALL})
|
||||
endif()
|
||||
|
@ -7,27 +7,25 @@ cmake_minimum_required (VERSION 3.13)
|
||||
project (pyngraph)
|
||||
|
||||
if(NOT DEFINED OpenVINO_SOURCE_DIR)
|
||||
find_package(OpenVINO REQUIRED)
|
||||
find_package(OpenVINODeveloperPackage QUIET
|
||||
PATHS "${InferenceEngineDeveloperPackage_DIR}")
|
||||
find_package(OpenVINO REQUIRED)
|
||||
endif()
|
||||
|
||||
# Python3_VERSION_MAJOR and Python3_VERSION_MINOR are defined in FindPython3
|
||||
set(pyversion python${Python3_VERSION_MAJOR}.${Python3_VERSION_MINOR})
|
||||
|
||||
if(OpenVINO_SOURCE_DIR)
|
||||
if(OV_GENERATOR_MULTI_CONFIG)
|
||||
set(PYTHON_BRIDGE_OUTPUT_DIRECTORY ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/$<CONFIG>/python/)
|
||||
else()
|
||||
set(PYTHON_BRIDGE_OUTPUT_DIRECTORY ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/python/)
|
||||
endif()
|
||||
|
||||
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PYTHON_BRIDGE_OUTPUT_DIRECTORY})
|
||||
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PYTHON_BRIDGE_OUTPUT_DIRECTORY})
|
||||
set(CMAKE_COMPILE_PDB_OUTPUT_DIRECTORY ${PYTHON_BRIDGE_OUTPUT_DIRECTORY})
|
||||
set(CMAKE_PDB_OUTPUT_DIRECTORY ${PYTHON_BRIDGE_OUTPUT_DIRECTORY})
|
||||
if(OV_GENERATOR_MULTI_CONFIG)
|
||||
set(PYTHON_BRIDGE_OUTPUT_DIRECTORY ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/$<CONFIG>/python/)
|
||||
else()
|
||||
set(PYTHON_BRIDGE_OUTPUT_DIRECTORY ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/python/)
|
||||
endif()
|
||||
|
||||
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PYTHON_BRIDGE_OUTPUT_DIRECTORY})
|
||||
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PYTHON_BRIDGE_OUTPUT_DIRECTORY})
|
||||
set(CMAKE_COMPILE_PDB_OUTPUT_DIRECTORY ${PYTHON_BRIDGE_OUTPUT_DIRECTORY})
|
||||
set(CMAKE_PDB_OUTPUT_DIRECTORY ${PYTHON_BRIDGE_OUTPUT_DIRECTORY})
|
||||
|
||||
# compile options
|
||||
|
||||
if (CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
|
||||
@ -54,43 +52,39 @@ file(GLOB_RECURSE SOURCES *.cpp)
|
||||
|
||||
pybind11_add_module(_${PROJECT_NAME} MODULE NO_EXTRAS ${SOURCES})
|
||||
|
||||
target_include_directories(_${PROJECT_NAME} PRIVATE "../" "${OpenVINO_SOURCE_DIR}/src/common/transformations/include")
|
||||
target_include_directories(_${PROJECT_NAME} PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/../")
|
||||
|
||||
target_link_libraries(_${PROJECT_NAME} PRIVATE openvino::runtime)
|
||||
target_link_libraries(_${PROJECT_NAME} PRIVATE openvino::runtime openvino::core::dev)
|
||||
|
||||
set_target_properties(_${PROJECT_NAME} PROPERTIES INTERPROCEDURAL_OPTIMIZATION_RELEASE ${ENABLE_LTO})
|
||||
|
||||
# perform copy
|
||||
if(OpenVINO_SOURCE_DIR)
|
||||
add_custom_command(TARGET _${PROJECT_NAME}
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_CURRENT_SOURCE_DIR}/../ngraph ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/ngraph
|
||||
)
|
||||
endif()
|
||||
add_custom_command(TARGET _${PROJECT_NAME}
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_CURRENT_SOURCE_DIR}/../ngraph ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/ngraph
|
||||
)
|
||||
|
||||
ov_set_apple_rpath(_${PROJECT_NAME} ${OV_CPACK_PYTHONDIR} ${OV_CPACK_RUNTIMEDIR})
|
||||
|
||||
# Install
|
||||
|
||||
if(OpenVINO_SOURCE_DIR OR OpenVINODeveloperPackage_FOUND)
|
||||
ov_python_minimal_api(_${PROJECT_NAME})
|
||||
ov_add_clang_format_target(_${PROJECT_NAME}_clang FOR_TARGETS _${PROJECT_NAME})
|
||||
ov_python_minimal_api(_${PROJECT_NAME})
|
||||
ov_add_clang_format_target(_${PROJECT_NAME}_clang FOR_TARGETS _${PROJECT_NAME})
|
||||
|
||||
ov_cpack_add_component(${OV_CPACK_COMP_PYTHON_OPENVINO}_${pyversion} HIDDEN)
|
||||
ov_cpack_add_component(${OV_CPACK_COMP_PYTHON_OPENVINO}_${pyversion} HIDDEN)
|
||||
|
||||
install(TARGETS _${PROJECT_NAME}
|
||||
DESTINATION ${OV_CPACK_PYTHONDIR}
|
||||
COMPONENT ${OV_CPACK_COMP_PYTHON_OPENVINO}_${pyversion}
|
||||
${OV_CPACK_COMP_PYTHON_OPENVINO_EXCLUDE_ALL})
|
||||
install(TARGETS _${PROJECT_NAME}
|
||||
DESTINATION ${OV_CPACK_PYTHONDIR}
|
||||
COMPONENT ${OV_CPACK_COMP_PYTHON_OPENVINO}_${pyversion}
|
||||
${OV_CPACK_COMP_PYTHON_OPENVINO_EXCLUDE_ALL})
|
||||
|
||||
install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/../ngraph
|
||||
DESTINATION ${OV_CPACK_PYTHONDIR}
|
||||
COMPONENT ${OV_CPACK_COMP_PYTHON_OPENVINO}_${pyversion}
|
||||
${OV_CPACK_COMP_PYTHON_OPENVINO_EXCLUDE_ALL}
|
||||
USE_SOURCE_PERMISSIONS)
|
||||
install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/../ngraph
|
||||
DESTINATION ${OV_CPACK_PYTHONDIR}
|
||||
COMPONENT ${OV_CPACK_COMP_PYTHON_OPENVINO}_${pyversion}
|
||||
${OV_CPACK_COMP_PYTHON_OPENVINO_EXCLUDE_ALL}
|
||||
USE_SOURCE_PERMISSIONS)
|
||||
|
||||
install(DIRECTORY ${OpenVINOPython_SOURCE_DIR}/tests_compatibility
|
||||
DESTINATION tests/${PROJECT_NAME}
|
||||
COMPONENT tests
|
||||
EXCLUDE_FROM_ALL)
|
||||
endif()
|
||||
install(DIRECTORY ${OpenVINOPython_SOURCE_DIR}/tests_compatibility
|
||||
DESTINATION tests/${PROJECT_NAME}
|
||||
COMPONENT tests
|
||||
EXCLUDE_FROM_ALL)
|
||||
|
@ -10,19 +10,17 @@ endif()
|
||||
# Python3_VERSION_MAJOR and Python3_VERSION_MINOR are defined by FindPython3
|
||||
set(pyversion python${Python3_VERSION_MAJOR}.${Python3_VERSION_MINOR})
|
||||
|
||||
if(OpenVINO_SOURCE_DIR)
|
||||
if(OV_GENERATOR_MULTI_CONFIG)
|
||||
set(PYTHON_BRIDGE_OUTPUT_DIRECTORY ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/$<CONFIG>/python/openvino)
|
||||
else()
|
||||
set(PYTHON_BRIDGE_OUTPUT_DIRECTORY ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/python/openvino)
|
||||
endif()
|
||||
|
||||
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PYTHON_BRIDGE_OUTPUT_DIRECTORY})
|
||||
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PYTHON_BRIDGE_OUTPUT_DIRECTORY})
|
||||
set(CMAKE_COMPILE_PDB_OUTPUT_DIRECTORY ${PYTHON_BRIDGE_OUTPUT_DIRECTORY})
|
||||
set(CMAKE_PDB_OUTPUT_DIRECTORY ${PYTHON_BRIDGE_OUTPUT_DIRECTORY})
|
||||
if(OV_GENERATOR_MULTI_CONFIG)
|
||||
set(PYTHON_BRIDGE_OUTPUT_DIRECTORY ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/$<CONFIG>/python/openvino)
|
||||
else()
|
||||
set(PYTHON_BRIDGE_OUTPUT_DIRECTORY ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/python/openvino)
|
||||
endif()
|
||||
|
||||
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PYTHON_BRIDGE_OUTPUT_DIRECTORY})
|
||||
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PYTHON_BRIDGE_OUTPUT_DIRECTORY})
|
||||
set(CMAKE_COMPILE_PDB_OUTPUT_DIRECTORY ${PYTHON_BRIDGE_OUTPUT_DIRECTORY})
|
||||
set(CMAKE_PDB_OUTPUT_DIRECTORY ${PYTHON_BRIDGE_OUTPUT_DIRECTORY})
|
||||
|
||||
# compile options
|
||||
|
||||
if(OV_COMPILER_IS_APPLECLANG)
|
||||
@ -64,15 +62,8 @@ list(FILTER SOURCES EXCLUDE REGEX ".*(frontend/(onnx|tensorflow|paddle|pytorch))
|
||||
|
||||
pybind11_add_module(${PROJECT_NAME} MODULE NO_EXTRAS ${SOURCES})
|
||||
|
||||
if(TARGET offline_transformations)
|
||||
set(OFFLINE_TRANSFORMATIONS_LIB offline_transformations)
|
||||
else()
|
||||
set(OFFLINE_TRANSFORMATIONS_LIB openvino::offline_transformations)
|
||||
endif()
|
||||
|
||||
target_include_directories(${PROJECT_NAME} PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/..")
|
||||
target_link_libraries(${PROJECT_NAME} PRIVATE
|
||||
openvino::core::dev openvino::runtime ${OFFLINE_TRANSFORMATIONS_LIB})
|
||||
target_link_libraries(${PROJECT_NAME} PRIVATE openvino::core::dev openvino::runtime openvino::offline_transformations)
|
||||
set_target_properties(${PROJECT_NAME} PROPERTIES
|
||||
INTERPROCEDURAL_OPTIMIZATION_RELEASE ${ENABLE_LTO}
|
||||
OUTPUT_NAME "_pyopenvino")
|
||||
@ -96,58 +87,56 @@ if(OV_GENERATOR_MULTI_CONFIG)
|
||||
endif()
|
||||
|
||||
# perform copy
|
||||
if(OpenVINO_SOURCE_DIR)
|
||||
add_custom_command(TARGET ${PROJECT_NAME}
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${OpenVINOPython_SOURCE_DIR}/src/openvino ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
|
||||
COMMAND ${CMAKE_COMMAND} -E copy ${OpenVINOPython_SOURCE_DIR}/requirements.txt ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/../requirements.txt
|
||||
)
|
||||
endif()
|
||||
add_custom_command(TARGET ${PROJECT_NAME}
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${OpenVINOPython_SOURCE_DIR}/src/openvino ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
|
||||
COMMAND ${CMAKE_COMMAND} -E copy ${OpenVINOPython_SOURCE_DIR}/requirements.txt ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/../requirements.txt
|
||||
)
|
||||
|
||||
if(OpenVINO_SOURCE_DIR OR OpenVINODeveloperPackage_FOUND)
|
||||
ov_python_minimal_api(${PROJECT_NAME})
|
||||
ov_add_clang_format_target(${PROJECT_NAME}_clang FOR_TARGETS ${PROJECT_NAME})
|
||||
ov_python_minimal_api(${PROJECT_NAME})
|
||||
ov_add_clang_format_target(${PROJECT_NAME}_clang FOR_TARGETS ${PROJECT_NAME})
|
||||
|
||||
ov_cpack_add_component(${OV_CPACK_COMP_PYTHON_OPENVINO}_${pyversion}
|
||||
HIDDEN)
|
||||
# install steps
|
||||
|
||||
install(DIRECTORY ${OpenVINOPython_SOURCE_DIR}/src/openvino
|
||||
DESTINATION ${OV_CPACK_PYTHONDIR}
|
||||
COMPONENT ${OV_CPACK_COMP_PYTHON_OPENVINO}_${pyversion}
|
||||
${OV_CPACK_COMP_PYTHON_OPENVINO_EXCLUDE_ALL}
|
||||
USE_SOURCE_PERMISSIONS
|
||||
PATTERN "test_utils" EXCLUDE
|
||||
PATTERN "torchvision/requirements.txt" EXCLUDE)
|
||||
ov_cpack_add_component(${OV_CPACK_COMP_PYTHON_OPENVINO}_${pyversion}
|
||||
HIDDEN)
|
||||
|
||||
install(TARGETS ${PROJECT_NAME}
|
||||
DESTINATION ${OV_CPACK_PYTHONDIR}/openvino
|
||||
COMPONENT ${OV_CPACK_COMP_PYTHON_OPENVINO}_${pyversion}
|
||||
${OV_CPACK_COMP_PYTHON_OPENVINO_EXCLUDE_ALL})
|
||||
install(DIRECTORY ${OpenVINOPython_SOURCE_DIR}/src/openvino
|
||||
DESTINATION ${OV_CPACK_PYTHONDIR}
|
||||
COMPONENT ${OV_CPACK_COMP_PYTHON_OPENVINO}_${pyversion}
|
||||
${OV_CPACK_COMP_PYTHON_OPENVINO_EXCLUDE_ALL}
|
||||
USE_SOURCE_PERMISSIONS
|
||||
PATTERN "test_utils" EXCLUDE
|
||||
PATTERN "torchvision/requirements.txt" EXCLUDE)
|
||||
|
||||
ov_set_apple_rpath(${PROJECT_NAME} ${OV_CPACK_PYTHONDIR}/openvino
|
||||
# path to OpenVINO C++ libraries
|
||||
${OV_CPACK_RUNTIMEDIR}
|
||||
# pyopenvino also depends on TBB because of:
|
||||
# pyopenvino => openvino::offline_transformations => TBB optimized openvino::reference
|
||||
${TBB_LIB_INSTALL_DIR})
|
||||
install(TARGETS ${PROJECT_NAME}
|
||||
DESTINATION ${OV_CPACK_PYTHONDIR}/openvino
|
||||
COMPONENT ${OV_CPACK_COMP_PYTHON_OPENVINO}_${pyversion}
|
||||
${OV_CPACK_COMP_PYTHON_OPENVINO_EXCLUDE_ALL})
|
||||
|
||||
ov_cpack_add_component(${OV_CPACK_COMP_OPENVINO_REQ_FILES} HIDDEN)
|
||||
ov_set_apple_rpath(${PROJECT_NAME} ${OV_CPACK_PYTHONDIR}/openvino
|
||||
# path to OpenVINO C++ libraries
|
||||
${OV_CPACK_RUNTIMEDIR}
|
||||
# pyopenvino also depends on TBB because of:
|
||||
# pyopenvino => openvino::offline_transformations => TBB optimized openvino::reference
|
||||
${TBB_LIB_INSTALL_DIR})
|
||||
|
||||
install(FILES ${OpenVINOPython_SOURCE_DIR}/requirements.txt
|
||||
DESTINATION ${OV_CPACK_PYTHONDIR}
|
||||
COMPONENT ${OV_CPACK_COMP_OPENVINO_REQ_FILES}
|
||||
${OV_CPACK_COMP_OPENVINO_REQ_FILES_EXCLUDE_ALL})
|
||||
|
||||
install(FILES ${OpenVINOPython_SOURCE_DIR}/src/openvino/preprocess/torchvision/requirements.txt
|
||||
DESTINATION ${OV_CPACK_PYTHONDIR}/openvino/preprocess/torchvision
|
||||
COMPONENT ${OV_CPACK_COMP_OPENVINO_REQ_FILES}
|
||||
${OV_CPACK_COMP_OPENVINO_REQ_FILES_EXCLUDE_ALL})
|
||||
ov_cpack_add_component(${OV_CPACK_COMP_OPENVINO_REQ_FILES} HIDDEN)
|
||||
|
||||
install(DIRECTORY ${OpenVINOPython_SOURCE_DIR}/tests
|
||||
DESTINATION tests/${PROJECT_NAME}
|
||||
COMPONENT tests
|
||||
EXCLUDE_FROM_ALL)
|
||||
endif()
|
||||
install(FILES ${OpenVINOPython_SOURCE_DIR}/requirements.txt
|
||||
DESTINATION ${OV_CPACK_PYTHONDIR}
|
||||
COMPONENT ${OV_CPACK_COMP_OPENVINO_REQ_FILES}
|
||||
${OV_CPACK_COMP_OPENVINO_REQ_FILES_EXCLUDE_ALL})
|
||||
|
||||
install(FILES ${OpenVINOPython_SOURCE_DIR}/src/openvino/preprocess/torchvision/requirements.txt
|
||||
DESTINATION ${OV_CPACK_PYTHONDIR}/openvino/preprocess/torchvision
|
||||
COMPONENT ${OV_CPACK_COMP_OPENVINO_REQ_FILES}
|
||||
${OV_CPACK_COMP_OPENVINO_REQ_FILES_EXCLUDE_ALL})
|
||||
|
||||
install(DIRECTORY ${OpenVINOPython_SOURCE_DIR}/tests
|
||||
DESTINATION tests/${PROJECT_NAME}
|
||||
COMPONENT tests
|
||||
EXCLUDE_FROM_ALL)
|
||||
|
||||
if(TARGET ie_wheel)
|
||||
add_dependencies(ie_wheel ${PROJECT_NAME})
|
||||
|
@ -107,27 +107,27 @@ install(TARGETS ${TARGET_NAME} EXPORT OpenVINOTargets
|
||||
# Add openvino::runtine::dev target
|
||||
#
|
||||
|
||||
add_library(${TARGET_NAME}_dev INTERFACE)
|
||||
add_library(openvino::runtime::dev ALIAS ${TARGET_NAME}_dev)
|
||||
add_library(openvino_runtime_dev INTERFACE)
|
||||
add_library(openvino::runtime::dev ALIAS openvino_runtime_dev)
|
||||
|
||||
target_include_directories(${TARGET_NAME}_dev INTERFACE
|
||||
target_include_directories(openvino_runtime_dev INTERFACE
|
||||
$<BUILD_INTERFACE:${OpenVINO_SOURCE_DIR}/src/inference/dev_api>
|
||||
$<BUILD_INTERFACE:${OpenVINO_SOURCE_DIR}/src/common/low_precision_transformations/include>
|
||||
$<TARGET_PROPERTY:openvino_gapi_preproc,INTERFACE_INCLUDE_DIRECTORIES>)
|
||||
$<BUILD_INTERFACE:$<TARGET_PROPERTY:openvino_gapi_preproc,INTERFACE_INCLUDE_DIRECTORIES>>)
|
||||
|
||||
target_compile_definitions(${TARGET_NAME}_dev INTERFACE
|
||||
target_compile_definitions(openvino_runtime_dev INTERFACE
|
||||
$<TARGET_PROPERTY:openvino_gapi_preproc,INTERFACE_COMPILE_DEFINITIONS>)
|
||||
|
||||
target_link_libraries(${TARGET_NAME}_dev INTERFACE ${TARGET_NAME} openvino::core::dev)
|
||||
target_link_libraries(openvino_runtime_dev INTERFACE ${TARGET_NAME} openvino::core::dev)
|
||||
|
||||
# TODO: remove once NPU will use explicltly `ov_set_threading_interface_for`
|
||||
ov_set_threading_interface_for(${TARGET_NAME}_dev)
|
||||
set_target_properties(${TARGET_NAME}_dev PROPERTIES EXPORT_NAME runtime::dev)
|
||||
ov_set_threading_interface_for(openvino_runtime_dev)
|
||||
set_target_properties(openvino_runtime_dev PROPERTIES EXPORT_NAME runtime::dev)
|
||||
|
||||
openvino_developer_export_targets(COMPONENT core TARGETS openvino::runtime::dev)
|
||||
ov_developer_package_export_targets(TARGET openvino::runtime::dev
|
||||
INSTALL_INCLUDE_DIRECTORIES "${OpenVINO_SOURCE_DIR}/src/inference/dev_api/")
|
||||
|
||||
# Install static libraries for case BUILD_SHARED_LIBS=OFF
|
||||
ov_install_static_lib(${TARGET_NAME}_dev ${OV_CPACK_COMP_CORE})
|
||||
ov_install_static_lib(openvino_runtime_dev ${OV_CPACK_COMP_CORE})
|
||||
|
||||
#
|
||||
# Install OpenVINO runtime
|
||||
|
@ -2,11 +2,12 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
set(TARGET_NAME conditional_compilation)
|
||||
set(TARGET_NAME openvino_conditional_compilation)
|
||||
|
||||
add_library(${TARGET_NAME} INTERFACE)
|
||||
|
||||
add_library(openvino::conditional_compilation ALIAS ${TARGET_NAME})
|
||||
set_target_properties(${TARGET_NAME} PROPERTIES EXPORT_NAME conditional_compilation)
|
||||
|
||||
target_link_libraries(${TARGET_NAME} INTERFACE openvino::itt)
|
||||
|
||||
@ -23,9 +24,7 @@ elseif(SELECTIVE_BUILD STREQUAL "ON")
|
||||
find_host_package (Python3 REQUIRED COMPONENTS Interpreter)
|
||||
|
||||
file(TO_CMAKE_PATH ${SELECTIVE_BUILD_STAT} CMAKE_SELECTIVE_BUILD_STAT)
|
||||
|
||||
file(GLOB STAT_FILES ${CMAKE_SELECTIVE_BUILD_STAT})
|
||||
|
||||
if(NOT STAT_FILES)
|
||||
message(FATAL_ERROR "SELECTIVE_BUILD_STAT (${SELECTIVE_BUILD_STAT}) path doesn't contain valid csv files!")
|
||||
endif()
|
||||
@ -56,12 +55,16 @@ elseif(SELECTIVE_BUILD STREQUAL "ON")
|
||||
ov_force_include(${TARGET_NAME} INTERFACE ${GENERATED_HEADER})
|
||||
endif()
|
||||
|
||||
ov_install_static_lib(${TARGET_NAME} ${OV_CPACK_COMP_CORE})
|
||||
|
||||
file(GLOB_RECURSE hdrs ${CMAKE_CURRENT_SOURCE_DIR}/include/*.h ${CMAKE_CURRENT_SOURCE_DIR}/include/*.hpp)
|
||||
ov_add_clang_format_target(${TARGET_NAME}_clang FOR_SOURCES ${hdrs})
|
||||
openvino_developer_export_targets(COMPONENT openvino_common TARGETS openvino::conditional_compilation)
|
||||
|
||||
if(ENABLE_TESTS)
|
||||
add_subdirectory(tests)
|
||||
endif()
|
||||
|
||||
# install & export
|
||||
|
||||
ov_install_static_lib(${TARGET_NAME} ${OV_CPACK_COMP_CORE})
|
||||
|
||||
ov_developer_package_export_targets(TARGET openvino::conditional_compilation
|
||||
INSTALL_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR}/include/")
|
||||
|
@ -36,7 +36,11 @@ endif()
|
||||
target_include_directories(${TARGET_NAME} PUBLIC
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>)
|
||||
|
||||
ov_add_clang_format_target(${TARGET_NAME}_clang FOR_TARGETS ${TARGET_NAME})
|
||||
|
||||
# install & export
|
||||
|
||||
ov_install_static_lib(${TARGET_NAME} ${OV_CPACK_COMP_CORE})
|
||||
|
||||
ov_add_clang_format_target(${TARGET_NAME}_clang FOR_TARGETS ${TARGET_NAME})
|
||||
openvino_developer_export_targets(COMPONENT openvino_common TARGETS openvino::itt)
|
||||
ov_developer_package_export_targets(TARGET openvino::itt
|
||||
INSTALL_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR}/include/")
|
||||
|
@ -2,13 +2,13 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
set(TARGET_NAME "offline_transformations")
|
||||
|
||||
file(GLOB_RECURSE LIBRARY_SRC ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp)
|
||||
file(GLOB_RECURSE PUBLIC_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/include/*.hpp)
|
||||
set(TARGET_NAME "openvino_offline_transformations")
|
||||
|
||||
set(PUBLIC_HEADERS_DIR "${CMAKE_CURRENT_SOURCE_DIR}/include")
|
||||
|
||||
file(GLOB_RECURSE LIBRARY_SRC ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp)
|
||||
file(GLOB_RECURSE PUBLIC_HEADERS ${PUBLIC_HEADERS_DIR}/*.hpp)
|
||||
|
||||
# Create named folders for the sources within the .vcproj
|
||||
# Empty name lists them directly under the .vcproj
|
||||
|
||||
@ -19,15 +19,20 @@ source_group("include" FILES ${PUBLIC_HEADERS})
|
||||
|
||||
add_library(${TARGET_NAME} STATIC ${LIBRARY_SRC} ${PUBLIC_HEADERS})
|
||||
|
||||
add_library(openvino::offline_transformations ALIAS ${TARGET_NAME})
|
||||
set_target_properties(${TARGET_NAME} PROPERTIES EXPORT_NAME offline_transformations)
|
||||
|
||||
target_link_libraries(${TARGET_NAME} PRIVATE openvino::core::dev openvino::reference openvino::runtime)
|
||||
|
||||
target_include_directories(${TARGET_NAME} PUBLIC ${PUBLIC_HEADERS_DIR}
|
||||
PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/src")
|
||||
target_include_directories(${TARGET_NAME} PUBLIC $<BUILD_INTERFACE:${PUBLIC_HEADERS_DIR}>
|
||||
PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/src"
|
||||
$<TARGET_PROPERTY:openvino::pugixml,INTERFACE_INCLUDE_DIRECTORIES>)
|
||||
|
||||
add_cpplint_target(${TARGET_NAME}_cpplint FOR_TARGETS ${TARGET_NAME})
|
||||
|
||||
ov_add_clang_format_target(${TARGET_NAME}_clang FOR_TARGETS ${TARGET_NAME})
|
||||
|
||||
# developer package
|
||||
# install & export
|
||||
|
||||
openvino_developer_export_targets(COMPONENT core TARGETS ${TARGET_NAME})
|
||||
ov_developer_package_export_targets(TARGET ${TARGET_NAME}
|
||||
INSTALL_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR}/include/")
|
||||
|
@ -211,7 +211,7 @@ endif()
|
||||
|
||||
# developer package
|
||||
|
||||
openvino_developer_export_targets(COMPONENT core TARGETS ${TARGET_NAME})
|
||||
ov_developer_package_export_targets(TARGET ${TARGET_NAME})
|
||||
|
||||
# install
|
||||
|
||||
|
@ -46,8 +46,9 @@ endif()
|
||||
|
||||
set_target_properties(${TARGET_NAME} PROPERTIES INTERPROCEDURAL_OPTIMIZATION_RELEASE ${ENABLE_LTO})
|
||||
|
||||
# install
|
||||
# install & export
|
||||
|
||||
ov_install_static_lib(${TARGET_NAME} ${OV_CPACK_COMP_CORE})
|
||||
|
||||
openvino_developer_export_targets(COMPONENT ${OV_CPACK_COMP_CORE} TARGETS ${TARGET_NAME})
|
||||
ov_developer_package_export_targets(TARGET ${TARGET_NAME}
|
||||
INSTALL_INCLUDE_DIRECTORIES "${PUBLIC_HEADERS_DIR}/")
|
||||
|
@ -4,11 +4,11 @@
|
||||
|
||||
set(TARGET_NAME "inference_engine_transformations")
|
||||
|
||||
file(GLOB_RECURSE LIBRARY_SRC ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp)
|
||||
file(GLOB_RECURSE PUBLIC_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/include/*.hpp)
|
||||
|
||||
set(PUBLIC_HEADERS_DIR "${CMAKE_CURRENT_SOURCE_DIR}/include")
|
||||
|
||||
file(GLOB_RECURSE LIBRARY_SRC ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp)
|
||||
file(GLOB_RECURSE PUBLIC_HEADERS ${PUBLIC_HEADERS_DIR}/*.hpp)
|
||||
|
||||
# Create named folders for the sources within the .vcproj
|
||||
# Empty name lists them directly under the .vcproj
|
||||
|
||||
@ -27,8 +27,8 @@ ov_build_target_faster(${TARGET_NAME}_obj
|
||||
|
||||
target_link_libraries(${TARGET_NAME}_obj PRIVATE openvino::reference openvino::itt openvino::builders openvino::core::dev openvino::shape_inference)
|
||||
|
||||
target_include_directories(${TARGET_NAME}_obj PRIVATE $<BUILD_INTERFACE:${PUBLIC_HEADERS_DIR}>
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/src")
|
||||
target_include_directories(${TARGET_NAME}_obj PRIVATE "${PUBLIC_HEADERS_DIR}"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/src")
|
||||
|
||||
ov_add_clang_format_target(${TARGET_NAME}_clang FOR_TARGETS ${TARGET_NAME}_obj)
|
||||
|
||||
@ -43,7 +43,7 @@ endif()
|
||||
add_library(${TARGET_NAME} INTERFACE)
|
||||
|
||||
target_include_directories(${TARGET_NAME} INTERFACE
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
|
||||
$<BUILD_INTERFACE:${PUBLIC_HEADERS_DIR}>
|
||||
$<BUILD_INTERFACE:$<TARGET_PROPERTY:ngraph,INTERFACE_INCLUDE_DIRECTORIES>>)
|
||||
|
||||
target_link_libraries(${TARGET_NAME} INTERFACE openvino::runtime)
|
||||
|
@ -15,7 +15,7 @@ ov_add_test_target(
|
||||
LINK_LIBRARIES
|
||||
gmock
|
||||
func_test_utils
|
||||
offline_transformations
|
||||
openvino::offline_transformations
|
||||
sharedTestClasses
|
||||
ov_lpt_models
|
||||
ADD_CLANG_FORMAT
|
||||
|
@ -4,11 +4,11 @@
|
||||
|
||||
set(TARGET_NAME openvino_util)
|
||||
|
||||
file(GLOB_RECURSE LIBRARY_SRC ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp)
|
||||
file(GLOB_RECURSE PUBLIC_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/include/*.hpp)
|
||||
|
||||
set(UTIL_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/include/)
|
||||
|
||||
file(GLOB_RECURSE LIBRARY_SRC ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp)
|
||||
file(GLOB_RECURSE PUBLIC_HEADERS ${UTIL_INCLUDE_DIR}/*.hpp)
|
||||
|
||||
if (WIN32)
|
||||
# Remove linux specific files
|
||||
file(GLOB_RECURSE LIN_FILES ${CMAKE_CURRENT_SOURCE_DIR}/src/os/lin/*.cpp
|
||||
@ -41,13 +41,15 @@ target_link_libraries(${TARGET_NAME} PRIVATE ${CMAKE_DL_LIBS})
|
||||
if (WIN32)
|
||||
target_link_libraries(${TARGET_NAME} PRIVATE Shlwapi)
|
||||
endif()
|
||||
target_include_directories(${TARGET_NAME} PUBLIC
|
||||
$<BUILD_INTERFACE:${UTIL_INCLUDE_DIR}>)
|
||||
|
||||
ov_install_static_lib(${TARGET_NAME} ${OV_CPACK_COMP_CORE})
|
||||
target_include_directories(${TARGET_NAME} PUBLIC $<BUILD_INTERFACE:${UTIL_INCLUDE_DIR}>)
|
||||
|
||||
ov_add_clang_format_target(${TARGET_NAME}_clang FOR_TARGETS ${TARGET_NAME})
|
||||
ov_ncc_naming_style(FOR_TARGET ${TARGET_NAME}
|
||||
SOURCE_DIRECTORIES ${UTIL_INCLUDE_DIR})
|
||||
|
||||
openvino_developer_export_targets(COMPONENT core TARGETS ${TARGET_NAME})
|
||||
# install & export
|
||||
|
||||
ov_install_static_lib(${TARGET_NAME} ${OV_CPACK_COMP_CORE})
|
||||
|
||||
ov_developer_package_export_targets(TARGET ${TARGET_NAME}
|
||||
INSTALL_INCLUDE_DIRECTORIES "${UTIL_INCLUDE_DIR}/")
|
||||
|
@ -36,25 +36,29 @@ source_group("src" FILES ${LIBRARY_SRC})
|
||||
source_group("include" FILES ${PUBLIC_HEADERS})
|
||||
|
||||
#
|
||||
# Create ov_core_dev library
|
||||
# Create openvino_core_dev library
|
||||
#
|
||||
|
||||
add_library(ov_core_dev INTERFACE)
|
||||
add_library(openvino::core::dev ALIAS ov_core_dev)
|
||||
add_library(openvino_core_dev INTERFACE)
|
||||
add_library(openvino::core::dev ALIAS openvino_core_dev)
|
||||
|
||||
target_include_directories(ov_core_dev INTERFACE
|
||||
target_include_directories(openvino_core_dev INTERFACE
|
||||
$<BUILD_INTERFACE:${OV_CORE_INCLUDE_PATH}>
|
||||
$<BUILD_INTERFACE:${OpenVINO_SOURCE_DIR}/src/core/dev_api>
|
||||
$<BUILD_INTERFACE:${OpenVINO_SOURCE_DIR}/src/frontends/common/include>
|
||||
$<BUILD_INTERFACE:${OpenVINO_SOURCE_DIR}/src/common/transformations/include>)
|
||||
|
||||
target_link_libraries(ov_core_dev INTERFACE openvino::itt openvino::util)
|
||||
target_link_libraries(openvino_core_dev INTERFACE openvino::itt openvino::util)
|
||||
|
||||
set_target_properties(ov_core_dev PROPERTIES EXPORT_NAME core::dev)
|
||||
openvino_developer_export_targets(COMPONENT core TARGETS openvino::core::dev)
|
||||
set_target_properties(openvino_core_dev PROPERTIES EXPORT_NAME core::dev)
|
||||
ov_developer_package_export_targets(TARGET openvino::core::dev
|
||||
INSTALL_INCLUDE_DIRECTORIES
|
||||
"${OV_CORE_DEV_API_PATH}/"
|
||||
"${OpenVINO_SOURCE_DIR}/src/common/transformations/include/"
|
||||
"${OpenVINO_SOURCE_DIR}/src/common/low_precision_transformations/include/")
|
||||
|
||||
# Install interface libraries for case BUILD_SHARED_LIBS=OFF
|
||||
ov_install_static_lib(ov_core_dev ${OV_CPACK_COMP_CORE})
|
||||
ov_install_static_lib(openvino_core_dev ${OV_CPACK_COMP_CORE})
|
||||
|
||||
# Fix error LNK1248: image size (...) exceeds maximum allowable size (FFFFFFFF)
|
||||
# the symbolic debugging information will be stored in a separate .pdb file.
|
||||
|
@ -4,11 +4,11 @@
|
||||
|
||||
set(TARGET_NAME "openvino_builders")
|
||||
|
||||
file(GLOB_RECURSE LIBRARY_SRC ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp)
|
||||
file(GLOB_RECURSE PUBLIC_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/include/*.hpp)
|
||||
|
||||
set(BUILDER_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/include/)
|
||||
|
||||
file(GLOB_RECURSE LIBRARY_SRC ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp)
|
||||
file(GLOB_RECURSE PUBLIC_HEADERS ${BUILDER_INCLUDE_DIR}/*.hpp)
|
||||
|
||||
# Create named folders for the sources within the .vcproj
|
||||
# Empty name lists them directly under the .vcproj
|
||||
|
||||
@ -35,8 +35,9 @@ endif()
|
||||
|
||||
ov_add_clang_format_target(${TARGET_NAME}_clang FOR_TARGETS ${TARGET_NAME})
|
||||
|
||||
# install & export
|
||||
|
||||
ov_install_static_lib(openvino_builders ${OV_CPACK_COMP_CORE})
|
||||
|
||||
# developer package
|
||||
|
||||
openvino_developer_export_targets(COMPONENT core TARGETS openvino::builders)
|
||||
ov_developer_package_export_targets(TARGET openvino::builders
|
||||
INSTALL_INCLUDE_DIRECTORIES "${BUILDER_INCLUDE_DIR}/")
|
||||
|
@ -4,11 +4,11 @@
|
||||
|
||||
set(TARGET_NAME "openvino_reference")
|
||||
|
||||
file(GLOB_RECURSE LIBRARY_SRC ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp)
|
||||
file(GLOB_RECURSE PUBLIC_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/include/*.hpp)
|
||||
|
||||
set(REF_IMPL_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/include")
|
||||
|
||||
file(GLOB_RECURSE LIBRARY_SRC ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp)
|
||||
file(GLOB_RECURSE PUBLIC_HEADERS ${REF_IMPL_INCLUDE_DIR}/*.hpp)
|
||||
|
||||
# Create named folders for the sources within the .vcproj
|
||||
# Empty name lists them directly under the .vcproj
|
||||
|
||||
@ -46,7 +46,9 @@ target_link_libraries(${TARGET_NAME} PRIVATE Threads::Threads openvino::core::de
|
||||
|
||||
ov_add_clang_format_target(${TARGET_NAME}_clang FOR_TARGETS ${TARGET_NAME})
|
||||
|
||||
# install & export
|
||||
|
||||
ov_install_static_lib(${TARGET_NAME} ${OV_CPACK_COMP_CORE})
|
||||
|
||||
# developer package
|
||||
openvino_developer_export_targets(COMPONENT core TARGETS openvino::reference)
|
||||
ov_developer_package_export_targets(TARGET openvino::reference
|
||||
INSTALL_INCLUDE_DIRECTORIES "${REF_IMPL_INCLUDE_DIR}/")
|
||||
|
@ -4,11 +4,11 @@
|
||||
|
||||
set(TARGET_NAME "openvino_shape_inference")
|
||||
|
||||
file(GLOB_RECURSE LIBRARY_SRC ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp)
|
||||
file(GLOB_RECURSE PUBLIC_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/include/*.hpp)
|
||||
|
||||
set(SHAPE_INFER_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/include")
|
||||
|
||||
file(GLOB_RECURSE LIBRARY_SRC ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp)
|
||||
file(GLOB_RECURSE PUBLIC_HEADERS ${SHAPE_INFER_INCLUDE_DIR}/*.hpp)
|
||||
|
||||
# Create named folders for the sources within the .vcproj
|
||||
# Empty name lists them directly under the .vcproj
|
||||
|
||||
@ -24,7 +24,7 @@ set_target_properties(${TARGET_NAME} PROPERTIES EXPORT_NAME shape_inference)
|
||||
target_include_directories(${TARGET_NAME} PUBLIC
|
||||
$<BUILD_INTERFACE:${SHAPE_INFER_INCLUDE_DIR}>
|
||||
$<BUILD_INTERFACE:${OV_CORE_INCLUDE_PATH}>
|
||||
$<BUILD_INTERFACE:$<TARGET_PROPERTY:openvino::core::dev,INTERFACE_INCLUDE_DIRECTORIES>>)
|
||||
$<TARGET_PROPERTY:openvino::core::dev,INTERFACE_INCLUDE_DIRECTORIES>)
|
||||
|
||||
ov_add_clang_format_target(${TARGET_NAME}_clang FOR_TARGETS ${TARGET_NAME})
|
||||
|
||||
@ -32,7 +32,9 @@ if(NOT BUILD_SHARED_LIBS)
|
||||
target_compile_definitions(${TARGET_NAME} PUBLIC OPENVINO_STATIC_LIBRARY)
|
||||
endif()
|
||||
|
||||
# developer package
|
||||
|
||||
ov_install_static_lib(${TARGET_NAME} ${OV_CPACK_COMP_CORE})
|
||||
|
||||
# developer package
|
||||
openvino_developer_export_targets(COMPONENT core TARGETS ${TARGET_NAME})
|
||||
ov_developer_package_export_targets(TARGET ${TARGET_NAME}
|
||||
INSTALL_INCLUDE_DIRECTORIES "${SHAPE_INFER_INCLUDE_DIR}/")
|
||||
|
@ -17,8 +17,10 @@ target_include_directories(${TARGET_NAME} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../
|
||||
|
||||
target_link_libraries(${TARGET_NAME}
|
||||
PUBLIC
|
||||
offline_transformations
|
||||
common_test_utils func_test_utils openvino::util
|
||||
openvino::offline_transformations
|
||||
common_test_utils
|
||||
func_test_utils
|
||||
openvino::util
|
||||
openvino::runtime
|
||||
PRIVATE
|
||||
cnpy)
|
||||
|
@ -199,8 +199,8 @@ if(WIN32)
|
||||
set_target_properties(${TARGET_NAME}_s PROPERTIES COMPILE_PDB_NAME ${TARGET_NAME}_s)
|
||||
endif()
|
||||
|
||||
target_link_libraries(${TARGET_NAME}_s PRIVATE openvino::itt ${CMAKE_DL_LIBS} ngraph
|
||||
frontend_common::static inference_engine_transformations openvino::pugixml)
|
||||
target_link_libraries(${TARGET_NAME}_s PRIVATE openvino::itt ${CMAKE_DL_LIBS}
|
||||
openvino::runtime::dev openvino::pugixml)
|
||||
|
||||
target_compile_definitions(${TARGET_NAME}_s PUBLIC USE_STATIC_IE)
|
||||
|
||||
@ -215,7 +215,8 @@ set_target_properties(${TARGET_NAME}_obj
|
||||
|
||||
# Export for developer package
|
||||
|
||||
openvino_developer_export_targets(COMPONENT core_legacy TARGETS ${TARGET_NAME}_plugin_api)
|
||||
ov_developer_package_export_targets(TARGET ${TARGET_NAME}_s)
|
||||
ov_developer_package_export_targets(TARGET ${TARGET_NAME}_plugin_api)
|
||||
|
||||
# Install static libraries for case BUILD_SHARED_LIBS=OFF
|
||||
|
||||
|
@ -31,4 +31,4 @@ ov_add_test_target(
|
||||
)
|
||||
|
||||
target_compile_definitions(${TARGET_NAME} PRIVATE ${COMPILE_DEFINITIONS})
|
||||
set_ie_threading_interface_for(${TARGET_NAME})
|
||||
ov_set_threading_interface_for(${TARGET_NAME})
|
@ -20,10 +20,6 @@
|
||||
# include <regex>
|
||||
# define REPLACE_WITH_STR(SRC, PATTERN, STR) SRC = std::regex_replace(SRC, std::regex(PATTERN), STR)
|
||||
# define FIND_STR(SRC, PATTERN) std::regex_search(SRC, std::regex(PATTERN))
|
||||
#elif defined USE_BOOST_RE
|
||||
# include <boost/regex.hpp>
|
||||
# define REPLACE_WITH_STR(SRC, PATTERN, STR) SRC = boost::regex_replace(SRC, boost::regex(PATTERN), STR)
|
||||
# define FIND_STR(SRC, PATTERN) boost::regex_search(SRC, boost::regex(PATTERN))
|
||||
#else
|
||||
# error "Cannot implement regex"
|
||||
# define REPLACE_WITH_STR(SRC, PATTERN, STR)
|
||||
|
@ -23,14 +23,12 @@ file(GLOB_RECURSE SOURCES_MAIN
|
||||
)
|
||||
|
||||
if (NOT ENABLE_ONEDNN_FOR_GPU)
|
||||
set(EXCLUDE_DIR "/onednn/")
|
||||
foreach (SOURCE_FILE ${SOURCES_MAIN})
|
||||
string (FIND ${SOURCE_FILE} ${EXCLUDE_DIR} EXCLUDE_DIR_FOUND)
|
||||
if (NOT ${EXCLUDE_DIR_FOUND} EQUAL -1)
|
||||
message (Exclude : ${SOURCE_FILE})
|
||||
set(EXCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/onednn/")
|
||||
foreach (SOURCE_FILE IN LISTS SOURCES_MAIN)
|
||||
if (SOURCE_FILE MATCHES "${EXCLUDE_DIR}.*")
|
||||
list (REMOVE_ITEM SOURCES_MAIN ${SOURCE_FILE})
|
||||
endif ()
|
||||
endforeach(SOURCE_FILE)
|
||||
endforeach()
|
||||
endif()
|
||||
|
||||
if (MSVC)
|
||||
|
@ -7,8 +7,6 @@ cmake_minimum_required(VERSION 3.13)
|
||||
|
||||
project(OpenVINOTemplatePlugin)
|
||||
|
||||
set(TEMPLATE_PLUGIN_SOURCE_DIR ${OpenVINOTemplatePlugin_SOURCE_DIR})
|
||||
|
||||
find_package(OpenVINODeveloperPackage REQUIRED)
|
||||
|
||||
ov_option(ENABLE_TEMPLATE_REGISTRATION "Enables registration of TEMPLATE plugin" OFF)
|
||||
|
@ -2,12 +2,11 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
add_definitions(-DIN_OV_COMPONENT)
|
||||
ov_deprecated_no_errors()
|
||||
set(TARGET_NAME openvino_interpreter_backend)
|
||||
|
||||
file(GLOB OPS_SRC
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/ops/*.cpp"
|
||||
)
|
||||
add_definitions(-DIN_OV_COMPONENT)
|
||||
|
||||
file(GLOB OPS_SRC "${CMAKE_CURRENT_SOURCE_DIR}/ops/*.cpp")
|
||||
|
||||
set (SRC
|
||||
backend.cpp
|
||||
@ -24,31 +23,38 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
|
||||
ov_add_compiler_flags(/wd4018)
|
||||
endif()
|
||||
|
||||
add_library(interpreter_backend STATIC EXCLUDE_FROM_ALL ${OPS_SRC} ${SRC})
|
||||
add_library(openvino::interpreter_backend ALIAS interpreter_backend)
|
||||
add_library(${TARGET_NAME} STATIC EXCLUDE_FROM_ALL ${OPS_SRC} ${SRC})
|
||||
|
||||
add_library(openvino::interpreter_backend ALIAS ${TARGET_NAME})
|
||||
set_target_properties(${TARGET_NAME} PROPERTIES EXPORT_NAME interpreter_backend)
|
||||
|
||||
if(CMAKE_COMPILER_IS_GNUCXX)
|
||||
ov_add_compiler_flags(-Wno-missing-declarations)
|
||||
endif()
|
||||
|
||||
ov_build_target_faster(interpreter_backend UNITY)
|
||||
ov_build_target_faster(${TARGET_NAME} UNITY)
|
||||
|
||||
target_compile_definitions(interpreter_backend
|
||||
target_compile_definitions(${TARGET_NAME}
|
||||
PRIVATE
|
||||
SHARED_LIB_PREFIX="${CMAKE_SHARED_LIBRARY_PREFIX}"
|
||||
SHARED_LIB_SUFFIX="${OV_BUILD_POSTFIX}${CMAKE_SHARED_LIBRARY_SUFFIX}"
|
||||
)
|
||||
target_link_libraries(interpreter_backend PRIVATE openvino::builders openvino::reference openvino::util openvino::runtime::dev openvino::shape_inference)
|
||||
target_link_libraries(${TARGET_NAME} PRIVATE openvino::builders openvino::reference openvino::util openvino::runtime::dev openvino::shape_inference)
|
||||
|
||||
target_include_directories(interpreter_backend PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/ops/>)
|
||||
target_include_directories(${TARGET_NAME} PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/ops/>
|
||||
$<INSTALL_INTERFACE:developer_package/include/${TARGET_NAME}>)
|
||||
|
||||
file(GLOB_RECURSE all_backends_src "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/*.hpp")
|
||||
ov_add_clang_format_target(interpreter_backend_clang FOR_SOURCES ${all_backends_src})
|
||||
ov_add_clang_format_target(${TARGET_NAME}_clang FOR_SOURCES ${all_backends_src})
|
||||
|
||||
# developer package
|
||||
# install & export
|
||||
|
||||
openvino_developer_export_targets(COMPONENT core TARGETS interpreter_backend)
|
||||
ov_install_static_lib(${TARGET_NAME} ${OV_CPACK_COMP_CORE})
|
||||
|
||||
# install
|
||||
ov_developer_package_export_targets(TARGET openvino::interpreter_backend)
|
||||
|
||||
ov_install_static_lib(interpreter_backend ${OV_CPACK_COMP_CORE})
|
||||
install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/"
|
||||
DESTINATION developer_package/include/${TARGET_NAME}
|
||||
COMPONENT developer_package EXCLUDE_FROM_ALL
|
||||
FILES_MATCHING PATTERN "*.hpp")
|
||||
|
@ -26,7 +26,7 @@ ov_mark_target_as_cc(${TARGET_NAME})
|
||||
|
||||
target_include_directories(${TARGET_NAME} PRIVATE
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
"${TEMPLATE_PLUGIN_SOURCE_DIR}/include")
|
||||
"${OpenVINOTemplatePlugin_SOURCE_DIR}/include")
|
||||
|
||||
# link common OpenVINO Runtime libraries
|
||||
target_link_libraries(${TARGET_NAME} PRIVATE
|
||||
|
@ -18,7 +18,7 @@ ov_add_test_target(
|
||||
openvino::funcSharedTests
|
||||
openvino::runtime::dev
|
||||
INCLUDES
|
||||
"${TEMPLATE_PLUGIN_SOURCE_DIR}/include"
|
||||
"${OpenVINOTemplatePlugin_SOURCE_DIR}/include"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/op_reference"
|
||||
ADD_CLANG_FORMAT
|
||||
LABELS
|
||||
|
@ -18,7 +18,7 @@ ov_add_target(
|
||||
ROOT ${CMAKE_CURRENT_SOURCE_DIR}/src
|
||||
INCLUDES
|
||||
PRIVATE
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/include
|
||||
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
|
||||
LINK_LIBRARIES
|
||||
PRIVATE
|
||||
${LIBRARIES}
|
||||
@ -34,7 +34,7 @@ ov_add_target(
|
||||
ROOT "${CMAKE_CURRENT_SOURCE_DIR}/src"
|
||||
INCLUDES
|
||||
PUBLIC
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/include
|
||||
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
|
||||
LINK_LIBRARIES
|
||||
PUBLIC
|
||||
${LIBRARIES}
|
||||
@ -46,4 +46,4 @@ ov_add_target(
|
||||
ADD_CPPLINT
|
||||
)
|
||||
|
||||
ov_build_target_faster(${TARGET_NAME} UNITY)
|
||||
ov_build_target_faster(${TARGET_NAME} UNITY)
|
||||
|
@ -14,8 +14,8 @@ ov_add_target(
|
||||
ADD_CPPLINT
|
||||
INCLUDES
|
||||
PUBLIC
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/include
|
||||
${OpenVINO_SOURCE_DIR}/src/tests/functional/plugin/conformance/subgraphs_dumper_new/include/cache/meta/
|
||||
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
|
||||
"$<BUILD_INTERFACE:${OpenVINO_SOURCE_DIR}/src/tests/functional/plugin/conformance/subgraphs_dumper_new/include/cache/meta>"
|
||||
LINK_LIBRARIES
|
||||
PUBLIC
|
||||
gflags
|
||||
|
@ -52,13 +52,11 @@ ov_add_target(
|
||||
ADDITIONAL_SOURCE_DIRS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/src
|
||||
ADD_CPPLINT
|
||||
DEVELOPER_PACKAGE
|
||||
tests
|
||||
EXCLUDED_SOURCE_PATHS ${EXCLUDED_SOURCE_PATHS}
|
||||
DEFINES ${DEFINES}
|
||||
INCLUDES
|
||||
PUBLIC
|
||||
${PUBLIC_HEADERS_DIR}
|
||||
"$<BUILD_INTERFACE:${PUBLIC_HEADERS_DIR}>"
|
||||
LINK_LIBRARIES
|
||||
PUBLIC
|
||||
openvino::pugixml
|
||||
@ -86,3 +84,8 @@ if (ENABLE_INTEL_CPU)
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/src/behavior/ov_executable_network/get_metric.cpp"
|
||||
PROPERTIES COMPILE_DEFINITIONS ENABLE_INTEL_CPU=1)
|
||||
endif()
|
||||
|
||||
# install & export
|
||||
|
||||
ov_developer_package_export_targets(TARGET ${TARGET_NAME}
|
||||
INSTALL_INCLUDE_DIRECTORIES "${PUBLIC_HEADERS_DIR}/")
|
||||
|
@ -9,11 +9,9 @@ ov_add_target(
|
||||
TYPE STATIC
|
||||
ROOT "${CMAKE_CURRENT_SOURCE_DIR}/include"
|
||||
ADD_CPPLINT
|
||||
DEVELOPER_PACKAGE
|
||||
tests
|
||||
INCLUDES
|
||||
PUBLIC
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/include"
|
||||
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
|
||||
ADDITIONAL_SOURCE_DIRS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/src
|
||||
LINK_LIBRARIES
|
||||
@ -25,3 +23,8 @@ ov_add_target(
|
||||
ov_build_target_faster(${TARGET_NAME}
|
||||
PCH PRIVATE "src/precomp.hpp"
|
||||
)
|
||||
|
||||
# install & export
|
||||
|
||||
ov_developer_package_export_targets(TARGET ${TARGET_NAME}
|
||||
INSTALL_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR}/include/")
|
||||
|
@ -12,7 +12,7 @@ ov_add_target(
|
||||
ROOT ${PUBLIC_HEADERS_DIR}
|
||||
INCLUDES
|
||||
PUBLIC
|
||||
${PUBLIC_HEADERS_DIR}
|
||||
"$<BUILD_INTERFACE:${PUBLIC_HEADERS_DIR}>"
|
||||
ADDITIONAL_SOURCE_DIRS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/src
|
||||
LINK_LIBRARIES
|
||||
@ -20,13 +20,14 @@ ov_add_target(
|
||||
ov_models
|
||||
openvino::runtime::dev
|
||||
ADD_CPPLINT
|
||||
DEPENDENCIES
|
||||
ov_models
|
||||
DEVELOPER_PACKAGE
|
||||
tests
|
||||
)
|
||||
|
||||
ov_build_target_faster(${TARGET_NAME}
|
||||
UNITY
|
||||
PCH PRIVATE "src/precomp.hpp"
|
||||
)
|
||||
|
||||
# install & export
|
||||
|
||||
ov_developer_package_export_targets(TARGET ${TARGET_NAME}
|
||||
INSTALL_INCLUDE_DIRECTORIES "${PUBLIC_HEADERS_DIR}/")
|
||||
|
@ -12,22 +12,25 @@ ov_add_target(
|
||||
ROOT ${PUBLIC_HEADERS_DIR}
|
||||
INCLUDES
|
||||
PUBLIC
|
||||
${PUBLIC_HEADERS_DIR}
|
||||
"$<BUILD_INTERFACE:${PUBLIC_HEADERS_DIR}>"
|
||||
ADDITIONAL_SOURCE_DIRS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/src
|
||||
LINK_LIBRARIES
|
||||
PUBLIC
|
||||
openvino::runtime
|
||||
openvino::reference
|
||||
interpreter_backend
|
||||
openvino::interpreter_backend
|
||||
openvino::runtime::dev
|
||||
common_test_utils
|
||||
ADD_CLANG_FORMAT
|
||||
DEVELOPER_PACKAGE
|
||||
tests
|
||||
)
|
||||
|
||||
ov_build_target_faster(${TARGET_NAME}
|
||||
UNITY
|
||||
PCH PRIVATE "src/precomp.hpp"
|
||||
)
|
||||
|
||||
# install & export
|
||||
|
||||
ov_developer_package_export_targets(TARGET ${TARGET_NAME}
|
||||
INSTALL_INCLUDE_DIRECTORIES "${PUBLIC_HEADERS_DIR}/")
|
||||
|
@ -5,8 +5,6 @@
|
||||
set(TARGET_NAME ov_snippets_models)
|
||||
|
||||
set(PUBLIC_HEADERS_DIR "${CMAKE_CURRENT_SOURCE_DIR}/include")
|
||||
set(SNIPPETS_INCLUDES "$<TARGET_PROPERTY:openvino::snippets,SOURCE_DIR>/include")
|
||||
set(COMMON_TEST_UTILS_INCLUDES "$<TARGET_PROPERTY:common_test_utils,INTERFACE_INCLUDE_DIRECTORIES>")
|
||||
|
||||
ov_add_target(
|
||||
NAME ${TARGET_NAME}
|
||||
@ -14,11 +12,8 @@ ov_add_target(
|
||||
ROOT ${PUBLIC_HEADERS_DIR}
|
||||
INCLUDES
|
||||
PUBLIC
|
||||
${PUBLIC_HEADERS_DIR}
|
||||
${COMMON_TEST_UTILS_INCLUDES}
|
||||
PRIVATE
|
||||
${SNIPPETS_INCLUDES}
|
||||
|
||||
"$<BUILD_INTERFACE:${PUBLIC_HEADERS_DIR}>"
|
||||
"$<BUILD_INTERFACE:${COMMON_TEST_UTILS_INCLUDES}>"
|
||||
ADDITIONAL_SOURCE_DIRS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/src
|
||||
LINK_LIBRARIES
|
||||
@ -28,11 +23,14 @@ ov_add_target(
|
||||
openvino::snippets
|
||||
ov_lpt_models
|
||||
ADD_CPPLINT
|
||||
DEVELOPER_PACKAGE
|
||||
tests
|
||||
)
|
||||
|
||||
ov_build_target_faster(${TARGET_NAME}
|
||||
UNITY
|
||||
PCH PRIVATE "src/precomp.hpp"
|
||||
)
|
||||
|
||||
# install & export
|
||||
|
||||
ov_developer_package_export_targets(TARGET ${TARGET_NAME}
|
||||
INSTALL_INCLUDE_DIRECTORIES "${PUBLIC_HEADERS_DIR}/")
|
||||
|
@ -23,8 +23,6 @@ function(add_common_utils ADD_TARGET_NAME)
|
||||
EXCLUDED_SOURCE_PATHS
|
||||
${TARGET_EXCLUDED_SOURCE_PATHS}
|
||||
ADD_CLANG_FORMAT
|
||||
DEVELOPER_PACKAGE
|
||||
tests
|
||||
LINK_LIBRARIES
|
||||
PUBLIC
|
||||
gtest
|
||||
@ -38,12 +36,14 @@ function(add_common_utils ADD_TARGET_NAME)
|
||||
openvino::shape_inference
|
||||
INCLUDES
|
||||
PUBLIC
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/include"
|
||||
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
|
||||
PRIVATE
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/src"
|
||||
|
||||
)
|
||||
|
||||
ov_developer_package_export_targets(TARGET ${ADD_TARGET_NAME}
|
||||
INSTALL_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR}/include/")
|
||||
|
||||
if(ENABLE_CONFORMANCE_PGQL)
|
||||
target_compile_definitions(${ADD_TARGET_NAME} PUBLIC ENABLE_CONFORMANCE_PGQL)
|
||||
endif()
|
||||
@ -58,31 +58,14 @@ function(add_common_utils ADD_TARGET_NAME)
|
||||
PCH PRIVATE "src/precomp.hpp"
|
||||
)
|
||||
|
||||
# detecting regex support
|
||||
if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.9)
|
||||
set(USE_BOOST_RE ON)
|
||||
endif()
|
||||
if (USE_BOOST_RE)
|
||||
target_compile_definitions(${ADD_TARGET_NAME} PUBLIC USE_BOOST_RE)
|
||||
|
||||
debug_message(STATUS "Adding boost dependency")
|
||||
if (CMAKE_VERBOSE_MAKEFILE)
|
||||
set(Boost_DEBUG on)
|
||||
endif ()
|
||||
find_package(Boost REQUIRED COMPONENTS regex)
|
||||
target_link_libraries(${ADD_TARGET_NAME} PUBLIC ${Boost_REGEX_LIBRARY})
|
||||
target_include_directories(${ADD_TARGET_NAME} PUBLIC ${Boost_INCLUDE_DIRS})
|
||||
endif ()
|
||||
|
||||
target_include_directories(${ADD_TARGET_NAME}
|
||||
PUBLIC
|
||||
$<TARGET_PROPERTY:openvino::runtime,INTERFACE_INCLUDE_DIRECTORIES>
|
||||
PRIVATE
|
||||
$<TARGET_PROPERTY:openvino::runtime::dev,INTERFACE_INCLUDE_DIRECTORIES>)
|
||||
target_include_directories(${ADD_TARGET_NAME} SYSTEM PUBLIC ${OV_TESTS_ROOT}/test_utils)
|
||||
target_include_directories(${ADD_TARGET_NAME} SYSTEM PUBLIC "$<BUILD_INTERFACE:${OV_TESTS_ROOT}/test_utils>")
|
||||
|
||||
target_compile_definitions(${ADD_TARGET_NAME} PUBLIC ${ARGN})
|
||||
|
||||
endfunction()
|
||||
|
||||
# Keep old name so that library can be used from NPU repo
|
||||
|
@ -9,11 +9,9 @@ ov_add_target(
|
||||
TYPE STATIC
|
||||
ROOT ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
ADD_CLANG_FORMAT
|
||||
DEVELOPER_PACKAGE
|
||||
tests
|
||||
INCLUDES
|
||||
PUBLIC
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/include"
|
||||
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
|
||||
ADDITIONAL_SOURCE_DIRS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/src
|
||||
LINK_LIBRARIES
|
||||
@ -24,13 +22,17 @@ ov_add_target(
|
||||
PRIVATE
|
||||
ov_models
|
||||
openvino::pugixml
|
||||
INCLUDES
|
||||
PUBLIC
|
||||
$<TARGET_PROPERTY:openvino::runtime::dev,INTERFACE_INCLUDE_DIRECTORIES>
|
||||
)
|
||||
|
||||
install(DIRECTORY layer_tests_summary DESTINATION tests/functional_test_utils COMPONENT tests EXCLUDE_FROM_ALL)
|
||||
|
||||
ov_build_target_faster(${TARGET_NAME}
|
||||
PCH PRIVATE "src/precomp.hpp"
|
||||
)
|
||||
|
||||
# install & export
|
||||
|
||||
install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/layer_tests_summary"
|
||||
DESTINATION tests/functional_test_utils
|
||||
COMPONENT tests EXCLUDE_FROM_ALL)
|
||||
|
||||
ov_developer_package_export_targets(TARGET ${TARGET_NAME}
|
||||
INSTALL_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR}/include/")
|
||||
|
@ -15,14 +15,20 @@ ov_add_target(
|
||||
TYPE STATIC
|
||||
ROOT ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
ADD_CLANG_FORMAT
|
||||
DEVELOPER_PACKAGE
|
||||
tests
|
||||
LINK_LIBRARIES
|
||||
PUBLIC
|
||||
common_test_utils_s
|
||||
inference_engine_s
|
||||
gmock
|
||||
DEPENDENCIES
|
||||
mock_engine
|
||||
INCLUDES
|
||||
PUBLIC
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/.."
|
||||
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/..>"
|
||||
)
|
||||
|
||||
# install & export
|
||||
|
||||
ov_developer_package_export_targets(TARGET ${TARGET_NAME}
|
||||
INSTALL_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR}/../unit_test_utils"
|
||||
INSTALL_DESTIONATION "developer_package/include/unit_test_utils/unit_test_utils")
|
||||
|
46
thirdparty/dependencies.cmake
vendored
46
thirdparty/dependencies.cmake
vendored
@ -51,9 +51,6 @@ if(X86_64 OR X86 OR UNIVERSAL2)
|
||||
# conan creates alias xbyak::xbyak, no extra steps are required
|
||||
else()
|
||||
add_subdirectory(thirdparty/xbyak EXCLUDE_FROM_ALL)
|
||||
# export and install xbyak
|
||||
openvino_developer_export_targets(COMPONENT openvino_common TARGETS xbyak::xbyak)
|
||||
ov_install_static_lib(xbyak ${OV_CPACK_COMP_CORE})
|
||||
endif()
|
||||
endif()
|
||||
|
||||
@ -269,12 +266,32 @@ if(NOT TARGET openvino::pugixml)
|
||||
function(ov_build_pugixml)
|
||||
function(ov_build_pugixml_static)
|
||||
set(BUILD_SHARED_LIBS OFF)
|
||||
function(install)
|
||||
cmake_parse_arguments(_install "" "EXPORT" "" ${ARGV})
|
||||
if(_install_EXPORT STREQUAL "pugixml-targets")
|
||||
# does nothing!
|
||||
# we need to override 'export' command to prevent cmake issue with multiple
|
||||
# export sets for pugixml-target. Currently, it's installed only by OpenVINO
|
||||
else()
|
||||
_install(${ARGV})
|
||||
endif()
|
||||
endfunction()
|
||||
function(export)
|
||||
cmake_parse_arguments(_export "" "EXPORT" "" ${ARGV})
|
||||
if(_export_EXPORT STREQUAL "pugixml-targets")
|
||||
# does nothing!
|
||||
# we need to override 'export' command to prevent cmake issue with multiple
|
||||
# export sets for pugixml-target. Currently, it's installed only by OpenVINO
|
||||
else()
|
||||
_export(${ARGV})
|
||||
endif()
|
||||
endfunction()
|
||||
add_subdirectory(thirdparty/pugixml EXCLUDE_FROM_ALL)
|
||||
endfunction()
|
||||
ov_build_pugixml_static()
|
||||
set_property(TARGET pugixml-static PROPERTY EXPORT_NAME pugixml)
|
||||
add_library(openvino::pugixml ALIAS pugixml-static)
|
||||
openvino_developer_export_targets(COMPONENT openvino_common TARGETS openvino::pugixml)
|
||||
ov_developer_package_export_targets(TARGET openvino::pugixml)
|
||||
ov_install_static_lib(pugixml-static ${OV_CPACK_COMP_CORE})
|
||||
endfunction()
|
||||
|
||||
@ -300,7 +317,7 @@ if(ENABLE_GAPI_PREPROCESSING)
|
||||
add_subdirectory(thirdparty/ade EXCLUDE_FROM_ALL)
|
||||
|
||||
set_target_properties(ade PROPERTIES FOLDER thirdparty)
|
||||
openvino_developer_export_targets(COMPONENT openvino_common TARGETS ade)
|
||||
ov_developer_package_export_targets(TARGET ade)
|
||||
|
||||
ov_install_static_lib(ade ${OV_CPACK_COMP_CORE})
|
||||
endif()
|
||||
@ -316,7 +333,7 @@ if(ENABLE_GAPI_PREPROCESSING)
|
||||
endif()
|
||||
|
||||
set_target_properties(fluid PROPERTIES FOLDER thirdparty)
|
||||
openvino_developer_export_targets(COMPONENT openvino_common TARGETS fluid)
|
||||
ov_developer_package_export_targets(TARGET fluid)
|
||||
|
||||
ov_install_static_lib(fluid ${OV_CPACK_COMP_CORE})
|
||||
endif()
|
||||
@ -369,7 +386,7 @@ if(ENABLE_SAMPLES OR ENABLE_TESTS)
|
||||
|
||||
if(NOT TARGET gflags)
|
||||
add_subdirectory(thirdparty/gflags EXCLUDE_FROM_ALL)
|
||||
openvino_developer_export_targets(COMPONENT openvino_common TARGETS gflags)
|
||||
ov_developer_package_export_targets(TARGET gflags)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
@ -391,8 +408,14 @@ if(ENABLE_TESTS)
|
||||
endforeach()
|
||||
else()
|
||||
add_subdirectory(thirdparty/gtest EXCLUDE_FROM_ALL)
|
||||
openvino_developer_export_targets(COMPONENT tests
|
||||
TARGETS gmock gmock_main gtest gtest_main)
|
||||
# install & export
|
||||
set(googletest_root "${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/gtest/gtest")
|
||||
ov_developer_package_export_targets(TARGET gtest_main
|
||||
INSTALL_INCLUDE_DIRECTORIES "${googletest_root}/googletest/include/")
|
||||
ov_developer_package_export_targets(TARGET gtest
|
||||
INSTALL_INCLUDE_DIRECTORIES "${googletest_root}/googletest/include/")
|
||||
ov_developer_package_export_targets(TARGET gmock
|
||||
INSTALL_INCLUDE_DIRECTORIES "${googletest_root}/googlemock/include/")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
@ -585,8 +608,9 @@ if(ENABLE_SAMPLES)
|
||||
else()
|
||||
add_subdirectory(thirdparty/json EXCLUDE_FROM_ALL)
|
||||
|
||||
# this is required only because of NPU plugin reused this
|
||||
openvino_developer_export_targets(COMPONENT openvino_common TARGETS nlohmann_json)
|
||||
# this is required only because of NPU plugin reused this: export & install
|
||||
ov_developer_package_export_targets(TARGET nlohmann_json
|
||||
INSTALL_INCLUDE_DIRECTORIES "${OpenVINO_SOURCE_DIR}/thirdparty/json/nlohmann_json/include")
|
||||
|
||||
# for nlohmann library versions older than v3.0.0
|
||||
if(NOT TARGET nlohmann_json::nlohmann_json)
|
||||
|
34
thirdparty/gtest/CMakeLists.txt
vendored
34
thirdparty/gtest/CMakeLists.txt
vendored
@ -14,16 +14,31 @@ set(INSTALL_GTEST OFF CACHE BOOL "" FORCE)
|
||||
|
||||
add_subdirectory(gtest EXCLUDE_FROM_ALL)
|
||||
|
||||
get_target_property(gtest_include_dirs gtest INTERFACE_INCLUDE_DIRECTORIES)
|
||||
set_target_properties(gtest PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES "${gtest_include_dirs}")
|
||||
function(_ov_gtest_filter_install_interface TARGET TYPE)
|
||||
set(final_include_dirs "$<INSTALL_INTERFACE:developer_package/include/${TYPE}>")
|
||||
|
||||
get_target_property(gmock_include_dirs gtest INTERFACE_INCLUDE_DIRECTORIES)
|
||||
set_target_properties(gmock PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES
|
||||
"${gmock_include_dirs};${gmock_SOURCE_DIR}/include")
|
||||
get_target_property(include_dirs ${TARGET} INTERFACE_INCLUDE_DIRECTORIES)
|
||||
foreach(include_dir IN LISTS include_dirs)
|
||||
if(NOT include_dir MATCHES ".*INSTALL_INTERFACE.*")
|
||||
# remove leading and trailing parts of generator expressions
|
||||
string(REPLACE "$<BUILD_INTERFACE:" "" include_dir "${include_dir}")
|
||||
string(REPLACE ">" "" include_dir "${include_dir}")
|
||||
# wrap to BUILD_INTERFACE again
|
||||
list(APPEND final_include_dirs "$<BUILD_INTERFACE:${include_dir}>")
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
set(gtest_targets gtest gtest_main gmock gmock_main)
|
||||
set_target_properties(${TARGET} PROPERTIES
|
||||
INTERFACE_INCLUDE_DIRECTORIES "${final_include_dirs}"
|
||||
INTERFACE_SYSTEM_INCLUDE_DIRECTORIES "${final_include_dirs}")
|
||||
endfunction()
|
||||
|
||||
foreach(target IN LISTS gtest_targets)
|
||||
_ov_gtest_filter_install_interface(gtest gtest)
|
||||
_ov_gtest_filter_install_interface(gtest_main gtest)
|
||||
_ov_gtest_filter_install_interface(gmock gmock)
|
||||
_ov_gtest_filter_install_interface(gmock_main gmock)
|
||||
|
||||
foreach(target gtest gtest_main gmock gmock_main)
|
||||
# If we have specified /Z7 option, remove -Zi option which comes from gtest
|
||||
if (CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
|
||||
get_target_property(_target_cxx_flags ${target} COMPILE_OPTIONS)
|
||||
@ -41,8 +56,7 @@ foreach(target IN LISTS gtest_targets)
|
||||
target_compile_options(${target} PRIVATE -Wno-deprecated-copy)
|
||||
endif()
|
||||
endif()
|
||||
# disable warnings
|
||||
ov_disable_all_warnings(${target})
|
||||
set_target_properties(${target} PROPERTIES FOLDER thirdparty)
|
||||
endforeach()
|
||||
|
||||
set_target_properties(${gtest_targets}
|
||||
PROPERTIES FOLDER thirdparty)
|
||||
|
6
thirdparty/ittapi/CMakeLists.txt
vendored
6
thirdparty/ittapi/CMakeLists.txt
vendored
@ -4,8 +4,8 @@
|
||||
|
||||
if(DEFINED INTEL_VTUNE_DIR OR DEFINED ENV{INTEL_VTUNE_DIR})
|
||||
find_package(ITT
|
||||
PATHS "${OpenVINO_SOURCE_DIR}/src/common/itt/cmake"
|
||||
NO_DEFAULT_PATH)
|
||||
PATHS "${OpenVINO_SOURCE_DIR}/src/common/itt/cmake"
|
||||
NO_DEFAULT_PATH)
|
||||
if(NOT ITT_FOUND)
|
||||
message(WARNING "Profiling option enabled, but no ITT library was found under INTEL_VTUNE_DIR")
|
||||
endif()
|
||||
@ -25,6 +25,6 @@ else()
|
||||
# create alias ittapi::ittnotify
|
||||
add_library(ittapi::ittnotify ALIAS ittnotify)
|
||||
|
||||
openvino_developer_export_targets(COMPONENT openvino_common TARGETS ittapi::ittnotify)
|
||||
ov_developer_package_export_targets(TARGET ittapi::ittnotify)
|
||||
ov_install_static_lib(ittnotify ${OV_CPACK_COMP_CORE})
|
||||
endif()
|
||||
|
Loading…
Reference in New Issue
Block a user