"""External dependencies for grpc-java.""" load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") load("@bazel_tools//tools/build_defs/repo:jvm.bzl", "jvm_maven_import_external") # For use with maven_install's artifacts. # maven_install( # ... # artifacts = [ # # Your own deps # ] + IO_GRPC_GRPC_JAVA_ARTIFACTS, # ) IO_GRPC_GRPC_JAVA_ARTIFACTS = [ "com.google.android:annotations:4.1.1.4", "com.google.api.grpc:proto-google-common-protos:1.17.0", "com.google.auth:google-auth-library-credentials:0.20.0", "com.google.auth:google-auth-library-oauth2-http:0.20.0", "com.google.code.findbugs:jsr305:3.0.2", "com.google.code.gson:gson:jar:2.8.6", "com.google.errorprone:error_prone_annotations:2.3.4", "com.google.guava:failureaccess:1.0.1", "com.google.guava:guava:29.0-android", "com.google.j2objc:j2objc-annotations:1.3", "com.google.truth:truth:1.0.1", "com.squareup.okhttp:okhttp:2.7.4", "com.squareup.okio:okio:1.13.0", "io.netty:netty-buffer:4.1.51.Final", "io.netty:netty-codec-http2:4.1.51.Final", "io.netty:netty-codec-http:4.1.51.Final", "io.netty:netty-codec-socks:4.1.51.Final", "io.netty:netty-codec:4.1.51.Final", "io.netty:netty-common:4.1.51.Final", "io.netty:netty-handler-proxy:4.1.51.Final", "io.netty:netty-handler:4.1.51.Final", "io.netty:netty-resolver:4.1.51.Final", "io.netty:netty-tcnative-boringssl-static:2.0.31.Final", "io.netty:netty-transport-native-epoll:jar:linux-x86_64:4.1.51.Final", "io.netty:netty-transport:4.1.51.Final", "io.opencensus:opencensus-api:0.24.0", "io.opencensus:opencensus-contrib-grpc-metrics:0.24.0", "io.perfmark:perfmark-api:0.19.0", "junit:junit:4.12", "org.apache.commons:commons-lang3:3.5", "org.apache.tomcat:annotations-api:6.0.53", "org.codehaus.mojo:animal-sniffer-annotations:1.18", ] # For use with maven_install's override_targets. # maven_install( # ... # override_targets = IO_GRPC_GRPC_JAVA_OVERRIDE_TARGETS, # ) # # If you have your own overrides as well, you can use: # override_targets = dict( # IO_GRPC_GRPC_JAVA_OVERRIDE_TARGETS, # "your.target:artifact": "@//third_party/artifact", # ) # # To combine OVERRIDE_TARGETS from multiple libraries: # override_targets = dict( # IO_GRPC_GRPC_JAVA_OVERRIDE_TARGETS.items() + # OTHER_OVERRIDE_TARGETS.items(), # "your.target:artifact": "@//third_party/artifact", # ) IO_GRPC_GRPC_JAVA_OVERRIDE_TARGETS = { "com.google.protobuf:protobuf-java": "@com_google_protobuf//:protobuf_java", "com.google.protobuf:protobuf-java-util": "@com_google_protobuf//:protobuf_java_util", "com.google.protobuf:protobuf-javalite": "@com_google_protobuf_javalite//:protobuf_java_lite", "io.grpc:grpc-alts": "@io_grpc_grpc_java//alts", "io.grpc:grpc-api": "@io_grpc_grpc_java//api", "io.grpc:grpc-auth": "@io_grpc_grpc_java//auth", "io.grpc:grpc-census": "@io_grpc_grpc_java//census", "io.grpc:grpc-context": "@io_grpc_grpc_java//context", "io.grpc:grpc-core": "@io_grpc_grpc_java//core:core_maven", "io.grpc:grpc-grpclb": "@io_grpc_grpc_java//grpclb", "io.grpc:grpc-netty": "@io_grpc_grpc_java//netty", "io.grpc:grpc-netty-shaded": "@io_grpc_grpc_java//netty:shaded_maven", "io.grpc:grpc-okhttp": "@io_grpc_grpc_java//okhttp", "io.grpc:grpc-protobuf": "@io_grpc_grpc_java//protobuf", "io.grpc:grpc-protobuf-lite": "@io_grpc_grpc_java//protobuf-lite", "io.grpc:grpc-stub": "@io_grpc_grpc_java//stub", "io.grpc:grpc-testing": "@io_grpc_grpc_java//testing", } def grpc_java_repositories(): """Imports dependencies for grpc-java.""" if not native.existing_rule("com_google_protobuf"): com_google_protobuf() if not native.existing_rule("com_google_protobuf_javalite"): com_google_protobuf_javalite() if not native.existing_rule("io_grpc_grpc_proto"): io_grpc_grpc_proto() if not native.existing_rule("com_google_android_annotations"): com_google_android_annotations() if not native.existing_rule("com_google_api_grpc_proto_google_common_protos"): com_google_api_grpc_proto_google_common_protos() if not native.existing_rule("com_google_auth_google_auth_library_credentials"): com_google_auth_google_auth_library_credentials() if not native.existing_rule("com_google_auth_google_auth_library_oauth2_http"): com_google_auth_google_auth_library_oauth2_http() if not native.existing_rule("com_google_code_findbugs_jsr305"): com_google_code_findbugs_jsr305() if not native.existing_rule("com_google_code_gson_gson"): com_google_code_gson_gson() if not native.existing_rule("com_google_errorprone_error_prone_annotations"): com_google_errorprone_error_prone_annotations() if not native.existing_rule("com_google_guava_guava"): com_google_guava_guava() if not native.existing_rule("com_google_guava_failureaccess"): com_google_guava_failureaccess() if not native.existing_rule("com_google_j2objc_j2objc_annotations"): com_google_j2objc_j2objc_annotations() if not native.existing_rule("com_google_truth_truth"): com_google_truth_truth() if not native.existing_rule("com_squareup_okhttp_okhttp"): com_squareup_okhttp_okhttp() if not native.existing_rule("com_squareup_okio_okio"): com_squareup_okio_okio() if not native.existing_rule("io_netty_netty_buffer"): io_netty_netty_buffer() if not native.existing_rule("io_netty_netty_codec"): io_netty_netty_codec() if not native.existing_rule("io_netty_netty_codec_http"): io_netty_netty_codec_http() if not native.existing_rule("io_netty_netty_codec_http2"): io_netty_netty_codec_http2() if not native.existing_rule("io_netty_netty_codec_socks"): io_netty_netty_codec_socks() if not native.existing_rule("io_netty_netty_common"): io_netty_netty_common() if not native.existing_rule("io_netty_netty_handler"): io_netty_netty_handler() if not native.existing_rule("io_netty_netty_handler_proxy"): io_netty_netty_handler_proxy() if not native.existing_rule("io_netty_netty_resolver"): io_netty_netty_resolver() if not native.existing_rule("io_netty_netty_tcnative_boringssl_static"): io_netty_netty_tcnative_boringssl_static() if not native.existing_rule("io_netty_netty_transport"): io_netty_netty_transport() if not native.existing_rule("io_netty_netty_transport_native_epoll_linux_x86_64"): io_netty_netty_transport_native_epoll_linux_x86_64() if not native.existing_rule("io_opencensus_opencensus_api"): io_opencensus_opencensus_api() if not native.existing_rule("io_opencensus_opencensus_contrib_grpc_metrics"): io_opencensus_opencensus_contrib_grpc_metrics() if not native.existing_rule("io_perfmark_perfmark_api"): io_perfmark_perfmark_api() if not native.existing_rule("junit_junit"): junit_junit() if not native.existing_rule("org_apache_commons_commons_lang3"): org_apache_commons_commons_lang3() if not native.existing_rule("org_apache_tomcat_annotations_api"): org_apache_tomcat_annotations_api() if not native.existing_rule("org_codehaus_mojo_animal_sniffer_annotations"): org_codehaus_mojo_animal_sniffer_annotations() native.bind( name = "guava", actual = "@com_google_guava_guava//jar", ) native.bind( name = "gson", actual = "@com_google_code_gson_gson//jar", ) native.bind( name = "error_prone_annotations", actual = "@com_google_errorprone_error_prone_annotations//jar", ) def com_google_android_annotations(): jvm_maven_import_external( name = "com_google_android_annotations", artifact = "com.google.android:annotations:4.1.1.4", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "ba734e1e84c09d615af6a09d33034b4f0442f8772dec120efb376d86a565ae15", licenses = ["notice"], # Apache 2.0 ) def com_google_api_grpc_proto_google_common_protos(): jvm_maven_import_external( name = "com_google_api_grpc_proto_google_common_protos", artifact = "com.google.api.grpc:proto-google-common-protos:1.17.0", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "ad25472c73ee470606fb500b376ae5a97973d5406c2f5c3b7d07fb25b4648b65", licenses = ["notice"], # Apache 2.0 ) def com_google_auth_google_auth_library_credentials(): jvm_maven_import_external( name = "com_google_auth_google_auth_library_credentials", artifact = "com.google.auth:google-auth-library-credentials:0.20.0", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "8a415273a5dae5c8f9080134e53b9592dc171ca5d13127488c910177c5903bd6", licenses = ["notice"], # BSD 3-clause ) def com_google_auth_google_auth_library_oauth2_http(): jvm_maven_import_external( name = "com_google_auth_google_auth_library_oauth2_http", artifact = "com.google.auth:google-auth-library-oauth2-http:0.20.0", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "43e96e8c07285c2887042eda4e35ca96522ef361f6c1843f469039d9ccdc8f8a", licenses = ["notice"], # BSD 3-clause ) def com_google_code_findbugs_jsr305(): jvm_maven_import_external( name = "com_google_code_findbugs_jsr305", artifact = "com.google.code.findbugs:jsr305:3.0.2", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "766ad2a0783f2687962c8ad74ceecc38a28b9f72a2d085ee438b7813e928d0c7", licenses = ["notice"], # Apache 2.0 ) def com_google_code_gson_gson(): jvm_maven_import_external( name = "com_google_code_gson_gson", artifact = "com.google.code.gson:gson:jar:2.8.6", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "c8fb4839054d280b3033f800d1f5a97de2f028eb8ba2eb458ad287e536f3f25f", licenses = ["notice"], # Apache 2.0 ) def com_google_errorprone_error_prone_annotations(): jvm_maven_import_external( name = "com_google_errorprone_error_prone_annotations", artifact = "com.google.errorprone:error_prone_annotations:2.3.4", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "baf7d6ea97ce606c53e11b6854ba5f2ce7ef5c24dddf0afa18d1260bd25b002c", licenses = ["notice"], # Apache 2.0 ) def com_google_guava_guava(): jvm_maven_import_external( name = "com_google_guava_guava", artifact = "com.google.guava:guava:29.0-android", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "00ba22cb0e32610db7cf8ab4c20017c85d11788600734ff1d86995345eb5bc3b", licenses = ["notice"], # Apache 2.0 ) def com_google_guava_failureaccess(): jvm_maven_import_external( name = "com_google_guava_failureaccess", artifact = "com.google.guava:failureaccess:1.0.1", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "a171ee4c734dd2da837e4b16be9df4661afab72a41adaf31eb84dfdaf936ca26", licenses = ["notice"], # Apache 2.0 ) def com_google_j2objc_j2objc_annotations(): jvm_maven_import_external( name = "com_google_j2objc_j2objc_annotations", artifact = "com.google.j2objc:j2objc-annotations:1.3", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "21af30c92267bd6122c0e0b4d20cccb6641a37eaf956c6540ec471d584e64a7b", licenses = ["notice"], # Apache 2.0 ) def com_google_protobuf(): # proto_library rules implicitly depend on @com_google_protobuf//:protoc, # which is the proto-compiler. # This statement defines the @com_google_protobuf repo. http_archive( name = "com_google_protobuf", sha256 = "b37e96e81842af659605908a421960a5dc809acbc888f6b947bc320f8628e5b1", strip_prefix = "protobuf-3.12.0", urls = ["https://github.com/protocolbuffers/protobuf/archive/v3.12.0.zip"], ) def com_google_protobuf_javalite(): # java_lite_proto_library rules implicitly depend on @com_google_protobuf_javalite http_archive( name = "com_google_protobuf_javalite", sha256 = "b37e96e81842af659605908a421960a5dc809acbc888f6b947bc320f8628e5b1", strip_prefix = "protobuf-3.12.0", urls = ["https://github.com/protocolbuffers/protobuf/archive/v3.12.0.zip"], ) def com_google_truth_truth(): jvm_maven_import_external( name = "com_google_truth_truth", artifact = "com.google.truth:truth:1.0.1", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "1ccf4334e7a94cf00a20a619b5462b53acf3274e00b70498bf5b28a3bc1be9b1", licenses = ["notice"], # Apache 2.0 ) def com_squareup_okhttp_okhttp(): jvm_maven_import_external( name = "com_squareup_okhttp_okhttp", artifact = "com.squareup.okhttp:okhttp:2.7.4", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "c88be9af1509d5aeec9394a818c0fa08e26fad9d64ba134e6f977e0bb20cb114", licenses = ["notice"], # Apache 2.0 ) def com_squareup_okio_okio(): jvm_maven_import_external( name = "com_squareup_okio_okio", artifact = "com.squareup.okio:okio:1.13.0", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "734269c3ebc5090e3b23566db558f421f0b4027277c79ad5d176b8ec168bb850", licenses = ["notice"], # Apache 2.0 ) def io_grpc_grpc_proto(): http_archive( name = "io_grpc_grpc_proto", sha256 = "5848a4e034126bece0c37c16554fb80625615aedf1acad4e2a3cdbaaa76944eb", strip_prefix = "grpc-proto-cf828d0e1155e5ea58b46d7184ee5596e03ddcb8", urls = ["https://github.com/grpc/grpc-proto/archive/cf828d0e1155e5ea58b46d7184ee5596e03ddcb8.zip"], ) def io_netty_netty_buffer(): jvm_maven_import_external( name = "io_netty_netty_buffer", artifact = "io.netty:netty-buffer:4.1.51.Final", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "c3c3b710e1b5a8df3d60cd4602e0a743481d5e609e4aa852fa2629e4e412d245", licenses = ["notice"], # Apache 2.0 ) def io_netty_netty_codec(): jvm_maven_import_external( name = "io_netty_netty_codec", artifact = "io.netty:netty-codec:4.1.51.Final", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "ff741aaa35f7048a6be7c700aa4851bf643917648ea5b7c0cbada2f3848c2bee", licenses = ["notice"], # Apache 2.0 ) def io_netty_netty_codec_http(): jvm_maven_import_external( name = "io_netty_netty_codec_http", artifact = "io.netty:netty-codec-http:4.1.51.Final", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "e2fc9d846b77160d30df733bf9e88c6bcc589ab4a54719ac6c9195dd82865bea", licenses = ["notice"], # Apache 2.0 ) def io_netty_netty_codec_http2(): jvm_maven_import_external( name = "io_netty_netty_codec_http2", artifact = "io.netty:netty-codec-http2:4.1.51.Final", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "48b0102de286e1f5528a17aed5b2a4fb35615b358fdde1b4d8702484f29cf87d", licenses = ["notice"], # Apache 2.0 ) def io_netty_netty_codec_socks(): jvm_maven_import_external( name = "io_netty_netty_codec_socks", artifact = "io.netty:netty-codec-socks:4.1.51.Final", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "bd4d6f8917059a178eb4f94801f7dbfbde0f9f09accfdcf1addccd72081cf9a2", licenses = ["notice"], # Apache 2.0 ) def io_netty_netty_common(): jvm_maven_import_external( name = "io_netty_netty_common", artifact = "io.netty:netty-common:4.1.51.Final", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "110e06515f43913a2bbac23e1aa78b7f59ae09d466b00af5fcf399a4f9af1b6b", licenses = ["notice"], # Apache 2.0 ) def io_netty_netty_handler(): jvm_maven_import_external( name = "io_netty_netty_handler", artifact = "io.netty:netty-handler:4.1.51.Final", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "4461970f04f4d5eb9112ad94255ce1987394ce64de6c3c87690bf0865c936258", licenses = ["notice"], # Apache 2.0 ) def io_netty_netty_handler_proxy(): jvm_maven_import_external( name = "io_netty_netty_handler_proxy", artifact = "io.netty:netty-handler-proxy:4.1.51.Final", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "8ed8f70c5c9591e9f168b7ae6b315944409ef404839204d972906e8e1de171dd", licenses = ["notice"], # Apache 2.0 ) def io_netty_netty_resolver(): jvm_maven_import_external( name = "io_netty_netty_resolver", artifact = "io.netty:netty-resolver:4.1.51.Final", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "c8a77765e481fbf5906c596eb441de49096b354bcae0356b7404ac5e96399350", licenses = ["notice"], # Apache 2.0 ) def io_netty_netty_tcnative_boringssl_static(): jvm_maven_import_external( name = "io_netty_netty_tcnative_boringssl_static", artifact = "io.netty:netty-tcnative-boringssl-static:2.0.31.Final", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "308e7e1f5faea3ff86bf689f6309b8605090cdd5186586a52e418bf48af93d68", licenses = ["notice"], # Apache 2.0 ) def io_netty_netty_transport(): jvm_maven_import_external( name = "io_netty_netty_transport", artifact = "io.netty:netty-transport:4.1.51.Final", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "e5be259f35a246bf504ad93ea8f5df31872b5abebfb751380eab95d5dc840d44", licenses = ["notice"], # Apache 2.0 ) def io_netty_netty_transport_native_epoll_linux_x86_64(): jvm_maven_import_external( name = "io_netty_netty_transport_native_epoll_linux_x86_64", artifact = "io.netty:netty-transport-native-epoll:jar:linux-x86_64:4.1.51.Final", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "8058a306f5b4d511f8d31e6700121359a659dd90fe3a0902d2b32e70bdc21a57", licenses = ["notice"], # Apache 2.0 ) def io_opencensus_opencensus_api(): jvm_maven_import_external( name = "io_opencensus_opencensus_api", artifact = "io.opencensus:opencensus-api:0.24.0", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "f561b1cc2673844288e596ddf5bb6596868a8472fd2cb8993953fc5c034b2352", licenses = ["notice"], # Apache 2.0 ) def io_opencensus_opencensus_contrib_grpc_metrics(): jvm_maven_import_external( name = "io_opencensus_opencensus_contrib_grpc_metrics", artifact = "io.opencensus:opencensus-contrib-grpc-metrics:0.24.0", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "875582e093f11950ad3f4a50b5fee33a008023f7d1e47820a1bef05d23b9ed42", licenses = ["notice"], # Apache 2.0 ) def io_perfmark_perfmark_api(): jvm_maven_import_external( name = "io_perfmark_perfmark_api", artifact = "io.perfmark:perfmark-api:0.19.0", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "b734ba2149712409a44eabdb799f64768578fee0defe1418bb108fe32ea43e1a", licenses = ["notice"], # Apache 2.0 ) def junit_junit(): jvm_maven_import_external( name = "junit_junit", artifact = "junit:junit:4.12", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "59721f0805e223d84b90677887d9ff567dc534d7c502ca903c0c2b17f05c116a", licenses = ["notice"], # EPL 1.0 ) def org_apache_commons_commons_lang3(): jvm_maven_import_external( name = "org_apache_commons_commons_lang3", artifact = "org.apache.commons:commons-lang3:3.5", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "8ac96fc686512d777fca85e144f196cd7cfe0c0aec23127229497d1a38ff651c", licenses = ["notice"], # Apache 2.0 ) def org_apache_tomcat_annotations_api(): # Use //stub:javax_annotation for neverlink=1 support. jvm_maven_import_external( name = "org_apache_tomcat_annotations_api", artifact = "org.apache.tomcat:annotations-api:6.0.53", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "253829d3c12b7381d1044fc22c6436cff025fe0d459e4a329413e560a7d0dd13", licenses = ["notice"], # Apache 2.0 ) def org_codehaus_mojo_animal_sniffer_annotations(): jvm_maven_import_external( name = "org_codehaus_mojo_animal_sniffer_annotations", artifact = "org.codehaus.mojo:animal-sniffer-annotations:1.18", server_urls = ["https://repo.maven.apache.org/maven2/"], artifact_sha256 = "47f05852b48ee9baefef80fa3d8cea60efa4753c0013121dd7fe5eef2e5c729d", licenses = ["notice"], # MIT )