Fixed compilation when NN builder is not built
authorIlya Lavrenov <ilya.lavrenov@intel.com>
Sun, 12 Apr 2020 20:36:21 +0000 (23:36 +0300)
committerIlya Lavrenov <ilya.lavrenov@intel.com>
Tue, 14 Apr 2020 12:05:01 +0000 (15:05 +0300)
modules/dnn/CMakeLists.txt
modules/dnn/src/op_inf_engine.hpp

index 8b7dd2f..8b7ab91 100644 (file)
@@ -107,7 +107,13 @@ endif()
 
 set(dnn_runtime_libs "")
 if(INF_ENGINE_TARGET)
-  ocv_option(OPENCV_DNN_IE_NN_BUILDER_2019 "Build with Inference Engine NN Builder API support" ON)  # future: NOT HAVE_NGRAPH
+  set(use_nn_builder OFF)
+  if(TARGET inference_engine_nn_builder OR # custom imported target
+     TARGET IE::inference_engine_nn_builder OR # default imported target via InferenceEngineConfig.cmake
+     INF_ENGINE_RELEASE VERSION_LESS "2020000000") # compatibility with older versions on IE
+    set(use_nn_builder ON)
+  endif()
+  ocv_option(OPENCV_DNN_IE_NN_BUILDER_2019 "Build with Inference Engine NN Builder API support" ${use_nn_builder})  # future: NOT HAVE_NGRAPH
   if(OPENCV_DNN_IE_NN_BUILDER_2019)
     message(STATUS "DNN: Enabling Inference Engine NN Builder API support")
     add_definitions(-DHAVE_DNN_IE_NN_BUILDER_2019=1)
index 54bc769..59fa920 100644 (file)
@@ -58,7 +58,9 @@
 
 #include <inference_engine.hpp>
 
+#ifdef HAVE_DNN_IE_NN_BUILDER_2019
 #include <ie_builders.hpp>
+#endif
 
 #if defined(__GNUC__) && INF_ENGINE_VER_MAJOR_LT(INF_ENGINE_RELEASE_2020_1)
 #pragma GCC visibility pop