[package] name = "umm-malloc" version = "0.3.2" authors = ["Ralph Hempel", "Matt Ickstadt "] license = "MIT" edition = "2018" categories = ["embedded", "no-std", "api-bindings"] keywords = ["allocator", "arm", "cortex-m", "malloc"] description = "A global allocator implementation for embedded systems using the umm_malloc library." repository = "https://github.com/mattico/umm-malloc-rs" readme = "README.md" exclude = [ ".vscode/*", ".github/*", ] [package.metadata.docs.rs] features = ["unsafe-no-critical-section"] targets = ["thumbv7em-none-eabihf"] [dev-dependencies] cortex-m-rt = "0.7" [dependencies.umm-malloc-sys] path = "umm-malloc-sys" version = "0.3.2" [features] # Disables critical sections around the global allocator. You MUST ensure the global allocator is not accessed # concurrently through some other means. unsafe-no-critical-section = [] # Use the extern functions `_umm_critical_entry()` and `_umm_critical_exit()` to implement the global allocator # critical sections. You MUST supply those functions via some other means. Note that critical sections may nest. extern-critical-section = ["umm-malloc-sys/extern-critical-section"] # Add critical sections around allocator internals, by disabling and re-enabling interrupts when necessary. cortex-m-interrupt-critical-section = ["umm-malloc-sys/cortex-m-interrupt-critical-section"] # Use the first available block for allocation, rather than search for a better fit. first-fit = ["umm-malloc-sys/first-fit"] # Every umm_malloc function checks if the heap is initialized. If the heap is not initialized, it tries to initialize it # with UMM_MALLOC_CFG_HEAP_ADDR and UMM_MALLOC_CFG_HEAP_SIZE. init-if-uninitialized = ["umm-malloc-sys/init-if-uninitialized"] # Every umm_malloc function checks if the heap is initialized. If the heap is not initialized, it loops forever. hang-if-uninitialized = ["umm-malloc-sys/hang-if-uninitialized"] # Compile the umm_malloc C code position independent (-fPIE). # You'll likely want to enable it for rustc also e.g. `-C relocation-model=pie`. enable-pie = ["umm-malloc-sys/enable-pie"]