Publishing 2019 R1 content
[platform/upstream/dldt.git] / inference-engine / tests / helpers / CMakeLists.txt
index 4ab1278..9c1e197 100644 (file)
@@ -1,8 +1,7 @@
-# Copyright (C) 2018 Intel Corporation
+# Copyright (C) 2018-2019 Intel Corporation
 # SPDX-License-Identifier: Apache-2.0
 #
 
-cmake_minimum_required(VERSION 2.8)
 set(TARGET_NAME helpers)
 
 file(GLOB HELPERS_SRC
@@ -15,16 +14,49 @@ file (GLOB HELPERS_INCLUDES
       )
 
 ## Enable Models multiple search pathes
-message("configuring file: ${PROJECT_BINARY_DIR}/test_model_repo.h")
-configure_file(test_model_repo.hpp.in ${PROJECT_BINARY_DIR}/test_model_repo.hpp @ONLY)
+message("configuring file: ${CMAKE_CURRENT_BINARY_DIR}/test_model_repo.h")
+configure_file(test_model_repo.hpp.in ${CMAKE_CURRENT_BINARY_DIR}/test_model_repo.hpp @ONLY)
 
 
 add_library(${TARGET_NAME} STATIC
             ${HELPERS_SRC}
             ${HELPERS_HEADERS})
 
-target_include_directories(${TARGET_NAME} PUBLIC ${PROJECT_BINARY_DIR})
-target_compile_definitions(${TARGET_NAME} PUBLIC -DMODELS_PATH=\"${MODELS_PATH}\")
+# detecting regex support
+if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.9)
+    target_compile_definitions(${TARGET_NAME} PUBLIC USE_BOOST_RE)
+
+    debug_message(STATUS "Adding boost dependency")
+    if (VERBOSE_BUILD)
+        set(Boost_DEBUG on)
+    endif ()
+    find_package(Boost REQUIRED COMPONENTS regex)
+    target_link_libraries(${TARGET_NAME} PUBLIC ${Boost_REGEX_LIBRARY})
+    target_include_directories(${TARGET_NAME} PUBLIC ${Boost_INCLUDE_DIRS})
+endif()
+
+if(MSVC)
+    set(PUGI pugixml_mt)
+else()
+    set(PUGI pugixml)
+endif()
+
+if(WIN32)
+    target_include_directories(${TARGET_NAME} PUBLIC "${IE_MAIN_SOURCE_DIR}/samples/common")
+endif()
+
+target_link_libraries(${TARGET_NAME} PUBLIC inference_engine ${PUGI})
+
+target_include_directories(${TARGET_NAME} PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}" "${gtest_SOURCE_DIR}/include"
+                                                 "${IE_MAIN_SOURCE_DIR}/src" "${IE_MAIN_SOURCE_DIR}/thirdparty/pugixml/src"
+                                                 "${gmock_SOURCE_DIR}/include"
+                                                                                                     PRIVATE "${CMAKE_CURRENT_BINARY_DIR}")
+
+# TODO: eliminate dependency on samples
+target_include_directories(${TARGET_NAME} PUBLIC 
+    "${IE_MAIN_SOURCE_DIR}/samples/common")
+
+target_compile_definitions(${TARGET_NAME} PUBLIC MODELS_PATH=\"${MODELS_PATH}\" DATA_PATH=\"${VALIDATION_SET}\")
 
 set_property(TARGET ${TARGET_NAME} PROPERTY CXX_STANDARD 11)
 set_property(TARGET ${TARGET_NAME} PROPERTY CXX_STANDARD_REQUIRED ON)