1// Copyright 2023 The Pigweed Authors 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); you may not 4// use this file except in compliance with the License. You may obtain a copy of 5// the License at 6// 7// https://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, WITHOUT 11// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 12// License for the specific language governing permissions and limitations under 13// the License. 14 15package { 16 default_applicable_licenses: ["external_pigweed_license"], 17} 18 19cc_library { 20 name: "pw_allocator", 21 cpp_std: "c++20", 22 vendor_available: true, 23 export_include_dirs: [ 24 "public", 25 "block/public", 26 "bucket/public", 27 ], 28 defaults: [ 29 "pw_android_common_backends", 30 ], 31 header_libs: [ 32 "pw_assert", 33 "fuchsia_sdk_lib_stdcompat", 34 ], 35 export_header_lib_headers: [ 36 "pw_assert", 37 "fuchsia_sdk_lib_stdcompat", 38 ], 39 export_static_lib_headers: [ 40 "pw_bytes", 41 "pw_containers", 42 "pw_metric", 43 "pw_numeric", 44 "pw_preprocessor", 45 "pw_result", 46 "pw_span", 47 "pw_status", 48 "pw_tokenizer", 49 ], 50 host_supported: true, 51 srcs: [ 52 "allocator.cc", 53 "allocator_as_pool.cc", 54 "block_allocator.cc", 55 "block/contiguous.cc", 56 "block/poisonable.cc", 57 "chunk_pool.cc", 58 "libc_allocator.cc", 59 "managed_ptr.cc", 60 ], 61 static_libs: [ 62 "pw_bytes", 63 "pw_containers", 64 "pw_metric", 65 "pw_numeric", 66 "pw_preprocessor", 67 "pw_result", 68 "pw_span", 69 "pw_status", 70 "pw_tokenizer", 71 ], 72} 73