Blob Blame Raw
http://paraview.org/Bug/view.php?id=13656

diff -up ParaView/ParaViewCore/ServerImplementation/Core/CMakeLists.txt.Protobuf ParaView/ParaViewCore/ServerImplementation/Core/CMakeLists.txt
--- ParaView/ParaViewCore/ServerImplementation/Core/CMakeLists.txt.Protobuf	2012-11-08 07:51:51.000000000 -0700
+++ ParaView/ParaViewCore/ServerImplementation/Core/CMakeLists.txt	2012-11-13 15:17:53.980027098 -0700
@@ -81,16 +81,24 @@
 #------------------------------------------------------------------------------
 # Generate the protbuf message file.
 #------------------------------------------------------------------------------
-get_target_property(PROTOC_LOCATION protoc_compiler LOCATION)
+if (VTK_USE_SYSTEM_PROTOBUF)
+	set (_PROTOC_COMPILER protoc)
+	set (_PROTOC_DEPEND "")
+else()
+	set (_PROTOC_COMPILER protoc_compiler)
+	set (_PROTOC_DEPEND ${_PROTOC_COMPILER})
+endif()
+
+get_target_property(PROTOC_LOCATION ${_PROTOC_COMPILER} LOCATION)
 add_custom_command(
     OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/vtkPVMessage.pb.h
            ${CMAKE_CURRENT_BINARY_DIR}/vtkPVMessage.pb.cc
     
-    COMMAND protoc_compiler
+    COMMAND ${_PROTOC_COMPILER}
            "--cpp_out=dllexport_decl=VTKPVSERVERIMPLEMENTATIONCORE_EXPORT:${CMAKE_CURRENT_BINARY_DIR}"
            --proto_path "@CMAKE_CURRENT_SOURCE_DIR@"
            "${CMAKE_CURRENT_SOURCE_DIR}/vtkPVMessage.proto"
-    DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/vtkPVMessage.proto protoc_compiler
+    DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/vtkPVMessage.proto ${_PROTOC_DEPEND}
     WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
 )
 
@@ -109,5 +117,9 @@
 vtk_module_library(vtkPVServerImplementationCore
   ${Module_SRCS})
 
+if (VTK_USE_SYSTEM_PROTOBUF)
+	target_link_libraries(vtkPVServerImplementationCore ${CMAKE_THREAD_LIBS_INIT})
+endif()
+
 add_dependencies(vtkPVServerImplementationCore
   protobuf_code_generation)
diff -up ParaView/ThirdParty/protobuf/CMakeLists.txt.Protobuf ParaView/ThirdParty/protobuf/CMakeLists.txt
--- ParaView/ThirdParty/protobuf/CMakeLists.txt.Protobuf	2012-11-08 07:51:51.000000000 -0700
+++ ParaView/ThirdParty/protobuf/CMakeLists.txt	2012-11-13 15:09:31.526673020 -0700
@@ -34,7 +34,7 @@
 set (PROTOBUF_INSTALL_LIB_DIR ${VTK_INSTALL_LIBRARY_DIR})
 set (PROTOBUF_INSTALL_EXPORT_NAME ${VTK_INSTALL_EXPORT_NAME})
 
-vtk_module_third_party(protobuf
+vtk_module_third_party(Protobuf
   INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/vtkprotobuf/src
   LIBRARIES protobuf
 )
@@ -42,10 +42,12 @@
 # protobuf exports it's build-dir targets to a custom file
 # (PROTOBUF_EXPORTS.cmake). We don't care much about that. We export
 # build-dir targets ourselves.
-vtk_target_export(protobuf)
-vtk_target_export(protobuf-lite)
-if (NOT CMAKE_CROSSCOMPILING)
-  vtk_compile_tools_target_export(protoc_compiler)
+if (NOT VTK_USE_SYSTEM_PROTOBUF)
+  vtk_target_export(protobuf)
+  vtk_target_export(protobuf-lite)
+  if (NOT CMAKE_CROSSCOMPILING)
+    vtk_compile_tools_target_export(protoc_compiler)
+  endif()
 endif()
 
 # All these exports don't add any install rules. However we make protobuf itself