diff --git a/modules/dnn/3rdparty/protobuf/CMakeLists.txt b/modules/dnn/3rdparty/protobuf/CMakeLists.txt index 7aa669851..9c4a9ed21 100644 --- a/modules/dnn/3rdparty/protobuf/CMakeLists.txt +++ b/modules/dnn/3rdparty/protobuf/CMakeLists.txt @@ -41,7 +41,7 @@ function(append_if_exist OUTPUT_LIST) set(${OUTPUT_LIST} ${${OUTPUT_LIST}} PARENT_SCOPE) endfunction() -set(PROTOBUF_ROOT ${CMAKE_CURRENT_SOURCE_DIR}/sources/protobuf-3.1.0) +set(PROTOBUF_ROOT "${PROTOBUF_CPP_PATH}/protobuf-3.1.0") if(MSVC) set(ATOMICOPS_INTERNALS ${PROTOBUF_ROOT}/src/google/protobuf/stubs/atomicops_internals_x86_msvc.cc) diff --git a/modules/dnn/cmake/OpenCVFindLibProtobuf.cmake b/modules/dnn/cmake/OpenCVFindLibProtobuf.cmake index 25b4f4760..eb2a729cc 100644 --- a/modules/dnn/cmake/OpenCVFindLibProtobuf.cmake +++ b/modules/dnn/cmake/OpenCVFindLibProtobuf.cmake @@ -30,7 +30,7 @@ else() include(${CMAKE_CURRENT_LIST_DIR}/download_protobuf.cmake) add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/protobuf) set(PROTOBUF_LIBRARIES libprotobuf) - set(PROTOBUF_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/protobuf/sources/protobuf-3.1.0/src) + set(PROTOBUF_INCLUDE_DIR ${PROTOBUF_CPP_PATH}/protobuf-3.1.0/src) endif() if(NOT UPDATE_PROTO_FILES) diff --git a/modules/dnn/cmake/download_protobuf.cmake b/modules/dnn/cmake/download_protobuf.cmake index b365a464a..66ca8535c 100644 --- a/modules/dnn/cmake/download_protobuf.cmake +++ b/modules/dnn/cmake/download_protobuf.cmake @@ -1,6 +1,6 @@ set(PROTOBUF_CPP_NAME "libprotobuf") set(PROTOBUF_CPP_DOWNLOAD_HASH "bd5e3eed635a8d32e2b99658633815ef") -set(PROTOBUF_CPP_PATH "${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/protobuf/sources") # /protobuf-3.1.0 subdirectory +set(PROTOBUF_CPP_PATH "${CMAKE_CURRENT_BINARY_DIR}/3rdparty/protobuf/sources") # /protobuf-3.1.0 subdirectory set(OPENCV_PROTOBUF_CPP_DOWNLOAD_URL ${OPENCV_PROTOBUF_URL};$ENV{OPENCV_PROTOBUF_URL};https://github.com/google/protobuf/releases/download/)