# Main Settings set(WITH_SYSTEM_CALLS "none" CACHE STRING "Choose what system calls can be used, options are: none, sbrk, mmap") set(SYS_ALLOC_SIZE 4096 CACHE INTEGER "Choose the default system allocation size") option(HAVE_LOCKS "Build with POSIX locking mechanisms" OFF) set(RAW_BLOCKS_TYPE "freelist" CACHE STRING "Choose what raw blocks can be used, options are: freelist, bitmap") # Free-list Settings set(ORDERING_POLICY "lifo" CACHE STRING "Choose the ordering policy in freelist-organized raw blocks, options are: address, fifo, lifo, size") set(FITTING_POLICY "best" CACHE STRING "Choose the fitting policy in freelist-organized raw blocks, options are: best, exact, first, good") set(WITH_COALESCING "never" "Build with coalescing support") set(WITH_SPLITTING "never" "Build with splitting support") option(FREELIST_COALESCE_AFTER_SPLIT "Try to coalesce blocks after split" OFF) # Bitmap Settings set(BITMAP_RESOLUTION 256 CACHE INTEGER "Choose the size of cells in bitmap-organised raw blocks") # Function Implementation Settings option(WITH_REALLOC "Build with realloc" ON) option(WITH_CALLOC "Build with calloc" ON) # Statistics Settings set(STATS "none" CACHE STRING "Choose if the memory allocator keeps internally statistics per raw block or globally, options are: none, global") set(REQUEST_SIZE_INFO OFF) # Trace Settings set(TRACE_LEVEL 0 CACHE INTEGER "Choose the trace level, options are: 0, 1, 2 and 3") # Build Settings option(WITH_STATIC_LIB "Build a static library" OFF) option(WITH_SHARED_LIB "Build a shared library" OFF) # Misc Settings option(WITH_EXAMPLES "Build with examples" OFF) option(WITH_DOC "Build with documentation" OFF) # Presets option(P2012 "Build for P2012 runtime" OFF) option(LEON3 "Build for Leon3" OFF) option(LINUX "Build for Linux" OFF) if(P2012) set(WITH_SYSTEM_CALLS "none") set(HAVE_LOCKS OFF) set(RAW_BLOCKS_TYPE "freelist") set(ORDERING_POLICY "lifo") set(FITTING_POLICY "first") set(WITH_COALESCING "never") set(WITH_SPLITTING "never") set(WITH_REALLOC OFF) set(WITH_CALLOC OFF) set(STATS "none") set(TRACE_LEVEL 0) set(WITH_STATIC_LIB ON) set(WITH_SHARED_LIB OFF) set(WITH_EXAMPLES OFF) set(WITH_DOC OFF) endif(P2012) if(LEON3) set(WITH_SYSTEM_CALLS "none") set(HAVE_LOCKS OFF) set(RAW_BLOCKS_TYPE "freelist") set(ORDERING_POLICY "lifo") set(FITTING_POLICY "first") set(WITH_COALESCING "never") set(WITH_SPLITTING "never") set(WITH_REALLOC OFF) set(WITH_CALLOC OFF) set(STATS "none") set(TRACE_LEVEL 0) set(WITH_STATIC_LIB ON) set(WITH_SHARED_LIB OFF) set(WITH_EXAMPLES OFF) set(WITH_DOC OFF) endif(LEON3) if(LINUX) set(WITH_SYSTEM_CALLS "mmap") set(SYS_ALLOC_SIZE 32768) set(HAVE_LOCKS ON) set(RAW_BLOCKS_TYPE "bitmap") set(BITMAP_RESOLUTION 256) set(TRACE_LEVEL 3) set(WITH_REALLOC ON) set(WITH_CALLOC ON) set(STATS "global") set(REQUEST_SIZE_INFO ON) set(WITH_SHARED_LIB ON) set(WITH_STATIC_LIB ON) set(WITH_REALLOC ON) set(WITH_EXAMPLES ON) set(WITH_DOC ON) endif(LINUX)