1*3a22c0a3SAlix# Copyright 2022 Google LLC. All rights reserved. 2*3a22c0a3SAlix# 3*3a22c0a3SAlix# Licensed under the Apache License, Version 2.0 (the License); 4*3a22c0a3SAlix# you may not use this file except in compliance with the License. 5*3a22c0a3SAlix# You may obtain a copy of the License at 6*3a22c0a3SAlix# 7*3a22c0a3SAlix# http://www.apache.org/licenses/LICENSE-2.0 8*3a22c0a3SAlix# 9*3a22c0a3SAlix# Unless required by applicable law or agreed to in writing, software 10*3a22c0a3SAlix# distributed under the License is distributed on an "AS IS" BASIS, 11*3a22c0a3SAlix# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*3a22c0a3SAlix# See the License for the specific language governing permissions and 13*3a22c0a3SAlix# limitations under the License. 14*3a22c0a3SAlix 15*3a22c0a3SAlix"""Android Lint toolchain for Kotlin.""" 16*3a22c0a3SAlix 17*3a22c0a3SAlixload("//:visibility.bzl", "RULES_KOTLIN") 18*3a22c0a3SAlixload("//bazel:stubs.bzl", "lint_actions") 19*3a22c0a3SAlix 20*3a22c0a3SAlixvisibility(RULES_KOTLIN) 21*3a22c0a3SAlix 22*3a22c0a3SAlix_ATTRS = dict( 23*3a22c0a3SAlix _android_lint_baseline_file = attr.label( 24*3a22c0a3SAlix allow_single_file = True, 25*3a22c0a3SAlix cfg = "exec", 26*3a22c0a3SAlix ), 27*3a22c0a3SAlix) 28*3a22c0a3SAlix 29*3a22c0a3SAlixdef _set_baselines(): 30*3a22c0a3SAlix return { 31*3a22c0a3SAlix # `$foo` is used to set `_foo` 32*3a22c0a3SAlix "$android_lint_baseline_file": lint_actions.get_android_lint_baseline_file(native.package_name()), 33*3a22c0a3SAlix } 34*3a22c0a3SAlix 35*3a22c0a3SAlixandroidlint_toolchains = struct( 36*3a22c0a3SAlix attrs = _ATTRS, 37*3a22c0a3SAlix get_baseline = lambda ctx: getattr(ctx.file, "_android_lint_baseline_file", None), 38*3a22c0a3SAlix set_baselines = _set_baselines, 39*3a22c0a3SAlix) 40