Merge master into merge-0.14-into-master

Conflicts:
- gRPC.podspec
  - Only had non-trivial changes in the core file list, which will need to be
    regenerated (in gRPC-Core.podspec).
- src/objective-c/BoringSSL.podspec
  - Had trivial conflicts in the version.
- src/objective-c/examples/RemoteTestClient/RemoteTest.podspec
  - Trivial conflicts in quoting.
- src/objective-c/examples/Sample/Sample.xcodeproj/project.pbxproj and
src/objective-c/examples/SwiftSample/SwiftSample.xcodeproj/project.pbxproj
  - The master version is used, pending testing. The 0.14 version had emoji and
    some unneeded entries.
- src/objective-c/tests/Podfile
  - Added CronetFramework pod, and warning silencing from master.
- templates/gRPC.podspec.template
  - Deleted.
- third_party/protobuf
  - Using master commit, but need to verify if it works for frameworks.
diff --git a/src/objective-c/tests/Podfile b/src/objective-c/tests/Podfile
index b627a92..64b0009 100644
--- a/src/objective-c/tests/Podfile
+++ b/src/objective-c/tests/Podfile
@@ -16,8 +16,9 @@
   InteropTestsLocalCleartext
 ).each do |target_name|
   target target_name do
-    pod 'Protobuf', :path => "#{GRPC_LOCAL_SRC}/third_party/protobuf"
-    pod 'BoringSSL', :podspec => "#{GRPC_LOCAL_SRC}/src/objective-c"
+    pod 'Protobuf', :path => "#{GRPC_LOCAL_SRC}/third_party/protobuf", :inhibit_warnings => true
+    pod 'BoringSSL', :podspec => "#{GRPC_LOCAL_SRC}/src/objective-c", :inhibit_warnings => true
+    pod 'CronetFramework', :podspec => "#{GRPC_LOCAL_SRC}/src/objective-c"
     pod 'gRPC', :path => GRPC_LOCAL_SRC
     pod 'gRPC-Core', :path => GRPC_LOCAL_SRC
     pod 'gRPC-RxLibrary', :path => GRPC_LOCAL_SRC
@@ -56,3 +57,19 @@
     'ALWAYS_SEARCH_USER_PATHS' => 'NO',
   }
 end
+
+post_install do |installer|
+  installer.pods_project.targets.each do |target|
+    target.build_configurations.each do |config|
+      config.build_settings['GCC_TREAT_WARNINGS_AS_ERRORS'] = 'YES'
+    end
+    if target.name == 'gRPC'
+      target.build_configurations.each do |config|
+        # TODO(zyc) Remove this setting after the issue is resolved
+        # GPR_UNREACHABLE_CODE causes "Control may reach end of non-void
+        # function" warning
+        config.build_settings['GCC_WARN_ABOUT_RETURN_TYPE'] = 'NO'
+      end
+    end
+  end
+end