Fix p4runtime runtime dependencies when building with Bazel

A convenient macro for packaging together all proto and gRPC libraries
in an OSGi jar is provided. Also re-packaging of gRPC core (to avoid OSGi
split problem) is simplified by depending on a patched fork of grpc-java.

Change-Id: Idb79a5bea8ae0bc57b146bda1fc47a4568d12c60
diff --git a/lib/BUCK b/lib/BUCK
index 30ff483..622d29e 100644
--- a/lib/BUCK
+++ b/lib/BUCK
@@ -1,4 +1,4 @@
-# ***** This file was auto-generated at Fri, 10 Aug 2018 17:37:37 GMT. Do not edit this file manually. *****
+# ***** This file was auto-generated at Fri, 10 Aug 2018 23:10:43 GMT. Do not edit this file manually. *****
 # ***** Use onos-lib-gen *****
 
 pass_thru_pom(
@@ -1481,6 +1481,51 @@
 )
 
 remote_jar (
+  name = 'com_google_api_grpc_proto_google_common_protos',
+  out = 'proto-google-common-protos-1.0.0.jar',
+  url = 'mvn:com.google.api.grpc:proto-google-common-protos:jar:1.0.0',
+  sha1 = '86f070507e28b930e50d218ee5b6788ef0dd05e6',
+  maven_coords = 'com.google.api.grpc:proto-google-common-protos:jar:NON-OSGI:1.0.0',
+  visibility = [ 'PUBLIC' ],
+)
+
+remote_jar (
+  name = 'com_google_errorprone_error_prone_annotations',
+  out = 'error_prone_annotations-2.1.2.jar',
+  url = 'mvn:com.google.errorprone:error_prone_annotations:jar:2.1.2',
+  sha1 = '6dcc08f90f678ac33e5ef78c3c752b6f59e63e0c',
+  maven_coords = 'com.google.errorprone:error_prone_annotations:jar:NON-OSGI:2.1.2',
+  visibility = [ 'PUBLIC' ],
+)
+
+remote_jar (
+  name = 'com_google_auth_google_auth_library_credentials',
+  out = 'google-auth-library-credentials-0.9.0.jar',
+  url = 'mvn:com.google.auth:google-auth-library-credentials:jar:0.9.0',
+  sha1 = '8e2b181feff6005c9cbc6f5c1c1e2d3ec9138d46',
+  maven_coords = 'com.google.auth:google-auth-library-credentials:jar:NON-OSGI:0.9.0',
+  visibility = [ 'PUBLIC' ],
+)
+
+remote_jar (
+  name = 'io_opencensus_opencensus_api',
+  out = 'opencensus-api-0.12.3.jar',
+  url = 'mvn:io.opencensus:opencensus-api:jar:0.12.3',
+  sha1 = '743f074095f29aa985517299545e72cc99c87de0',
+  maven_coords = 'io.opencensus:opencensus-api:jar:NON-OSGI:0.12.3',
+  visibility = [ 'PUBLIC' ],
+)
+
+remote_jar (
+  name = 'io_opencensus_opencensus_contrib_grpc_metrics',
+  out = 'opencensus-contrib-grpc-metrics-0.12.3.jar',
+  url = 'mvn:io.opencensus:opencensus-contrib-grpc-metrics:jar:0.12.3',
+  sha1 = 'a4c7ff238a91b901c8b459889b6d0d7a9d889b4d',
+  maven_coords = 'io.opencensus:opencensus-contrib-grpc-metrics:jar:NON-OSGI:0.12.3',
+  visibility = [ 'PUBLIC' ],
+)
+
+remote_jar (
   name = 'openstack4j-core',
   out = 'openstack4j-core-3.1.0.jar',
   url = 'mvn:org.pacesys:openstack4j-core:jar:3.1.0',
@@ -1751,6 +1796,15 @@
 )
 
 remote_jar (
+  name = 'runtime-grpc-context',
+  out = 'grpc-context-1.14.0.jar',
+  url = 'mvn:io.grpc:grpc-context:jar:1.14.0',
+  sha1 = '77252b5f926875891aaae5629e6ab2ef968cd6c6',
+  maven_coords = 'io.grpc:grpc-context:jar:NON-OSGI:1.14.0',
+  visibility = [ 'PUBLIC' ],
+)
+
+remote_jar (
   name = 'runtime-grpc-stub',
   out = 'grpc-stub-1.14.0.jar',
   url = 'mvn:io.grpc:grpc-stub:jar:1.14.0',
diff --git a/lib/deps.json b/lib/deps.json
index 5a144d9..83fa1bd 100644
--- a/lib/deps.json
+++ b/lib/deps.json
@@ -283,6 +283,13 @@
     "json": "mvn:org.json:json:jar:20090211",
     "engine.io-client": "mvn:io.socket:engine.io-client:jar:0.8.3",
 
+    // grpc related jars
+    "com_google_api_grpc_proto_google_common_protos": "mvn:com.google.api.grpc:proto-google-common-protos:1.0.0",
+    "com_google_errorprone_error_prone_annotations": "mvn:com.google.errorprone:error_prone_annotations:2.1.2",
+    "com_google_auth_google_auth_library_credentials": "mvn:com.google.auth:google-auth-library-credentials:0.9.0",
+    "io_opencensus_opencensus_api": "mvn:io.opencensus:opencensus-api:0.12.3",
+    "io_opencensus_opencensus_contrib_grpc_metrics": "mvn:io.opencensus:opencensus-contrib-grpc-metrics:0.12.3",
+
     // Openstack4j related jars
     "openstack4j-core": "mvn:org.pacesys:openstack4j-core:3.1.0",
     "openstack4j-http-connector": "mvn:org.pacesys.openstack4j.connectors:openstack4j-http-connector:3.1.0",
@@ -318,6 +325,7 @@
 
     // Included merely for packaging purposes into run-time.
     "runtime-grpc-core":"mvn:io.grpc:grpc-core:1.14.0",
+    "runtime-grpc-context":"mvn:io.grpc:grpc-context:1.14.0",
     "runtime-grpc-stub":"mvn:io.grpc:grpc-stub:1.14.0",
     "runtime-grpc-netty":"mvn:io.grpc:grpc-netty:1.14.0",
     "runtime-grpc-auth":"mvn:io.grpc:grpc-auth:1.14.0",