• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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: ["public"],
24    defaults: [
25        "pw_android_common_backends",
26    ],
27    header_libs: [
28        "pw_assert",
29        "pw_log",
30    ],
31    export_header_lib_headers: [
32        "pw_assert",
33    ],
34    export_static_lib_headers: [
35        "pw_metric",
36        "pw_preprocessor",
37        "pw_result",
38        "pw_span",
39        "pw_status",
40        "pw_tokenizer",
41    ],
42    host_supported: true,
43    srcs: [
44        "allocator.cc",
45        "allocator_as_pool.cc",
46        "block.cc",
47        "chunk_pool.cc",
48        "freelist.cc",
49        "freelist_heap.cc",
50        "libc_allocator.cc",
51        "unique_ptr.cc",
52    ],
53    static_libs: [
54        "pw_base64",
55        "pw_bytes",
56        "pw_containers",
57        "pw_metric",
58        "pw_preprocessor",
59        "pw_result",
60        "pw_span",
61        "pw_status",
62        "pw_tokenizer",
63        "pw_tokenizer_base64",
64    ],
65}
66