aml_wif_331710030
Snap for 8564071 from 7f7740c9ea674bf465c2afe0496065f7a6a0449e to mainline-wifi-release

Change-Id: I88a1923e93f351642c9c75ad3d847c7cb64c5f2e
tree: 852e73e45af48623c78a152bdd5dc38f8a4986ab
  1. .bazelci/
  2. rules/
  3. src/
  4. test/
  5. toolchains/
  6. tools/
  7. AUTHORS
  8. BUILD
  9. CONTRIBUTING.md
  10. CONTRIBUTORS
  11. defs.bzl
  12. LICENSE
  13. METADATA
  14. MODULE_LICENSE_APACHE2
  15. README.md
  16. WORKSPACE
README.md

Android support in Bazel

Disclaimer

NOTE: This branch contains a development preview of the Starlark implementation of Android rules for Bazel. This code is incomplete and may not function as-is.

A version of Bazel built at or near head and the following flags are necessary to use these rules:

--experimental_enable_android_migration_apis
--experimental_google_legacy_api
--incompatible_java_common_parameters
--android_databinding_use_v3_4_args
--experimental_android_databinding_v2

Overview

This repository contains the Starlark implementation of Android rules in Bazel.

The rules are being incrementally converted from their native implementations in the Bazel source tree.

For the list of Android rules, see the Bazel documentation.

Getting Started

To use the new Bazel Android rules, add the following to your WORKSPACE file:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "build_bazel_rules_android",
    urls = ["https://github.com/bazelbuild/rules_android/archive/refs/heads/pre-alpha.zip"],
    strip_prefix = "rules_android-pre-alpha",
)
load("@build_bazel_rules_android//:defs.bzl", "rules_android_workspace")
rules_android_workspace()

register_toolchains(
  "@build_bazel_rules_android//toolchains/android:android_default_toolchain",
  "@build_bazel_rules_android//toolchains/android_sdk:android_sdk_tools",
)

Then, in your BUILD files, import and use the rules:

load("@build_bazel_rules_android//rules:rules.bzl", "android_library")
android_library(
    ...
)