diff options
author | John Cater <jcater@google.com> | 2023-09-28 08:25:15 -0700 |
---|---|---|
committer | Copybara-Service <copybara-worker@google.com> | 2023-09-28 08:25:53 -0700 |
commit | 46aaa9051b8d87e9b539ab22b2e28e9d19594d39 (patch) | |
tree | 79b9853f930bd5d7e95015c42d836a51661eb062 | |
parent | 7a0782071db74dd4b111318311761ee7bbaea241 (diff) | |
download | bazelbuild-rules_android-46aaa9051b8d87e9b539ab22b2e28e9d19594d39.tar.gz |
Split rules_android dependendies into those needed for development and those needed by projects which depend on rules_android.
This mimics MODULE.bazel's `dev_dependency` attribute.
PiperOrigin-RevId: 569188850
Change-Id: Ie29cc92561ed162a51b0fa00e4ac724a3a9b0747
-rw-r--r-- | WORKSPACE | 7 | ||||
-rw-r--r-- | defs.bzl | 11 | ||||
-rw-r--r-- | defs_dev.bzl | 31 | ||||
-rw-r--r-- | prereqs.bzl | 37 |
4 files changed, 55 insertions, 31 deletions
@@ -19,12 +19,15 @@ maybe( android_sdk_supplemental_repository(name = "androidsdk-supplemental") load("prereqs.bzl", "rules_android_prereqs") -rules_android_prereqs() -load("defs.bzl", "rules_android_workspace") +rules_android_prereqs(dev_mode = True) + +load("defs_dev.bzl", "rules_android_workspace") rules_android_workspace() register_toolchains("//toolchains/android:all") + register_toolchains("//toolchains/android_sdk:all") + register_toolchains("//toolchains/emulator:all") @@ -16,11 +16,9 @@ load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies", "go_repository") load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace") -load("@cgrindel_bazel_starlib//:deps.bzl", "bazel_starlib_dependencies") load("@com_google_protobuf//:protobuf_deps.bzl", "protobuf_deps") load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") load("@robolectric//bazel:robolectric.bzl", "robolectric_repositories") -load("@rules_bazel_integration_test//bazel_integration_test:defs.bzl", "bazel_binaries") load("@rules_java//java:repositories.bzl", "rules_java_dependencies", "rules_java_toolchains") load("@rules_jvm_external//:defs.bzl", "maven_install") load("@rules_proto//proto:repositories.bzl", "rules_proto_dependencies", "rules_proto_toolchains") @@ -92,12 +90,3 @@ def rules_android_workspace(): rules_proto_toolchains() py_repositories() - - # Integration test setup - bazel_starlib_dependencies() - - bazel_binaries( - versions = [ - "last_green", - ], - ) diff --git a/defs_dev.bzl b/defs_dev.bzl new file mode 100644 index 0000000..7c31efe --- /dev/null +++ b/defs_dev.bzl @@ -0,0 +1,31 @@ +# Copyright 2023 The Bazel Authors. All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Workspace setup macro for rules_android development.""" + +load("@cgrindel_bazel_starlib//:deps.bzl", "bazel_starlib_dependencies") +load("@rules_bazel_integration_test//bazel_integration_test:defs.bzl", "bazel_binaries") +load(":defs.bzl", non_dev_workspace = "rules_android_workspace") + +def rules_android_workspace(): + non_dev_workspace() + + # Integration test setup + bazel_starlib_dependencies() + + bazel_binaries( + versions = [ + "last_green", + ], + ) diff --git a/prereqs.bzl b/prereqs.bzl index 2c70587..627ccad 100644 --- a/prereqs.bzl +++ b/prereqs.bzl @@ -17,7 +17,7 @@ load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") load("@bazel_tools//tools/build_defs/repo:utils.bzl", "maybe") -def rules_android_prereqs(): +def rules_android_prereqs(dev_mode = False): """Downloads prerequisite repositories for rules_android.""" maybe( http_archive, @@ -133,20 +133,21 @@ def rules_android_prereqs(): sha256 = "84aec9e21cc56fbc7f1335035a71c850d1b9b5cc6ff497306f84cced9a769841", ) - maybe( - http_archive, - name = "rules_bazel_integration_test", - sha256 = "d6dada79939533a8127000d2aafa125f29a4a97f720e01c050fdeb81b1080b08", - urls = [ - "https://github.com/bazel-contrib/rules_bazel_integration_test/releases/download/v0.17.0/rules_bazel_integration_test.v0.17.0.tar.gz", - ], - ) - - maybe( - http_archive, - name = "cgrindel_bazel_starlib", - sha256 = "a8d25340956b429b56302d3fd702bb3df8b3a67db248dd32b3084891ad497964", - urls = [ - "https://github.com/cgrindel/bazel-starlib/releases/download/v0.17.0/bazel-starlib.v0.17.0.tar.gz", - ], - ) + if dev_mode: + maybe( + http_archive, + name = "rules_bazel_integration_test", + sha256 = "d6dada79939533a8127000d2aafa125f29a4a97f720e01c050fdeb81b1080b08", + urls = [ + "https://github.com/bazel-contrib/rules_bazel_integration_test/releases/download/v0.17.0/rules_bazel_integration_test.v0.17.0.tar.gz", + ], + ) + + maybe( + http_archive, + name = "cgrindel_bazel_starlib", + sha256 = "a8d25340956b429b56302d3fd702bb3df8b3a67db248dd32b3084891ad497964", + urls = [ + "https://github.com/cgrindel/bazel-starlib/releases/download/v0.17.0/bazel-starlib.v0.17.0.tar.gz", + ], + ) |