1# Copyright 2021 The Bazel Authors. All rights reserved. 2# 3# Licensed under the Apache License, Version 2.0 (the "License"); 4# you may not use this file except in compliance with the License. 5# You may obtain a copy of the License at 6# 7# http://www.apache.org/licenses/LICENSE-2.0 8# 9# Unless required by applicable law or agreed to in writing, software 10# distributed under the License is distributed on an "AS IS" BASIS, 11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12# See the License for the specific language governing permissions and 13# limitations under the License. 14 15"""Workspace setup macro for rules_android.""" 16 17load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies", "go_repository") 18load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace") 19load("@com_google_protobuf//:protobuf_deps.bzl", "protobuf_deps") 20load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") 21load("@robolectric//bazel:robolectric.bzl", "robolectric_repositories") 22load("@rules_java//java:repositories.bzl", "rules_java_dependencies", "rules_java_toolchains") 23load("@rules_jvm_external//:defs.bzl", "maven_install") 24load("@rules_proto//proto:repositories.bzl", "rules_proto_dependencies", "rules_proto_toolchains") 25load("@rules_python//python:repositories.bzl", "py_repositories") 26 27def rules_android_workspace(): 28 """ Sets up workspace dependencies for rules_android.""" 29 bazel_skylib_workspace() 30 31 protobuf_deps() 32 33 maven_install( 34 name = "rules_android_maven", 35 artifacts = [ 36 "androidx.privacysandbox.tools:tools:1.0.0-alpha06", 37 "androidx.privacysandbox.tools:tools-apigenerator:1.0.0-alpha06", 38 "androidx.privacysandbox.tools:tools-apipackager:1.0.0-alpha06", 39 "androidx.test:core:1.6.0-alpha01", 40 "androidx.test.ext:junit:1.2.0-alpha01", 41 "com.android.tools.build:bundletool:1.15.2", 42 "com.android.tools.build:gradle:8.2.0-alpha15", 43 "org.robolectric:robolectric:4.10.3", 44 "com.google.guava:guava:32.1.2-jre", 45 "com.google.protobuf:protobuf-java-util:3.9.2", 46 "com.google.truth:truth:1.1.5", 47 "info.picocli:picocli:4.7.4", 48 "junit:junit:4.13.2", 49 ], 50 repositories = [ 51 "https://maven.google.com", 52 "https://repo1.maven.org/maven2", 53 ], 54 ) 55 56 go_rules_dependencies() 57 58 go_register_toolchains(version = "1.20.5") 59 60 gazelle_dependencies() 61 # gazelle:repository go_repository name=org_golang_x_xerrors importpath=golang.org/x/xerrors 62 63 go_repository( 64 name = "org_golang_google_protobuf", 65 importpath = "google.golang.org/protobuf", 66 sum = "h1:d0NfwRgPtno5B1Wa6L2DAG+KivqkdutMf1UhdNx175w=", 67 version = "v1.28.1", 68 ) 69 70 go_repository( 71 name = "com_github_google_go_cmp", 72 importpath = "github.com/google/go-cmp", 73 sum = "h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38=", 74 version = "v0.5.9", 75 ) 76 77 go_repository( 78 name = "org_golang_x_sync", 79 importpath = "golang.org/x/sync", 80 sum = "h1:5KslGYwFpkhGh+Q16bwMP3cOontH8FOep7tGV86Y7SQ=", 81 version = "v0.0.0-20210220032951-036812b2e83c", 82 ) 83 84 go_repository( 85 name = "com_github_golang_glog", 86 importpath = "github.com/golang/glog", 87 version = "v1.1.2", 88 sum = "h1:DVjP2PbBOzHyzA+dn3WhHIq4NdVu3Q+pvivFICf/7fo=", 89 ) 90 91 robolectric_repositories() 92 93 rules_java_dependencies() 94 rules_java_toolchains() 95 96 rules_proto_dependencies() 97 rules_proto_toolchains() 98 99 py_repositories() 100