From ce7455ddb03766bd1f9fdb51ab47abe71b34af91 Mon Sep 17 00:00:00 2001 From: Ilya Lavrenov Date: Tue, 8 Nov 2022 15:04:57 +0400 Subject: [PATCH] Added option to disable compile_tool (#13903) * Updated pugixml * Added option to disable compile_tool --- .../ncc_naming_style/requirements_dev.txt | 1 + cmake/features.cmake | 2 + thirdparty/CMakeLists.txt | 60 ++++++++++--------- thirdparty/pugixml | 2 +- tools/CMakeLists.txt | 4 +- 5 files changed, 38 insertions(+), 31 deletions(-) diff --git a/cmake/developer_package/ncc_naming_style/requirements_dev.txt b/cmake/developer_package/ncc_naming_style/requirements_dev.txt index ba8aea0d637..d7e1d3f8310 100644 --- a/cmake/developer_package/ncc_naming_style/requirements_dev.txt +++ b/cmake/developer_package/ncc_naming_style/requirements_dev.txt @@ -2,4 +2,5 @@ clang==11.1.0; python_version == '3.7' clang==12.0.1; python_version == '3.8' clang==12.0.1; python_version == '3.9' clang==14.0; python_version == '3.10' +clang==14.0; python_version == '3.11' pyyaml \ No newline at end of file diff --git a/cmake/features.cmake b/cmake/features.cmake index c9f8caa91f1..f2c617d95cc 100644 --- a/cmake/features.cmake +++ b/cmake/features.cmake @@ -10,6 +10,8 @@ ie_dependent_option (ENABLE_INTEL_CPU "CPU plugin for inference engine" ON "X86_ ie_option (ENABLE_TESTS "unit, behavior and functional tests" OFF) +ie_option (ENABLE_COMPILE_TOOL "Enables compile_tool" ON) + ie_option (ENABLE_STRICT_DEPENDENCIES "Skip configuring \"convinient\" dependencies for efficient parallel builds" ON) ie_dependent_option (ENABLE_CLDNN "clDnn based plugin for inference engine" ON "X86_64;NOT APPLE;NOT MINGW;NOT WINDOWS_STORE;NOT WINDOWS_PHONE" OFF) diff --git a/thirdparty/CMakeLists.txt b/thirdparty/CMakeLists.txt index 6f604949e72..e2820d483f3 100644 --- a/thirdparty/CMakeLists.txt +++ b/thirdparty/CMakeLists.txt @@ -171,39 +171,41 @@ endif() # Gflags # -if(NOT APPLE OR CPACK_GENERATOR MATCHES "^(BREW|CONDA-FORGE)$") - # - on Apple only dynamic libraries are available - # also, we can easily mix arm64 and x86_64 binaries when cross-compile for Intel CPU +if(ENABLE_SAMPLES OR ENABLE_COMPILE_TOOL) + if(NOT APPLE OR CPACK_GENERATOR MATCHES "^(BREW|CONDA-FORGE)$") + # - on Apple only dynamic libraries are available + # also, we can easily mix arm64 and x86_64 binaries when cross-compile for Intel CPU - if(CPACK_GENERATOR MATCHES "^(BREW|CONDA-FORGE)$" OR DEFINED ENV{HOMEBREW_PREFIX} OR LINUX_OS_NAME MATCHES "(Fedora|CentOS)") - # conda-forge and brew contains only shared version of gflags - find_package(gflags QUIET COMPONENTS nothreads_shared) - else() - find_package(gflags QUIET COMPONENTS nothreads_static) + if(CPACK_GENERATOR MATCHES "^(BREW|CONDA-FORGE)$" OR DEFINED ENV{HOMEBREW_PREFIX} OR LINUX_OS_NAME MATCHES "(Fedora|CentOS)") + # conda-forge and brew contains only shared version of gflags + find_package(gflags QUIET COMPONENTS nothreads_shared) + else() + find_package(gflags QUIET COMPONENTS nothreads_static) + endif() endif() -endif() -if(gflags_FOUND) - if(TARGET gflags) - set_target_properties(gflags PROPERTIES IMPORTED_GLOBAL ON) - elseif(TARGET gflags_nothreads-shared) - # gflags shared case for CentOS/RHEL8 - set_target_properties(gflags_nothreads-shared PROPERTIES IMPORTED_GLOBAL ON) - add_library(gflags ALIAS gflags_nothreads-shared) - elseif(TARGET gflags_nothreads-static) - # debian_9_arm case - set_target_properties(gflags_nothreads-static PROPERTIES IMPORTED_GLOBAL ON) - add_library(gflags ALIAS gflags_nothreads-static) - elseif(TARGET ${GFLAGS_TARGET}) - set_target_properties(${GFLAGS_TARGET} PROPERTIES IMPORTED_GLOBAL ON) - add_library(gflags ALIAS ${GFLAGS_TARGET}) + if(gflags_FOUND) + if(TARGET gflags) + set_target_properties(gflags PROPERTIES IMPORTED_GLOBAL ON) + elseif(TARGET gflags_nothreads-shared) + # gflags shared case for CentOS/RHEL8 + set_target_properties(gflags_nothreads-shared PROPERTIES IMPORTED_GLOBAL ON) + add_library(gflags ALIAS gflags_nothreads-shared) + elseif(TARGET gflags_nothreads-static) + # debian_9_arm case + set_target_properties(gflags_nothreads-static PROPERTIES IMPORTED_GLOBAL ON) + add_library(gflags ALIAS gflags_nothreads-static) + elseif(TARGET ${GFLAGS_TARGET}) + set_target_properties(${GFLAGS_TARGET} PROPERTIES IMPORTED_GLOBAL ON) + add_library(gflags ALIAS ${GFLAGS_TARGET}) + else() + message(FATAL_ERROR "Internal error: failed to find imported target 'gflags'") + endif() + message(STATUS "gflags (${gflags_VERSION}) is found at ${gflags_DIR}") else() - message(FATAL_ERROR "Internal error: failed to find imported target 'gflags'") + add_subdirectory(gflags EXCLUDE_FROM_ALL) + openvino_developer_export_targets(COMPONENT openvino_common TARGETS gflags) endif() - message(STATUS "gflags (${gflags_VERSION}) is found at ${gflags_DIR}") -else() - add_subdirectory(gflags EXCLUDE_FROM_ALL) - openvino_developer_export_targets(COMPONENT openvino_common TARGETS gflags) endif() # @@ -295,7 +297,7 @@ ov_install_static_lib(nlohmann_json_schema_validator ${OV_CPACK_COMP_CORE}) if(CPACK_GENERATOR MATCHES "^(DEB|RPM|CONDA-FORGE|BREW)$") # These libraries are dependencies for openvino-samples package - if(NOT gflags_FOUND) + if((ENABLE_SAMPLES OR ENABLE_COMPILE_TOOL) AND NOT gflags_FOUND) message(FATAL_ERROR "gflags must be used as a ${CPACK_GENERATOR} package. Install libgflags-dev / gflags-devel") endif() if(NOT zlib_FOUND) diff --git a/thirdparty/pugixml b/thirdparty/pugixml index 08b34331807..a0e06433631 160000 --- a/thirdparty/pugixml +++ b/thirdparty/pugixml @@ -1 +1 @@ -Subproject commit 08b3433180727ea2f78fe02e860a08471db1e03c +Subproject commit a0e064336317c9347a91224112af9933598714e9 diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt index 024a5475d4c..4da985288ba 100644 --- a/tools/CMakeLists.txt +++ b/tools/CMakeLists.txt @@ -5,7 +5,9 @@ # C++ tools # -add_subdirectory(compile_tool) +if(ENABLE_COMPILE_TOOL) + add_subdirectory(compile_tool) +endif() if(ENABLE_SAMPLES) add_subdirectory(legacy/benchmark_app)