1*5225e6b1SAndroid Build Coastguard Worker# Copyright (C) 2024 The Android Open Source Project 2*5225e6b1SAndroid Build Coastguard Worker# 3*5225e6b1SAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License"); 4*5225e6b1SAndroid Build Coastguard Worker# you may not use this file except in compliance with the License. 5*5225e6b1SAndroid Build Coastguard Worker# You may obtain a copy of the License at 6*5225e6b1SAndroid Build Coastguard Worker# 7*5225e6b1SAndroid Build Coastguard Worker# http://www.apache.org/licenses/LICENSE-2.0 8*5225e6b1SAndroid Build Coastguard Worker# 9*5225e6b1SAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software 10*5225e6b1SAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS, 11*5225e6b1SAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*5225e6b1SAndroid Build Coastguard Worker# See the License for the specific language governing permissions and 13*5225e6b1SAndroid Build Coastguard Worker# limitations under the License. 14*5225e6b1SAndroid Build Coastguard Worker 15*5225e6b1SAndroid Build Coastguard Workerload("@gbl//toolchain:gbl_workspace_util.bzl", "ANDROID_RUST_LINTS") 16*5225e6b1SAndroid Build Coastguard Workerload("@rules_rust//rust:defs.bzl", "rust_library", "rust_test") 17*5225e6b1SAndroid Build Coastguard Worker 18*5225e6b1SAndroid Build Coastguard Workerrust_library( 19*5225e6b1SAndroid Build Coastguard Worker name = "libgbl", 20*5225e6b1SAndroid Build Coastguard Worker srcs = glob( 21*5225e6b1SAndroid Build Coastguard Worker ["**/*.rs"], 22*5225e6b1SAndroid Build Coastguard Worker exclude = ["tests/**/*.rs"], 23*5225e6b1SAndroid Build Coastguard Worker ), 24*5225e6b1SAndroid Build Coastguard Worker aliases = {"@itertools_noalloc": "itertools_noalloc"}, 25*5225e6b1SAndroid Build Coastguard Worker edition = "2021", 26*5225e6b1SAndroid Build Coastguard Worker rustc_flags = ANDROID_RUST_LINTS, 27*5225e6b1SAndroid Build Coastguard Worker visibility = ["//visibility:public"], 28*5225e6b1SAndroid Build Coastguard Worker deps = [ 29*5225e6b1SAndroid Build Coastguard Worker "@arrayvec", 30*5225e6b1SAndroid Build Coastguard Worker "@avb", 31*5225e6b1SAndroid Build Coastguard Worker "@avb//:avb_bindgen", 32*5225e6b1SAndroid Build Coastguard Worker "@bitflags", 33*5225e6b1SAndroid Build Coastguard Worker "@crc32fast", 34*5225e6b1SAndroid Build Coastguard Worker "@cstr", 35*5225e6b1SAndroid Build Coastguard Worker "@gbl//libabr", 36*5225e6b1SAndroid Build Coastguard Worker "@gbl//libasync", 37*5225e6b1SAndroid Build Coastguard Worker "@gbl//libboot", 38*5225e6b1SAndroid Build Coastguard Worker "@gbl//libbootimg", 39*5225e6b1SAndroid Build Coastguard Worker "@gbl//libbootparams", 40*5225e6b1SAndroid Build Coastguard Worker "@gbl//libdttable", 41*5225e6b1SAndroid Build Coastguard Worker "@gbl//liberror", 42*5225e6b1SAndroid Build Coastguard Worker "@gbl//libfastboot", 43*5225e6b1SAndroid Build Coastguard Worker "@gbl//libfdt", 44*5225e6b1SAndroid Build Coastguard Worker "@gbl//libmisc", 45*5225e6b1SAndroid Build Coastguard Worker "@gbl//libsafemath", 46*5225e6b1SAndroid Build Coastguard Worker "@gbl//libstorage", 47*5225e6b1SAndroid Build Coastguard Worker "@gbl//libutils", 48*5225e6b1SAndroid Build Coastguard Worker "@itertools_noalloc", 49*5225e6b1SAndroid Build Coastguard Worker "@lz4_flex", 50*5225e6b1SAndroid Build Coastguard Worker "@spin", 51*5225e6b1SAndroid Build Coastguard Worker "@static_assertions", 52*5225e6b1SAndroid Build Coastguard Worker "@uuid", 53*5225e6b1SAndroid Build Coastguard Worker "@zbi", 54*5225e6b1SAndroid Build Coastguard Worker "@zerocopy", 55*5225e6b1SAndroid Build Coastguard Worker "@zune_inflate", 56*5225e6b1SAndroid Build Coastguard Worker ], 57*5225e6b1SAndroid Build Coastguard Worker) 58*5225e6b1SAndroid Build Coastguard Worker 59*5225e6b1SAndroid Build Coastguard Workerrust_test( 60*5225e6b1SAndroid Build Coastguard Worker name = "libgbl_test", 61*5225e6b1SAndroid Build Coastguard Worker aliases = {"@itertools_noalloc": "itertools_noalloc"}, 62*5225e6b1SAndroid Build Coastguard Worker compile_data = [ 63*5225e6b1SAndroid Build Coastguard Worker "@gbl//libstorage/test:test_data", 64*5225e6b1SAndroid Build Coastguard Worker ], 65*5225e6b1SAndroid Build Coastguard Worker crate = ":libgbl", 66*5225e6b1SAndroid Build Coastguard Worker crate_features = ["uuid"], 67*5225e6b1SAndroid Build Coastguard Worker data = [ 68*5225e6b1SAndroid Build Coastguard Worker "@gbl//libdttable/test/data:all", 69*5225e6b1SAndroid Build Coastguard Worker "@gbl//libfdt/test/data:all", 70*5225e6b1SAndroid Build Coastguard Worker "@gbl//libgbl/testdata:cert_metadata.bin", 71*5225e6b1SAndroid Build Coastguard Worker "@gbl//libgbl/testdata:cert_permanent_attributes.bad.bin", 72*5225e6b1SAndroid Build Coastguard Worker "@gbl//libgbl/testdata:cert_permanent_attributes.bad.hash", 73*5225e6b1SAndroid Build Coastguard Worker "@gbl//libgbl/testdata:cert_permanent_attributes.bin", 74*5225e6b1SAndroid Build Coastguard Worker "@gbl//libgbl/testdata:cert_permanent_attributes.hash", 75*5225e6b1SAndroid Build Coastguard Worker "@gbl//libgbl/testdata:sparse_test.bin", 76*5225e6b1SAndroid Build Coastguard Worker "@gbl//libgbl/testdata:sparse_test_blk1024.bin", 77*5225e6b1SAndroid Build Coastguard Worker "@gbl//libgbl/testdata:sparse_test_raw.bin", 78*5225e6b1SAndroid Build Coastguard Worker "@gbl//libgbl/testdata:testkey_rsa4096_pub.bin", 79*5225e6b1SAndroid Build Coastguard Worker "@gbl//libgbl/testdata:vbmeta_a.bin", 80*5225e6b1SAndroid Build Coastguard Worker "@gbl//libgbl/testdata:vbmeta_b.bin", 81*5225e6b1SAndroid Build Coastguard Worker "@gbl//libgbl/testdata:vbmeta_r.bin", 82*5225e6b1SAndroid Build Coastguard Worker "@gbl//libgbl/testdata:vbmeta_slotless.bin", 83*5225e6b1SAndroid Build Coastguard Worker "@gbl//libgbl/testdata:writeback_test_disk.bin", 84*5225e6b1SAndroid Build Coastguard Worker "@gbl//libgbl/testdata:zircon_a.vbmeta", 85*5225e6b1SAndroid Build Coastguard Worker "@gbl//libgbl/testdata:zircon_a.vbmeta.cert", 86*5225e6b1SAndroid Build Coastguard Worker "@gbl//libgbl/testdata:zircon_a.zbi", 87*5225e6b1SAndroid Build Coastguard Worker "@gbl//libgbl/testdata:zircon_b.zbi", 88*5225e6b1SAndroid Build Coastguard Worker "@gbl//libgbl/testdata:zircon_r.zbi", 89*5225e6b1SAndroid Build Coastguard Worker "@gbl//libgbl/testdata:zircon_slotless.zbi", 90*5225e6b1SAndroid Build Coastguard Worker ], 91*5225e6b1SAndroid Build Coastguard Worker rustc_flags = ANDROID_RUST_LINTS, 92*5225e6b1SAndroid Build Coastguard Worker deps = [ 93*5225e6b1SAndroid Build Coastguard Worker "@avb//:avb_crypto_ops_sha_impl_staticlib", 94*5225e6b1SAndroid Build Coastguard Worker "@avb//:avb_test", 95*5225e6b1SAndroid Build Coastguard Worker "@gbl//libasync:cyclic_executor", 96*5225e6b1SAndroid Build Coastguard Worker "@gbl//libavb:sysdeps", 97*5225e6b1SAndroid Build Coastguard Worker "@itertools", 98*5225e6b1SAndroid Build Coastguard Worker "@itertools_noalloc", 99*5225e6b1SAndroid Build Coastguard Worker "@static_assertions", 100*5225e6b1SAndroid Build Coastguard Worker "@uuid", 101*5225e6b1SAndroid Build Coastguard Worker ], 102*5225e6b1SAndroid Build Coastguard Worker) 103