baidu / sofa-pbrpc

A light-weight RPC implement of google protobuf RPC framework.
Other
2.13k stars 655 forks source link

sofa-pbrpc protobuf v3支持 #102

Open zd-double opened 8 years ago

zd-double commented 8 years ago

实现方案

  1. 在src/sofa/pbrpc/分别增加proto2 proto3的目录,存放不同版本的pb对应的sofa-pbrpc内置proto。
  2. 在depends.mk中通过参数PROTO_VERSION控制编译pb的版本,代码中通过SOFA_PBRPC_USE_PROTO3的宏进行条件编译。默认采用pb2的版本编译pb,当编译时指定PROTO_VERSION=proto3,Makefile增加DSOFA_PBRPC_USE_PROTO3的选项,采用pb3的版本编译pb。
  3. 在sample 和 test分别增加proto2 proto3目录,通过PROTO_VERSION控制编译pb的版本。用户在应用程序中,编译选项引入SOFA_PBRPC_USE_PROTO3使用pb3的版本。
zd-double commented 8 years ago

@qinzuoyan @cyshi 辛苦左言,承毅看一下sofa-pbrpc兼容pb3的pr,谢谢!