Reorganize work with openvino/thirdparty (Copied from PR6744) (#6880)
* Copied PR6744 * Added CMakeLists.txt into gflags * Return gflags into .gitmodules * Added CMakeLists.txt into gtest * fix: remove extra gflags and gtests from .gitmodules * Change syntax in set gtest_targets * Make gtest/CMakeLists.txt as in PR6744 for pre-commit experiment * Update gtest/CMakeLists.txt * Change version of gtest repo * Return gtest info into .gitmodules * Update gflags version to currently used
This commit is contained in:
parent
9d9a24c914
commit
5292de5338
|
|
@ -18,12 +18,12 @@
|
|||
path = thirdparty/ade
|
||||
url = https://github.com/opencv/ade.git
|
||||
ignore = dirty
|
||||
[submodule "thirdparty/gflags"]
|
||||
path = thirdparty/gflags
|
||||
[submodule "thirdparty/gflags/gflags"]
|
||||
path = thirdparty/gflags/gflags
|
||||
url = https://github.com/gflags/gflags.git
|
||||
ignore = dirty
|
||||
[submodule "thirdparty/gtest"]
|
||||
path = thirdparty/gtest
|
||||
[submodule "thirdparty/gtest/gtest"]
|
||||
path = thirdparty/gtest/gtest
|
||||
url = https://github.com/openvinotoolkit/googletest.git
|
||||
ignore = dirty
|
||||
[submodule "thirdparty/ocl/icd_loader"]
|
||||
|
|
|
|||
|
|
@ -113,19 +113,7 @@ endif()
|
|||
|
||||
if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/gflags" AND
|
||||
NOT DEFINED OpenVINO_SOURCE_DIR)
|
||||
function(add_gflags)
|
||||
# common gflags settings
|
||||
set(GFLAGS_IS_SUBPROJECT TRUE)
|
||||
set(HAVE_SYS_STAT_H 1)
|
||||
set(HAVE_INTTYPES_H 1)
|
||||
set(INTTYPES_FORMAT C99)
|
||||
set(BUILD_TESTING OFF)
|
||||
set(BUILD_SHARED_LIBS OFF)
|
||||
|
||||
add_subdirectory(thirdparty/gflags EXCLUDE_FROM_ALL)
|
||||
set_target_properties(gflags_nothreads_static PROPERTIES FOLDER thirdparty)
|
||||
endfunction()
|
||||
add_gflags()
|
||||
add_subdirectory(thirdparty/gflags EXCLUDE_FROM_ALL)
|
||||
endif()
|
||||
|
||||
if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/zlib")
|
||||
|
|
|
|||
|
|
@ -11,28 +11,22 @@ add_library(${TARGET_NAME} STATIC ${SRC} ${HDR})
|
|||
|
||||
target_include_directories(${TARGET_NAME} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
||||
if(EXISTS "${OpenVINO_SOURCE_DIR}/thirdparty/gflags")
|
||||
function(add_gflags)
|
||||
set(GFLAGS_IS_SUBPROJECT TRUE)
|
||||
set(HAVE_SYS_STAT_H 1)
|
||||
set(HAVE_INTTYPES_H 1)
|
||||
set(INTTYPES_FORMAT C99)
|
||||
set(BUILD_TESTING OFF)
|
||||
set(BUILD_SHARED_LIBS OFF)
|
||||
add_subdirectory(${OpenVINO_SOURCE_DIR}/thirdparty/gflags
|
||||
${CMAKE_CURRENT_BINARY_DIR}/gflags_build
|
||||
EXCLUDE_FROM_ALL)
|
||||
set_target_properties(gflags_nothreads_static PROPERTIES FOLDER thirdparty)
|
||||
endfunction()
|
||||
add_gflags()
|
||||
endif()
|
||||
add_subdirectory(${OpenVINO_SOURCE_DIR}/thirdparty/gflags
|
||||
${CMAKE_CURRENT_BINARY_DIR}/gflags_build
|
||||
EXCLUDE_FROM_ALL)
|
||||
add_subdirectory(${OpenVINO_SOURCE_DIR}/thirdparty/gtest
|
||||
${CMAKE_CURRENT_BINARY_DIR}/gtest_build
|
||||
EXCLUDE_FROM_ALL)
|
||||
add_subdirectory(${OpenVINO_SOURCE_DIR}/thirdparty/pugixml
|
||||
${CMAKE_CURRENT_BINARY_DIR}/pugixml_build
|
||||
EXCLUDE_FROM_ALL)
|
||||
|
||||
add_subdirectory("${OpenVINO_SOURCE_DIR}/tests/lib" tests_shared_lib)
|
||||
target_link_libraries(${TARGET_NAME}
|
||||
PUBLIC
|
||||
IE::gtest
|
||||
IE::pugixml
|
||||
gtest
|
||||
pugixml
|
||||
gflags
|
||||
tests_shared_lib
|
||||
PRIVATE
|
||||
IE::gtest_main)
|
||||
gtest_main)
|
||||
|
|
|
|||
|
|
@ -8,20 +8,8 @@ file (GLOB SRC *.cpp)
|
|||
add_library(${TARGET_NAME} STATIC ${SRC})
|
||||
target_include_directories(${TARGET_NAME} PUBLIC "${CMAKE_SOURCE_DIR}/include")
|
||||
|
||||
if(EXISTS "${OpenVINO_SOURCE_DIR}/thirdparty/gflags")
|
||||
function(add_gflags)
|
||||
set(GFLAGS_IS_SUBPROJECT TRUE)
|
||||
set(HAVE_SYS_STAT_H 1)
|
||||
set(HAVE_INTTYPES_H 1)
|
||||
set(INTTYPES_FORMAT C99)
|
||||
set(BUILD_TESTING OFF)
|
||||
set(BUILD_SHARED_LIBS OFF)
|
||||
add_subdirectory(${OpenVINO_SOURCE_DIR}/thirdparty/gflags
|
||||
${CMAKE_CURRENT_BINARY_DIR}/gflags_build
|
||||
EXCLUDE_FROM_ALL)
|
||||
set_target_properties(gflags_nothreads_static PROPERTIES FOLDER thirdparty)
|
||||
endfunction()
|
||||
add_gflags()
|
||||
endif()
|
||||
add_subdirectory(${OpenVINO_SOURCE_DIR}/thirdparty/gflags
|
||||
${CMAKE_CURRENT_BINARY_DIR}/gflags_build
|
||||
EXCLUDE_FROM_ALL)
|
||||
|
||||
target_link_libraries(${TARGET_NAME} gflags)
|
||||
|
|
|
|||
|
|
@ -54,72 +54,18 @@ openvino_developer_export_targets(COMPONENT openvino_common TARGETS ade fluid)
|
|||
# Gflags
|
||||
#
|
||||
|
||||
function(add_gflags)
|
||||
# common gflags settings
|
||||
set(GFLAGS_IS_SUBPROJECT TRUE)
|
||||
set(HAVE_SYS_STAT_H 1)
|
||||
set(HAVE_INTTYPES_H 1)
|
||||
set(INTTYPES_FORMAT C99)
|
||||
set(BUILD_TESTING OFF)
|
||||
set(BUILD_SHARED_LIBS OFF)
|
||||
|
||||
add_subdirectory(gflags EXCLUDE_FROM_ALL)
|
||||
|
||||
set_target_properties(gflags_nothreads_static PROPERTIES FOLDER thirdparty)
|
||||
openvino_developer_export_targets(COMPONENT openvino_common TARGETS gflags)
|
||||
endfunction()
|
||||
|
||||
add_gflags()
|
||||
add_subdirectory(gflags EXCLUDE_FROM_ALL)
|
||||
openvino_developer_export_targets(COMPONENT openvino_common TARGETS gflags)
|
||||
|
||||
#
|
||||
# Google Tests framework
|
||||
#
|
||||
|
||||
function(add_gtest_libraries)
|
||||
set(gtest_force_shared_crt ON CACHE BOOL "disable static CRT for google test")
|
||||
|
||||
set(BUILD_SHARED_LIBS OFF)
|
||||
set(INSTALL_GTEST OFF CACHE BOOL "" FORCE)
|
||||
if(NGRAPH_UNIT_TEST_ENABLE OR ENABLE_TESTS)
|
||||
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}")
|
||||
|
||||
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")
|
||||
|
||||
set(gtest_targets gtest gtest_main gmock gmock_main)
|
||||
|
||||
foreach(target IN LISTS gtest_targets)
|
||||
# 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)
|
||||
if(_target_cxx_flags)
|
||||
if(CMAKE_CXX_FLAGS_DEBUG MATCHES ".+/Z7.+" OR CMAKE_CXX_FLAGS_RELWITHDEBINFO MATCHES ".+/Z7.+")
|
||||
string(REPLACE "-Zi" " " _target_cxx_flags ${_target_cxx_flags})
|
||||
message(STATUS "Removing -Zi flag from target " ${target})
|
||||
set_target_properties(${target} PROPERTIES COMPILE_OPTIONS "${_target_cxx_flags}")
|
||||
endif()
|
||||
endif()
|
||||
elseif(CMAKE_COMPILER_IS_GNUCXX OR OV_COMPILER_IS_CLANG OR
|
||||
CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
|
||||
target_compile_options(${target} PRIVATE -Wno-undef)
|
||||
if(CMAKE_COMPILER_IS_GNUCXX)
|
||||
target_compile_options(${target} PRIVATE -Wno-deprecated-copy)
|
||||
endif()
|
||||
endif()
|
||||
ov_disable_all_warnings(${target})
|
||||
endforeach()
|
||||
|
||||
set_target_properties(gtest gtest_main gmock gmock_main
|
||||
PROPERTIES FOLDER thirdparty)
|
||||
|
||||
openvino_developer_export_targets(COMPONENT inference_engine_tests
|
||||
TARGETS gmock gmock_main gtest gtest_main)
|
||||
endfunction()
|
||||
|
||||
if(NGRAPH_UNIT_TEST_ENABLE OR ENABLE_TESTS)
|
||||
add_gtest_libraries()
|
||||
endif()
|
||||
|
||||
#
|
||||
|
|
|
|||
|
|
@ -0,0 +1,13 @@
|
|||
# Copyright (C) 2018-2021 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
set(GFLAGS_IS_SUBPROJECT TRUE)
|
||||
set(HAVE_SYS_STAT_H 1)
|
||||
set(HAVE_INTTYPES_H 1)
|
||||
set(INTTYPES_FORMAT C99)
|
||||
set(BUILD_TESTING OFF)
|
||||
set(BUILD_SHARED_LIBS OFF)
|
||||
|
||||
add_subdirectory(gflags EXCLUDE_FROM_ALL)
|
||||
set_target_properties(gflags_nothreads_static PROPERTIES FOLDER thirdparty)
|
||||
|
|
@ -0,0 +1,55 @@
|
|||
# Copyright (C) 2018-2021 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
#
|
||||
# Adds compiler flags to C / C++ sources
|
||||
#
|
||||
macro(add_compiler_flags)
|
||||
foreach(flag ${ARGN})
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${flag}")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${flag}")
|
||||
endforeach()
|
||||
endmacro()
|
||||
|
||||
#
|
||||
# Google Tests framework
|
||||
#
|
||||
set(gtest_force_shared_crt ON CACHE BOOL "disable static CRT for google test")
|
||||
|
||||
set(BUILD_SHARED_LIBS OFF)
|
||||
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}")
|
||||
|
||||
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")
|
||||
|
||||
set(gtest_targets gtest gtest_main gmock gmock_main)
|
||||
|
||||
foreach(target IN LISTS gtest_targets)
|
||||
|
||||
# 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)
|
||||
if(_target_cxx_flags)
|
||||
if(CMAKE_CXX_FLAGS_DEBUG MATCHES ".+/Z7.+" OR CMAKE_CXX_FLAGS_RELWITHDEBINFO MATCHES ".+/Z7.+")
|
||||
string(REPLACE "-Zi" " " _target_cxx_flags ${_target_cxx_flags})
|
||||
message(STATUS "Removing -Zi flag from target " ${target})
|
||||
set_target_properties(${target} PROPERTIES COMPILE_OPTIONS "${_target_cxx_flags}")
|
||||
endif()
|
||||
endif()
|
||||
elseif(CMAKE_COMPILER_IS_GNUCXX OR OV_COMPILER_IS_CLANG OR
|
||||
CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
|
||||
target_compile_options(${target} PRIVATE -Wno-undef)
|
||||
if(CMAKE_COMPILER_IS_GNUCXX)
|
||||
target_compile_options(${target} PRIVATE -Wno-deprecated-copy)
|
||||
endif()
|
||||
endif()
|
||||
ov_disable_all_warnings(${target})
|
||||
endforeach()
|
||||
|
||||
set_target_properties(gtest gtest_main gmock gmock_main
|
||||
PROPERTIES FOLDER thirdparty)
|
||||
Loading…
Reference in New Issue