1# Copyright (C) 2023 The Android Open Source Project 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 15load("@gbl//toolchain:gbl_workspace_util.bzl", "ANDROID_RUST_LINTS") 16load("@rules_rust//rust:defs.bzl", "rust_doc_test", "rust_library", "rust_test") 17 18package( 19 default_visibility = ["//visibility:public"], 20) 21 22rust_library( 23 name = "libstorage", 24 srcs = [ 25 "src/algorithm.rs", 26 "src/gpt.rs", 27 "src/lib.rs", 28 "src/ram_block.rs", 29 ], 30 crate_name = "gbl_storage", 31 edition = "2021", 32 rustc_flags = ANDROID_RUST_LINTS, 33 deps = [ 34 "@crc32fast", 35 "@gbl//libasync", 36 "@gbl//liberror", 37 "@gbl//libsafemath", 38 "@gbl//libutils", 39 "@zerocopy", 40 ], 41) 42 43rust_test( 44 name = "libstorage_test", 45 compile_data = ["@gbl//libstorage/test:test_data"], 46 crate = ":libstorage", 47 rustc_flags = ANDROID_RUST_LINTS, 48) 49 50rust_doc_test( 51 name = "libstorage_doc_test", 52 crate = ":libstorage", 53) 54