From 7b774544f16c1685b3aa007ed5d4317ff038355d Mon Sep 17 00:00:00 2001 From: Muxi Yan Date: Thu, 29 Jun 2017 14:31:59 -0700 Subject: [PATCH 1/2] Use Cocoapods to manage nanopb --- gRPC-Core.podspec | 12 +----------- templates/gRPC-Core.podspec.template | 5 +++-- 2 files changed, 4 insertions(+), 13 deletions(-) diff --git a/gRPC-Core.podspec b/gRPC-Core.podspec index 5c7486b461a..513b31d39aa 100644 --- a/gRPC-Core.podspec +++ b/gRPC-Core.podspec @@ -194,6 +194,7 @@ Pod::Spec.new do |s| ss.libraries = 'z' ss.dependency "#{s.name}/Interface", version ss.dependency 'BoringSSL', '~> 8.0' + ss.dependency 'nanopb' # To save you from scrolling, this is the last part of the podspec. ss.source_files = 'src/core/lib/profiling/timers.h', @@ -448,10 +449,6 @@ Pod::Spec.new do |s| 'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h', 'src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h', 'src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.h', - 'third_party/nanopb/pb.h', - 'third_party/nanopb/pb_common.h', - 'third_party/nanopb/pb_decode.h', - 'third_party/nanopb/pb_encode.h', 'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h', 'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h', 'src/core/ext/filters/load_reporting/load_reporting.h', @@ -695,9 +692,6 @@ Pod::Spec.new do |s| 'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.c', 'src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.c', 'src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.c', - 'third_party/nanopb/pb_common.c', - 'third_party/nanopb/pb_decode.c', - 'third_party/nanopb/pb_encode.c', 'src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.c', 'src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.c', 'src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.c', @@ -934,10 +928,6 @@ Pod::Spec.new do |s| 'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h', 'src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h', 'src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.h', - 'third_party/nanopb/pb.h', - 'third_party/nanopb/pb_common.h', - 'third_party/nanopb/pb_decode.h', - 'third_party/nanopb/pb_encode.h', 'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h', 'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h', 'src/core/ext/filters/load_reporting/load_reporting.h', diff --git a/templates/gRPC-Core.podspec.template b/templates/gRPC-Core.podspec.template index cbebc5d005c..15fbb701062 100644 --- a/templates/gRPC-Core.podspec.template +++ b/templates/gRPC-Core.podspec.template @@ -43,7 +43,7 @@ if lib.name in ("grpc", "gpr"): out += lib.get('headers', []) out += lib.get('src', []) - return out; + return [f for f in out if not f.startswith("third_party/nanopb/")] def grpc_public_headers(libs): out = [] @@ -57,7 +57,7 @@ for lib in libs: if lib.name in ("grpc", "gpr"): out += lib.get('headers', []) - return out + return [f for f in out if not f.startswith("third_party/nanopb/")] def ruby_multiline_list(files, indent): return (',\n' + indent*' ').join('\'%s\'' % f for f in files) @@ -153,6 +153,7 @@ ss.libraries = 'z' ss.dependency "#{s.name}/Interface", version ss.dependency 'BoringSSL', '~> 8.0' + ss.dependency 'nanopb' # To save you from scrolling, this is the last part of the podspec. ss.source_files = ${ruby_multiline_list(grpc_private_files(libs), 22)} From 636eba9889b672eaf2641b351c69334e0043bf32 Mon Sep 17 00:00:00 2001 From: Muxi Yan Date: Thu, 29 Jun 2017 16:18:43 -0700 Subject: [PATCH 2/2] Polish gRPC-Core.podspec --- gRPC-Core.podspec | 4 +--- templates/gRPC-Core.podspec.template | 4 +--- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/gRPC-Core.podspec b/gRPC-Core.podspec index 513b31d39aa..319f14bac8e 100644 --- a/gRPC-Core.podspec +++ b/gRPC-Core.podspec @@ -47,8 +47,6 @@ Pod::Spec.new do |s| s.source = { :git => 'https://github.com/grpc/grpc.git', :tag => "v#{version}", - # TODO(jcanizales): Depend explicitly on the nanopb pod, and disable submodules. - :submodules => true, } s.ios.deployment_target = '7.0' @@ -194,7 +192,7 @@ Pod::Spec.new do |s| ss.libraries = 'z' ss.dependency "#{s.name}/Interface", version ss.dependency 'BoringSSL', '~> 8.0' - ss.dependency 'nanopb' + ss.dependency 'nanopb', '~> 0.3' # To save you from scrolling, this is the last part of the podspec. ss.source_files = 'src/core/lib/profiling/timers.h', diff --git a/templates/gRPC-Core.podspec.template b/templates/gRPC-Core.podspec.template index 15fbb701062..d7a7c7cc644 100644 --- a/templates/gRPC-Core.podspec.template +++ b/templates/gRPC-Core.podspec.template @@ -74,8 +74,6 @@ s.source = { :git => 'https://github.com/grpc/grpc.git', :tag => "v#{version}", - # TODO(jcanizales): Depend explicitly on the nanopb pod, and disable submodules. - :submodules => true, } s.ios.deployment_target = '7.0' @@ -153,7 +151,7 @@ ss.libraries = 'z' ss.dependency "#{s.name}/Interface", version ss.dependency 'BoringSSL', '~> 8.0' - ss.dependency 'nanopb' + ss.dependency 'nanopb', '~> 0.3' # To save you from scrolling, this is the last part of the podspec. ss.source_files = ${ruby_multiline_list(grpc_private_files(libs), 22)}