Skip to content

Commit

Permalink
Use rules_jvm_external to fetch jars dependencies (part 2)
Browse files Browse the repository at this point in the history
- Non-third_party changes in #17112

Merging #17112

Stacking on #17142

Closes #17143.

PiperOrigin-RevId: 500980364
Change-Id: Ie03d4bc8e167d8a27ed8b33cd90f2e3af2c472f6
  • Loading branch information
meteorcloudy authored and hvadehra committed Feb 14, 2023
1 parent 4307777 commit d803ff8
Show file tree
Hide file tree
Showing 9 changed files with 420 additions and 9 deletions.
3 changes: 2 additions & 1 deletion .bazelrc
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,8 @@ build:remote --config=ubuntu1804_java11
build:macos --macos_minimum_os=10.10

# Enable Bzlmod
build:bzlmod --experimental_enable_bzlmod
build:bzlmod --enable_bzlmod
build:bzlmod --check_direct_dependencies=error

# Enable Java 11 language features (https://github.com/bazelbuild/bazel/issues/14592)
build --java_language_version=11
Expand Down
11 changes: 11 additions & 0 deletions BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -161,6 +161,15 @@ pkg_tar(
visibility = ["//:__subpackages__"],
)

# The @maven repository is created by maven_install from rules_jvm_external.
# `@maven//:srcs` contains all jar files downloaded and BUILD files created by maven_install.
pkg_tar(
name = "maven-srcs",
srcs = ["@maven//:srcs"],
strip_prefix = "external",
visibility = ["//:__subpackages__"],
)

py_binary(
name = "combine_distfiles",
srcs = ["combine_distfiles.py"],
Expand All @@ -174,6 +183,7 @@ genrule(
":bazel-srcs",
":bootstrap-jars",
":platforms-srcs",
":maven-srcs",
"//src:derived_java_srcs",
"//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec:bootstrap_autocodec.tar",
"@additional_distfiles//:archives.tar",
Expand All @@ -191,6 +201,7 @@ genrule(
":bazel-srcs",
":bootstrap-jars",
":platforms-srcs",
":maven-srcs",
"//src:derived_java_srcs",
"//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec:bootstrap_autocodec.tar",
"@additional_distfiles//:archives.tar",
Expand Down
29 changes: 25 additions & 4 deletions MODULE.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -7,20 +7,41 @@ module(
)

bazel_dep(name = "rules_license", version = "0.0.3")
bazel_dep(name = "bazel_skylib", version = "1.2.0")
bazel_dep(name = "bazel_skylib", version = "1.3.0")
bazel_dep(name = "protobuf", version = "3.19.6", repo_name = "com_google_protobuf")
bazel_dep(name = "grpc", version = "1.47.0", repo_name = "com_github_grpc_grpc")
bazel_dep(name = "platforms", version = "0.0.5")
bazel_dep(name = "rules_pkg", version = "0.7.0")
bazel_dep(name = "stardoc", version = "0.5.0", repo_name = "io_bazel_skydoc")
bazel_dep(name = "stardoc", version = "0.5.3", repo_name = "io_bazel_skydoc")
bazel_dep(name = "zstd-jni", version = "1.5.2-3")
bazel_dep(name = "zlib", version = "1.2.13")

# The following are required when building without WORKSPACE SUFFIX
bazel_dep(name = "rules_cc", version = "0.0.2")
bazel_dep(name = "rules_java", version = "5.4.0")
bazel_dep(name = "rules_proto", version = "4.0.0")

bazel_dep(name = "rules_jvm_external", version = "4.5")
maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven")
maven.install(
artifacts = [
"com.google.guava:guava:31.1-jre",
"com.google.guava:guava-testlib:31.1-jre",
"com.google.guava:failureaccess:1.0.1",
"com.google.errorprone:error_prone_annotations:2.16",
"com.google.errorprone:error_prone_type_annotations:2.16",
"com.google.code.findbugs:jsr305:3.0.2",
"com.google.j2objc:j2objc-annotations:1.3",
"com.github.stephenc.jcip:jcip-annotations:1.0-1",
"org.checkerframework:checker-qual:3.12.0",
],
repositories = [
"https://dl.google.com/android/maven2",
"https://repo1.maven.org/maven2",
],
lock_file = "//:maven_install.json",
)

use_repo(maven, "maven", "unpinned_maven")

# TODO(pcloudy): Add remoteapis and googleapis as Bazel modules in the BCR.
bazel_dep(name = "remoteapis", version = "")
bazel_dep(name = "googleapis", version = "")
Expand Down
36 changes: 36 additions & 0 deletions WORKSPACE
Original file line number Diff line number Diff line change
Expand Up @@ -577,6 +577,10 @@ dist_http_archive(
name = "bazel_gazelle",
)

dist_http_archive(
name = "rules_jvm_external",
)

# Projects using gRPC as an external dependency must call both grpc_deps() and
# grpc_extra_deps().
load("@com_github_grpc_grpc//bazel:grpc_deps.bzl", "grpc_deps")
Expand All @@ -594,3 +598,35 @@ debian_deps()
load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace")

bazel_skylib_workspace()

load("@rules_jvm_external//:repositories.bzl", "rules_jvm_external_deps")

rules_jvm_external_deps()

load("@rules_jvm_external//:setup.bzl", "rules_jvm_external_setup")

rules_jvm_external_setup()

load("@rules_jvm_external//:defs.bzl", "maven_install")

maven_install(
artifacts = [
"com.google.guava:guava:31.1-jre",
"com.google.guava:guava-testlib:31.1-jre",
"com.google.guava:failureaccess:1.0.1",
"com.google.errorprone:error_prone_annotations:2.16",
"com.google.errorprone:error_prone_type_annotations:2.16",
"com.google.code.findbugs:jsr305:3.0.2",
"com.google.j2objc:j2objc-annotations:1.3",
"com.github.stephenc.jcip:jcip-annotations:1.0-1",
"org.checkerframework:checker-qual:3.12.0",
],
repositories = [
"https://dl.google.com/android/maven2",
"https://repo1.maven.org/maven2",
],
maven_install_json = "//:maven_install.json",
)

load("@maven//:defs.bzl", "pinned_maven_install")
pinned_maven_install()
16 changes: 16 additions & 0 deletions distdir_deps.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -339,6 +339,22 @@ DIST_DEPS = {
],
"package_version": "0.8.0",
},
"rules_jvm_external": {
"archive": "4.5.zip",
"sha256": "b17d7388feb9bfa7f2fa09031b32707df529f26c91ab9e5d909eb1676badd9a6",
"strip_prefix": "rules_jvm_external-4.5",
"patches": [
"//third_party:rules_jvm_external.patch",
],
"patch_args": ["-p1"],
"urls": [
"https://github.com/bazelbuild/rules_jvm_external/archive/4.5.zip",
],
"used_in": [
"additional_distfiles",
],
"package_version": "4.5",
},
"desugar_jdk_libs": {
# Commit 5847d6a06302136d95a14b4cbd4b55a9c9f1436e of 2021-03-10
"archive": "5847d6a06302136d95a14b4cbd4b55a9c9f1436e.zip",
Expand Down
Loading

0 comments on commit d803ff8

Please sign in to comment.