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 15include($ENV{PW_ROOT}/pw_build/pigweed.cmake) 16 17pw_add_library(pw_allocator.bucket.base INTERFACE 18 HEADERS 19 public/pw_allocator/bucket/base.h 20 PUBLIC_INCLUDES 21 public 22 PUBLIC_DEPS 23 pw_allocator.config 24 pw_allocator.deallocator 25 pw_allocator.block.poisonable 26) 27 28pw_add_library(pw_allocator.bucket.fast_sorted INTERFACE 29 HEADERS 30 public/pw_allocator/bucket/fast_sorted.h 31 PUBLIC_INCLUDES 32 public 33 PUBLIC_DEPS 34 pw_allocator.bucket.base 35 pw_containers.intrusive_multimap 36) 37 38pw_add_library(pw_allocator.bucket.sequenced INTERFACE 39 HEADERS 40 public/pw_allocator/bucket/sequenced.h 41 PUBLIC_INCLUDES 42 public 43 PUBLIC_DEPS 44 pw_allocator.bucket.base 45 pw_containers.intrusive_list 46) 47 48pw_add_library(pw_allocator.bucket.sorted INTERFACE 49 HEADERS 50 public/pw_allocator/bucket/sorted.h 51 PUBLIC_INCLUDES 52 public 53 PUBLIC_DEPS 54 pw_allocator.bucket.base 55 pw_containers.intrusive_forward_list 56) 57 58pw_add_library(pw_allocator.bucket.unordered INTERFACE 59 HEADERS 60 public/pw_allocator/bucket/unordered.h 61 PUBLIC_INCLUDES 62 public 63 PUBLIC_DEPS 64 pw_allocator.bucket.base 65 pw_containers.intrusive_forward_list 66) 67 68pw_add_library(pw_allocator.bucket.testing INTERFACE 69 HEADERS 70 public/pw_allocator/bucket/testing.h 71 PUBLIC_INCLUDES 72 public 73 PUBLIC_DEPS 74 pw_allocator.bump_allocator 75 pw_allocator.buffer 76) 77 78pw_add_test(pw_allocator.bucket.fast_sorted_test 79 SOURCES 80 fast_sorted_test.cc 81 PRIVATE_DEPS 82 pw_allocator.bucket.fast_sorted 83 pw_allocator.bucket.testing 84 GROUPS 85 modules 86 pw_allocator 87) 88 89pw_add_test(pw_allocator.bucket.sequenced_test 90 SOURCES 91 sequenced_test.cc 92 PRIVATE_DEPS 93 pw_allocator.bucket.sequenced 94 pw_allocator.bucket.testing 95 GROUPS 96 modules 97 pw_allocator 98) 99 100pw_add_test(pw_allocator.bucket.sorted_test 101 SOURCES 102 sorted_test.cc 103 PRIVATE_DEPS 104 pw_allocator.bucket.sorted 105 pw_allocator.bucket.testing 106 GROUPS 107 modules 108 pw_allocator 109) 110 111pw_add_test(pw_allocator.bucket.unordered_test 112 SOURCES 113 unordered_test.cc 114 PRIVATE_DEPS 115 pw_allocator.bucket.unordered 116 pw_allocator.bucket.testing 117 GROUPS 118 modules 119 pw_allocator 120) 121