CFStream podspec
diff --git a/gRPC-ProtoRPC.podspec b/gRPC-ProtoRPC.podspec
index 17e650c..fab5343 100644
--- a/gRPC-ProtoRPC.podspec
+++ b/gRPC-ProtoRPC.podspec
@@ -41,12 +41,24 @@
   s.header_dir = name
 
   src_dir = 'src/objective-c/ProtoRPC'
-  s.source_files = "#{src_dir}/*.{h,m}"
-  s.header_mappings_dir = "#{src_dir}"
 
-  s.dependency 'gRPC', version
-  s.dependency 'gRPC-RxLibrary', version
-  s.dependency 'Protobuf', '~> 3.0'
+
+  s.subspec 'Main' do |ss|
+    ss.header_mappings_dir = "#{src_dir}"
+    ss.dependency 'gRPC', version
+    ss.dependency 'gRPC-RxLibrary', version
+    ss.dependency 'Protobuf', '~> 3.0'
+
+    ss.source_files = "#{src_dir}/*.{h,m}"
+  end
+  s.subspec 'CFStream' do |ss|
+    ss.dependency 'gRPC/CFStream', version
+    ss.dependency "#{s.name}/Main", version
+    ss.pod_target_xcconfig = {
+      'GCC_PREPROCESSOR_DEFINITIONS' => 'GRPC_CFSTREAM=1'
+    }
+  end
+
   s.pod_target_xcconfig = {
     # This is needed by all pods that depend on Protobuf:
     'GCC_PREPROCESSOR_DEFINITIONS' => '$(inherited) GPB_USE_PROTOBUF_FRAMEWORK_IMPORTS=1',