1*7594170eSAndroid Build Coastguard Worker# Copyright (C) 2023 The Android Open Source Project 2*7594170eSAndroid Build Coastguard Worker# 3*7594170eSAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License"); 4*7594170eSAndroid Build Coastguard Worker# you may not use this file except in compliance with the License. 5*7594170eSAndroid Build Coastguard Worker# You may obtain a copy of the License at 6*7594170eSAndroid Build Coastguard Worker# 7*7594170eSAndroid Build Coastguard Worker# http://www.apache.org/licenses/LICENSE-2.0 8*7594170eSAndroid Build Coastguard Worker# 9*7594170eSAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software 10*7594170eSAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS, 11*7594170eSAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*7594170eSAndroid Build Coastguard Worker# See the License for the specific language governing permissions and 13*7594170eSAndroid Build Coastguard Worker# limitations under the License. 14*7594170eSAndroid Build Coastguard Worker 15*7594170eSAndroid Build Coastguard Workerload("@bazel_skylib//lib:selects.bzl", "selects") 16*7594170eSAndroid Build Coastguard Workerload(":config_setting_boolean_algebra_test.bzl", "config_setting_boolean_algebra_test_suite") 17*7594170eSAndroid Build Coastguard Workerload(":schema_validation_test.bzl", "schema_validation_test_suite") 18*7594170eSAndroid Build Coastguard Worker 19*7594170eSAndroid Build Coastguard Workerconfig_setting_boolean_algebra_test_suite( 20*7594170eSAndroid Build Coastguard Worker name = "config_setting_boolean_algebra_test_suite", 21*7594170eSAndroid Build Coastguard Worker) 22*7594170eSAndroid Build Coastguard Worker 23*7594170eSAndroid Build Coastguard Workerschema_validation_test_suite(name = "schema_validation_test_suite") 24*7594170eSAndroid Build Coastguard Worker 25*7594170eSAndroid Build Coastguard Worker# Stamp is a random flag that can only be 1 of 2 values, so it can be used to make 26*7594170eSAndroid Build Coastguard Worker# the always_on/off_config_settings. This concept is copied from skylib, but skylib 27*7594170eSAndroid Build Coastguard Worker# only actually made these always on/off config settings as part of the 28*7594170eSAndroid Build Coastguard Worker# config_setting_group macro. 29*7594170eSAndroid Build Coastguard Workerconfig_setting( 30*7594170eSAndroid Build Coastguard Worker name = "stamp_binary_on_check", 31*7594170eSAndroid Build Coastguard Worker values = {"stamp": "1"}, 32*7594170eSAndroid Build Coastguard Worker # For some reason bazel requires this to be visible to where 33*7594170eSAndroid Build Coastguard Worker # always_on_config_setting is used. 34*7594170eSAndroid Build Coastguard Worker visibility = ["//visibility:public"], 35*7594170eSAndroid Build Coastguard Worker) 36*7594170eSAndroid Build Coastguard Worker 37*7594170eSAndroid Build Coastguard Workerconfig_setting( 38*7594170eSAndroid Build Coastguard Worker name = "stamp_binary_off_check", 39*7594170eSAndroid Build Coastguard Worker values = {"stamp": "0"}, 40*7594170eSAndroid Build Coastguard Worker # For some reason bazel requires this to be visible to where 41*7594170eSAndroid Build Coastguard Worker # always_on_config_setting is used. 42*7594170eSAndroid Build Coastguard Worker visibility = ["//visibility:public"], 43*7594170eSAndroid Build Coastguard Worker) 44*7594170eSAndroid Build Coastguard Worker 45*7594170eSAndroid Build Coastguard Workerselects.config_setting_group( 46*7594170eSAndroid Build Coastguard Worker name = "always_on_config_setting", 47*7594170eSAndroid Build Coastguard Worker match_any = [ 48*7594170eSAndroid Build Coastguard Worker ":stamp_binary_off_check", 49*7594170eSAndroid Build Coastguard Worker ":stamp_binary_on_check", 50*7594170eSAndroid Build Coastguard Worker ], 51*7594170eSAndroid Build Coastguard Worker visibility = ["//visibility:public"], 52*7594170eSAndroid Build Coastguard Worker) 53*7594170eSAndroid Build Coastguard Worker 54*7594170eSAndroid Build Coastguard Workerselects.config_setting_group( 55*7594170eSAndroid Build Coastguard Worker name = "always_off_config_setting", 56*7594170eSAndroid Build Coastguard Worker match_all = [ 57*7594170eSAndroid Build Coastguard Worker ":stamp_binary_off_check", 58*7594170eSAndroid Build Coastguard Worker ":stamp_binary_on_check", 59*7594170eSAndroid Build Coastguard Worker ], 60*7594170eSAndroid Build Coastguard Worker visibility = ["//visibility:public"], 61*7594170eSAndroid Build Coastguard Worker) 62*7594170eSAndroid Build Coastguard Worker 63*7594170eSAndroid Build Coastguard Workerfilegroup(name = "empty_filegroup") 64*7594170eSAndroid Build Coastguard Worker 65*7594170eSAndroid Build Coastguard Workersh_binary( 66*7594170eSAndroid Build Coastguard Worker name = "fail", 67*7594170eSAndroid Build Coastguard Worker srcs = ["fail.sh"], 68*7594170eSAndroid Build Coastguard Worker) 69