|
|
@@ -2,127 +2,80 @@
|
|
|
# FindProtobuf
|
|
|
# ------------
|
|
|
#
|
|
|
-#
|
|
|
-#
|
|
|
# Locate and configure the Google Protocol Buffers library.
|
|
|
#
|
|
|
# The following variables can be set and are optional:
|
|
|
#
|
|
|
-# ::
|
|
|
-#
|
|
|
-# PROTOBUF_SRC_ROOT_FOLDER - When compiling with MSVC, if this cache variable is set
|
|
|
-# the protobuf-default VS project build locations
|
|
|
-# (vsprojects/Debug & vsprojects/Release) will be searched
|
|
|
-# for libraries and binaries.
|
|
|
-#
|
|
|
-#
|
|
|
-#
|
|
|
-# ::
|
|
|
-#
|
|
|
-# PROTOBUF_IMPORT_DIRS - List of additional directories to be searched for
|
|
|
-# imported .proto files. (New in CMake 2.8.8)
|
|
|
-#
|
|
|
-#
|
|
|
+# ``PROTOBUF_SRC_ROOT_FOLDER``
|
|
|
+# When compiling with MSVC, if this cache variable is set
|
|
|
+# the protobuf-default VS project build locations
|
|
|
+# (vsprojects/Debug & vsprojects/Release) will be searched
|
|
|
+# for libraries and binaries.
|
|
|
+# ``PROTOBUF_IMPORT_DIRS``
|
|
|
+# List of additional directories to be searched for
|
|
|
+# imported .proto files.
|
|
|
#
|
|
|
# Defines the following variables:
|
|
|
#
|
|
|
-# ::
|
|
|
-#
|
|
|
-# PROTOBUF_FOUND - Found the Google Protocol Buffers library (libprotobuf & header files)
|
|
|
-# PROTOBUF_INCLUDE_DIRS - Include directories for Google Protocol Buffers
|
|
|
-# PROTOBUF_LIBRARIES - The protobuf libraries
|
|
|
-#
|
|
|
-# [New in CMake 2.8.5]
|
|
|
-#
|
|
|
-# ::
|
|
|
-#
|
|
|
-# PROTOBUF_PROTOC_LIBRARIES - The protoc libraries
|
|
|
-# PROTOBUF_LITE_LIBRARIES - The protobuf-lite libraries
|
|
|
-#
|
|
|
-#
|
|
|
+# ``PROTOBUF_FOUND``
|
|
|
+# Found the Google Protocol Buffers library
|
|
|
+# (libprotobuf & header files)
|
|
|
+# ``PROTOBUF_INCLUDE_DIRS``
|
|
|
+# Include directories for Google Protocol Buffers
|
|
|
+# ``PROTOBUF_LIBRARIES``
|
|
|
+# The protobuf libraries
|
|
|
+# ``PROTOBUF_PROTOC_LIBRARIES``
|
|
|
+# The protoc libraries
|
|
|
+# ``PROTOBUF_LITE_LIBRARIES``
|
|
|
+# The protobuf-lite libraries
|
|
|
#
|
|
|
# The following cache variables are also available to set or use:
|
|
|
#
|
|
|
-# ::
|
|
|
-#
|
|
|
-# PROTOBUF_LIBRARY - The protobuf library
|
|
|
-# PROTOBUF_PROTOC_LIBRARY - The protoc library
|
|
|
-# PROTOBUF_INCLUDE_DIR - The include directory for protocol buffers
|
|
|
-# PROTOBUF_PROTOC_EXECUTABLE - The protoc compiler
|
|
|
-#
|
|
|
-# [New in CMake 2.8.5]
|
|
|
-#
|
|
|
-# ::
|
|
|
-#
|
|
|
-# PROTOBUF_LIBRARY_DEBUG - The protobuf library (debug)
|
|
|
-# PROTOBUF_PROTOC_LIBRARY_DEBUG - The protoc library (debug)
|
|
|
-# PROTOBUF_LITE_LIBRARY - The protobuf lite library
|
|
|
-# PROTOBUF_LITE_LIBRARY_DEBUG - The protobuf lite library (debug)
|
|
|
-#
|
|
|
-#
|
|
|
-#
|
|
|
-# ::
|
|
|
-#
|
|
|
-# ====================================================================
|
|
|
-# Example:
|
|
|
-#
|
|
|
-#
|
|
|
-#
|
|
|
-# ::
|
|
|
-#
|
|
|
-# find_package(Protobuf REQUIRED)
|
|
|
-# include_directories(${PROTOBUF_INCLUDE_DIRS})
|
|
|
-#
|
|
|
-#
|
|
|
-#
|
|
|
-# ::
|
|
|
-#
|
|
|
-# include_directories(${CMAKE_CURRENT_BINARY_DIR})
|
|
|
-# PROTOBUF_GENERATE_CPP(PROTO_SRCS PROTO_HDRS foo.proto)
|
|
|
-# add_executable(bar bar.cc ${PROTO_SRCS} ${PROTO_HDRS})
|
|
|
-# target_link_libraries(bar ${PROTOBUF_LIBRARIES})
|
|
|
-#
|
|
|
-#
|
|
|
-#
|
|
|
-# NOTE: You may need to link against pthreads, depending
|
|
|
-#
|
|
|
-# ::
|
|
|
-#
|
|
|
-# on the platform.
|
|
|
-#
|
|
|
-#
|
|
|
-#
|
|
|
-# NOTE: The PROTOBUF_GENERATE_CPP macro & add_executable() or
|
|
|
-# add_library()
|
|
|
-#
|
|
|
-# ::
|
|
|
-#
|
|
|
-# calls only work properly within the same directory.
|
|
|
-#
|
|
|
-#
|
|
|
-#
|
|
|
-# ::
|
|
|
-#
|
|
|
-# ====================================================================
|
|
|
-#
|
|
|
-#
|
|
|
-#
|
|
|
-# PROTOBUF_GENERATE_CPP (public function)
|
|
|
-#
|
|
|
-# ::
|
|
|
-#
|
|
|
-# SRCS = Variable to define with autogenerated
|
|
|
-# source files
|
|
|
-# HDRS = Variable to define with autogenerated
|
|
|
-# header files
|
|
|
-# ARGN = proto files
|
|
|
-#
|
|
|
-#
|
|
|
-#
|
|
|
-# ::
|
|
|
-#
|
|
|
-# ====================================================================
|
|
|
-
|
|
|
+# ``PROTOBUF_LIBRARY``
|
|
|
+# The protobuf library
|
|
|
+# ``PROTOBUF_PROTOC_LIBRARY``
|
|
|
+# The protoc library
|
|
|
+# ``PROTOBUF_INCLUDE_DIR``
|
|
|
+# The include directory for protocol buffers
|
|
|
+# ``PROTOBUF_PROTOC_EXECUTABLE``
|
|
|
+# The protoc compiler
|
|
|
+# ``PROTOBUF_LIBRARY_DEBUG``
|
|
|
+# The protobuf library (debug)
|
|
|
+# ``PROTOBUF_PROTOC_LIBRARY_DEBUG``
|
|
|
+# The protoc library (debug)
|
|
|
+# ``PROTOBUF_LITE_LIBRARY``
|
|
|
+# The protobuf lite library
|
|
|
+# ``PROTOBUF_LITE_LIBRARY_DEBUG``
|
|
|
+# The protobuf lite library (debug)
|
|
|
+#
|
|
|
+# Example:
|
|
|
+#
|
|
|
+# .. code-block:: cmake
|
|
|
+#
|
|
|
+# find_package(Protobuf REQUIRED)
|
|
|
+# include_directories(${PROTOBUF_INCLUDE_DIRS})
|
|
|
+# include_directories(${CMAKE_CURRENT_BINARY_DIR})
|
|
|
+# protobuf_generate_cpp(PROTO_SRCS PROTO_HDRS foo.proto)
|
|
|
+# add_executable(bar bar.cc ${PROTO_SRCS} ${PROTO_HDRS})
|
|
|
+# target_link_libraries(bar ${PROTOBUF_LIBRARIES})
|
|
|
+#
|
|
|
+# .. note::
|
|
|
+# The PROTOBUF_GENERATE_CPP macro and add_executable() or
|
|
|
+# add_library() calls only work properly within the same
|
|
|
+# directory.
|
|
|
+#
|
|
|
+# .. command:: protobuf_generate_cpp
|
|
|
+#
|
|
|
+# Add custom commands to process ``.proto`` files::
|
|
|
+#
|
|
|
+# protobuf_generate_cpp (<SRCS> <HDRS> [<ARGN>...])
|
|
|
+#
|
|
|
+# ``SRCS``
|
|
|
+# Variable to define with autogenerated source files
|
|
|
+# ``HDRS``
|
|
|
+# Variable to define with autogenerated header files
|
|
|
+# ``ARGN``
|
|
|
+# ``.proto`` files
|
|
|
|
|
|
#=============================================================================
|
|
|
# Copyright 2009 Kitware, Inc.
|