From 5a577e9ee06e0995902db6ad5fd925ad8828fd35 Mon Sep 17 00:00:00 2001 From: Daniel Micay Date: Wed, 12 Jan 2022 08:38:33 -0500 Subject: [PATCH] document configuration template system --- README.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/README.md b/README.md index 81cc892..394cc73 100644 --- a/README.md +++ b/README.md @@ -190,6 +190,15 @@ between portability, performance, memory usage or security. The core design choices are not configurable and the allocator remains very security-focused even with all the optional features disabled. +The configuration system supports a configuration template system with two +standard presets: the default configuration (`configs/default.mk`) and a light +configuration (`configs/light.mk`). Packagers are strongly encouraged to ship +both the standard `default` and `light` configuration. You can choose the +configuration to build using `make VARIANT=light` where `make VARIANT=default` +is the same as `make`. Non-default configuration templates will build a library +with the suffix `-variant` such as `libhardened_malloc-light.so` and will use +an `out-variant` directory instead of `out` for the build. + For reduced memory usage at the expense of performance (this will also reduce the size of the empty slab caches and quarantines, saving a lot of memory, since those are currently based on the size of the largest size class):