From f6d927ef3bb2d89822644586f0d88ea1bd9095f6 Mon Sep 17 00:00:00 2001 From: Alexander Alekhin Date: Wed, 15 Nov 2017 14:07:41 +0300 Subject: [PATCH] dnn: avoid conflicts with original caffe.proto rename caffe.proto => opencv-caffe.proto --- cmake/OpenCVFindLibProtobuf.cmake | 4 ++-- modules/dnn/CMakeLists.txt | 9 +++++---- modules/dnn/src/caffe/caffe_importer.cpp | 2 -- modules/dnn/src/caffe/caffe_io.cpp | 1 - modules/dnn/src/caffe/caffe_io.hpp | 2 +- .../dnn/src/caffe/{caffe.proto => opencv-caffe.proto} | 0 6 files changed, 8 insertions(+), 10 deletions(-) rename modules/dnn/src/caffe/{caffe.proto => opencv-caffe.proto} (100%) diff --git a/cmake/OpenCVFindLibProtobuf.cmake b/cmake/OpenCVFindLibProtobuf.cmake index b6ce1e7fd5..7674f4284b 100644 --- a/cmake/OpenCVFindLibProtobuf.cmake +++ b/cmake/OpenCVFindLibProtobuf.cmake @@ -7,7 +7,7 @@ OCV_OPTION(BUILD_PROTOBUF "Force to build libprotobuf from sources" ON) OCV_OPTION(PROTOBUF_UPDATE_FILES "Force to rebuild .proto files" OFF) if(PROTOBUF_UPDATE_FILES) - if(NOT DEFINED Protobuf_PROTOC_EXECUTABLE) + if(NOT COMMAND PROTOBUF_GENERATE_CPP) find_package(Protobuf QUIET) endif() if(DEFINED Protobuf_PROTOC_EXECUTABLE AND EXISTS ${Protobuf_PROTOC_EXECUTABLE}) @@ -21,7 +21,7 @@ if(NOT BUILD_PROTOBUF AND NOT (DEFINED Protobuf_INCLUDE_DIRS AND DEFINED Protobu find_package(Protobuf QUIET) endif() -if(Protobuf_FOUND) +if(Protobuf_FOUND AND NOT BUILD_PROTOBUF) # nothing else() set(Protobuf_LIBRARIES libprotobuf) diff --git a/modules/dnn/CMakeLists.txt b/modules/dnn/CMakeLists.txt index 866f544e8c..2ca831a424 100644 --- a/modules/dnn/CMakeLists.txt +++ b/modules/dnn/CMakeLists.txt @@ -56,14 +56,15 @@ ocv_warnings_disable(CMAKE_CXX_FLAGS ) if(PROTOBUF_UPDATE_FILES) - file(GLOB proto_files src/tensorflow/*.proto) - list(APPEND proto_files src/caffe/caffe.proto) + file(GLOB proto_files ${CMAKE_CURRENT_SOURCE_DIR}/src/tensorflow/*.proto) + list(APPEND proto_files ${CMAKE_CURRENT_SOURCE_DIR}/src/caffe/opencv-caffe.proto) + set(PROTOBUF_GENERATE_CPP_APPEND_PATH ON) # required for tensorflow PROTOBUF_GENERATE_CPP(Protobuf_HDRS Protobuf_SRCS ${proto_files}) else() file(GLOB fw_srcs ${CMAKE_CURRENT_SOURCE_DIR}/misc/tensorflow/*.cc) file(GLOB fw_hdrs ${CMAKE_CURRENT_SOURCE_DIR}/misc/tensorflow/*.h) - list(APPEND fw_srcs ${CMAKE_CURRENT_SOURCE_DIR}/misc/caffe/caffe.pb.cc) - list(APPEND fw_hdrs ${CMAKE_CURRENT_SOURCE_DIR}/misc/caffe/caffe.pb.h) + list(APPEND fw_srcs ${CMAKE_CURRENT_SOURCE_DIR}/misc/caffe/opencv-caffe.pb.cc) + list(APPEND fw_hdrs ${CMAKE_CURRENT_SOURCE_DIR}/misc/caffe/opencv-caffe.pb.h) list(APPEND Protobuf_SRCS ${fw_srcs}) list(APPEND Protobuf_HDRS ${fw_hdrs}) list(APPEND Protobuf_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/misc/caffe) diff --git a/modules/dnn/src/caffe/caffe_importer.cpp b/modules/dnn/src/caffe/caffe_importer.cpp index 1a22882bf8..afea53d056 100644 --- a/modules/dnn/src/caffe/caffe_importer.cpp +++ b/modules/dnn/src/caffe/caffe_importer.cpp @@ -42,8 +42,6 @@ #include "../precomp.hpp" #ifdef HAVE_PROTOBUF -#include "caffe.pb.h" - #include #include #include diff --git a/modules/dnn/src/caffe/caffe_io.cpp b/modules/dnn/src/caffe/caffe_io.cpp index 0f46ea77df..1d3c518f13 100644 --- a/modules/dnn/src/caffe/caffe_io.cpp +++ b/modules/dnn/src/caffe/caffe_io.cpp @@ -99,7 +99,6 @@ #include #include -#include "caffe.pb.h" #include "caffe_io.hpp" #include "glog_emulator.hpp" diff --git a/modules/dnn/src/caffe/caffe_io.hpp b/modules/dnn/src/caffe/caffe_io.hpp index 09bc5709a2..f5912c3bce 100644 --- a/modules/dnn/src/caffe/caffe_io.hpp +++ b/modules/dnn/src/caffe/caffe_io.hpp @@ -91,7 +91,7 @@ #define __OPENCV_DNN_CAFFE_IO_HPP__ #ifdef HAVE_PROTOBUF -#include "caffe.pb.h" +#include "opencv-caffe.pb.h" namespace cv { namespace dnn { diff --git a/modules/dnn/src/caffe/caffe.proto b/modules/dnn/src/caffe/opencv-caffe.proto similarity index 100% rename from modules/dnn/src/caffe/caffe.proto rename to modules/dnn/src/caffe/opencv-caffe.proto