diff options
Diffstat (limited to 'pw_allocator/CMakeLists.txt')
-rw-r--r-- | pw_allocator/CMakeLists.txt | 205 |
1 files changed, 204 insertions, 1 deletions
diff --git a/pw_allocator/CMakeLists.txt b/pw_allocator/CMakeLists.txt index 8a4d7b491..6f923edc7 100644 --- a/pw_allocator/CMakeLists.txt +++ b/pw_allocator/CMakeLists.txt @@ -14,19 +14,65 @@ include($ENV{PW_ROOT}/pw_build/pigweed.cmake) +pw_add_library(pw_allocator.allocator STATIC + HEADERS + public/pw_allocator/allocator.h + PUBLIC_INCLUDES + public + PUBLIC_DEPS + pw_status + PRIVATE_DEPS + pw_assert + pw_bytes + SOURCES + allocator.cc +) + +pw_add_library(pw_allocator.allocator_metric_proxy STATIC + HEADERS + public/pw_allocator/allocator_metric_proxy.h + PUBLIC_INCLUDES + public + PUBLIC_DEPS + pw_allocator.allocator + pw_metric + pw_status + PRIVATE_DEPS + pw_assert + SOURCES + allocator_metric_proxy.cc +) + pw_add_library(pw_allocator.block STATIC HEADERS public/pw_allocator/block.h PUBLIC_INCLUDES public PUBLIC_DEPS - pw_assert + pw_bytes + pw_result pw_span pw_status + pw_third_party.fuchsia.stdcompat + PRIVATE_DEPS + pw_assert SOURCES block.cc ) +pw_add_library(pw_allocator.fallback_allocator STATIC + HEADERS + public/pw_allocator/fallback_allocator.h + PUBLIC_INCLUDES + public + PUBLIC_DEPS + pw_allocator.allocator + pw_assert + pw_status + SOURCES + fallback_allocator.cc +) + pw_add_library(pw_allocator.freelist STATIC HEADERS public/pw_allocator/freelist.h @@ -56,6 +102,96 @@ pw_add_library(pw_allocator.freelist_heap STATIC freelist_heap.cc ) +pw_add_library(pw_allocator.libc_allocator STATIC + SOURCES + libc_allocator.cc + HEADERS + public/pw_allocator/libc_allocator.h + PUBLIC_INCLUDES + public + PUBLIC_DEPS + pw_allocator.allocator + pw_status + PRIVATE_DEPS + pw_assert + pw_bytes +) + +pw_add_library(pw_allocator.null_allocator INTERFACE + HEADERS + public/pw_allocator/null_allocator.h + PUBLIC_INCLUDES + public + PUBLIC_DEPS + pw_allocator.allocator +) + +pw_add_library(pw_allocator.simple_allocator INTERFACE + HEADERS + public/pw_allocator/simple_allocator.h + PUBLIC_DEPS + pw_allocator.allocator + pw_allocator.block + pw_bytes +) + +pw_add_library(pw_allocator.split_free_list_allocator STATIC + HEADERS + public/pw_allocator/split_free_list_allocator.h + PUBLIC_INCLUDES + public + PUBLIC_DEPS + pw_allocator.allocator + pw_allocator.block + pw_bytes + pw_result + pw_status + PRIVATE_DEPS + pw_assert + SOURCES + split_free_list_allocator.cc +) + +pw_add_library(pw_allocator.allocator_testing STATIC + HEADERS + public/pw_allocator/allocator_testing.h + PUBLIC_INCLUDES + public + PUBLIC_DEPS + pw_allocator.allocator + pw_allocator.block + pw_allocator.simple_allocator + pw_bytes + PRIVATE_DEPS + pw_assert + pw_unit_test + SOURCES + allocator_testing.cc +) + +pw_add_test(pw_allocator.allocator_test + SOURCES + allocator_test.cc + PRIVATE_DEPS + pw_allocator.allocator + pw_allocator.allocator_testing + pw_bytes + GROUPS + modules + pw_allocator +) + +pw_add_test(pw_allocator.allocator_metric_proxy_test + SOURCES + allocator_metric_proxy_test.cc + PRIVATE_DEPS + pw_allocator.allocator_metric_proxy + pw_allocator.allocator_testing + GROUPS + modules + pw_allocator +) + pw_add_test(pw_allocator.block_test SOURCES block_test.cc @@ -67,6 +203,18 @@ pw_add_test(pw_allocator.block_test pw_allocator ) +pw_add_test(pw_allocator.fallback_allocator_test + PRIVATE_DEPS + pw_allocator.allocator_testing + pw_allocator.fallback_allocator + pw_status + SOURCES + fallback_allocator_test.cc + GROUPS + modules + pw_allocator +) + pw_add_test(pw_allocator.freelist_test SOURCES freelist_test.cc @@ -88,3 +236,58 @@ pw_add_test(pw_allocator.freelist_heap_test modules pw_allocator ) + +pw_add_test(pw_allocator.libc_allocator_test + SOURCES + libc_allocator_test.cc + PRIVATE_DEPS + pw_allocator.libc_allocator + pw_unit_test + GROUPS + modules + pw_allocator +) + +pw_add_test(pw_allocator.null_allocator_test + SOURCES + null_allocator_test.cc + PRIVATE_DEPS + pw_allocator.null_allocator + pw_unit_test + GROUPS + modules + pw_allocator +) + +pw_add_test(pw_allocator.simple_allocator_test + SOURCES + simple_allocator_test.cc + PRIVATE_DEPS + pw_allocator.allocator_testing + pw_allocator.simple_allocator +) + +pw_add_test(pw_allocator.split_free_list_allocator_test + SOURCES + split_free_list_allocator_test.cc + PRIVATE_DEPS + pw_allocator.allocator_testing + pw_allocator.split_free_list_allocator + pw_containers.vector + pw_bytes + pw_unit_test + GROUPS + modules + pw_allocator +) + +pw_add_test(pw_allocator.unique_ptr_test + SOURCES + unique_ptr_test.cc + PRIVATE_DEPS + pw_allocator.allocator + pw_allocator.allocator_testing + GROUPS + modules + pw_allocator +) |