cmake: fix handling of INF_ENGINE_RELEASE
authorAlexander Alekhin <alexander.a.alekhin@gmail.com>
Tue, 14 Sep 2021 04:15:35 +0000 (04:15 +0000)
committerAlexander Alekhin <alexander.a.alekhin@gmail.com>
Tue, 14 Sep 2021 08:56:09 +0000 (08:56 +0000)
- default value should be handled earlier

cmake/OpenCVDetectInferenceEngine.cmake

index 41951b7..35640fa 100644 (file)
@@ -105,6 +105,20 @@ if(InferenceEngine_FOUND)
   message(STATUS "Detected InferenceEngine: cmake package (${InferenceEngine_VERSION})")
 endif()
 
+if(DEFINED InferenceEngine_VERSION)
+  message(STATUS "InferenceEngine: ${InferenceEngine_VERSION}")
+  if(NOT INF_ENGINE_RELEASE AND NOT (InferenceEngine_VERSION VERSION_LESS "2021.4"))
+    math(EXPR INF_ENGINE_RELEASE_INIT "${InferenceEngine_VERSION_MAJOR} * 1000000 + ${InferenceEngine_VERSION_MINOR} * 10000 + ${InferenceEngine_VERSION_PATCH} * 100")
+  endif()
+endif()
+if(NOT INF_ENGINE_RELEASE AND NOT INF_ENGINE_RELEASE_INIT)
+  message(STATUS "WARNING: InferenceEngine version has not been set, 2021.4.1 will be used by default. Set INF_ENGINE_RELEASE variable if you experience build errors.")
+  set(INF_ENGINE_RELEASE_INIT "2021040100")
+elseif(DEFINED INF_ENGINE_RELEASE)
+  set(INF_ENGINE_RELEASE_INIT "${INF_ENGINE_RELEASE}")
+endif()
+set(INF_ENGINE_RELEASE "${INF_ENGINE_RELEASE_INIT}" CACHE STRING "Force IE version, should be in form YYYYAABBCC (e.g. 2020.1.0.2 -> 2020010002)")
+
 if(NOT INF_ENGINE_TARGET AND INF_ENGINE_LIB_DIRS AND INF_ENGINE_INCLUDE_DIRS)
   find_path(ie_custom_inc "inference_engine.hpp" PATHS "${INF_ENGINE_INCLUDE_DIRS}" NO_DEFAULT_PATH)
   if(CMAKE_BUILD_TYPE STREQUAL "Debug")
@@ -140,19 +154,6 @@ endif()
 # Add more features to the target
 
 if(INF_ENGINE_TARGET)
-  if(DEFINED InferenceEngine_VERSION)
-    message(STATUS "InferenceEngine: ${InferenceEngine_VERSION}")
-    if(NOT INF_ENGINE_RELEASE AND NOT (InferenceEngine_VERSION VERSION_LESS "2021.4"))
-      math(EXPR INF_ENGINE_RELEASE_INIT "${InferenceEngine_VERSION_MAJOR} * 1000000 + ${InferenceEngine_VERSION_MINOR} * 10000 + ${InferenceEngine_VERSION_PATCH} * 100")
-    endif()
-  endif()
-  if(NOT INF_ENGINE_RELEASE AND NOT INF_ENGINE_RELEASE_INIT)
-    message(WARNING "InferenceEngine version has not been set, 2021.4.1 will be used by default. Set INF_ENGINE_RELEASE variable if you experience build errors.")
-    set(INF_ENGINE_RELEASE_INIT "2021040100")
-  elseif(DEFINED INF_ENGINE_RELEASE)
-    set(INF_ENGINE_RELEASE_INIT "${INF_ENGINE_RELEASE}")
-  endif()
-  set(INF_ENGINE_RELEASE "${INF_ENGINE_RELEASE_INIT}" CACHE STRING "Force IE version, should be in form YYYYAABBCC (e.g. 2020.1.0.2 -> 2020010002)")
   set_target_properties(${INF_ENGINE_TARGET} PROPERTIES
       INTERFACE_COMPILE_DEFINITIONS "HAVE_INF_ENGINE=1;INF_ENGINE_RELEASE=${INF_ENGINE_RELEASE}"
   )