option(HAVE_LOCKS "Build with POSIX locking mechanisms" ON) option(WITH_EXAMPLES "Build with examples" OFF) option(WITH_MEMORY_SPACE_AWARENESS "Build with memory space awareness" OFF) option(WITH_FIXED_LISTS "Build with predefined lists of fixed-sized blocks" ON) option(WITH_STATS "Build with statistics" ON) option(WITH_KNOBS "Build with knobs support" OFF) option(WITH_ADAPTIVITY "Build with adaptivity" OFF) option(WITH_STATIC_LIB "Build a static library" OFF) option(WITH_SHARED_LIB "Build a shared library" OFF) option(WITH_DOC "Build with documentation" OFF) set(NUM_HEAPS 1) if (NUM_HEAPS GREATER 1) set(MULTIPLE_HEAPS ON) endif (NUM_HEAPS GREATER 1) set(WITH_COALESCING "never" "Build with coalescing support") set(WITH_SPLITTING "never" "Build with splitting support") set(BLOCKS_ORGANIZATION "sll" "Blocks organized in singly linked lists") option(WITH_OWNERSHIP "Build with ownership information in blocks" OFF) option(P2012 "Build for P2012 runtime" OFF) option(LEON3 "Build for Leon3" OFF) option(LINUXTEST "Build a case for Linux" ON) if (P2012) set(HAVE_LOCKS OFF) set(WITH_MEMORY_SPACE_AWARENESS ON) set(WITH_STATIC_LIB ON) set(NUM_HEAPS 1) set(LINUXTEST OFF) set(WITH_FIXED_LISTS OFF) set(WITH_STATS OFF) set(WITH_COALESCING "never") set(WITH_SPLITTING "never") set(BLOCKS_ORGANIZATION "sll") endif (P2012) if (LEON3) set(HAVE_LOCKS OFF) set(WITH_MEMORY_SPACE_AWARENESS ON) set(WITH_STATIC_LIB ON) set(NUM_HEAPS 1) set(LINUXTEST OFF) set(WITH_FIXED_LISTS OFF) set(WITH_STATS OFF) set(WITH_COALESCING "never") set(WITH_SPLITTING "never") set(BLOCKS_ORGANIZATION "sll") endif (LEON3) if (LINUXTEST) set(HAVE_LOCKS ON) set(WITH_EXAMPLES ON) set(WITH_COALESCING "variable") set(MAX_COALESCE_SIZE 60000) set(WITH_SPLITTING "variable") set(MIN_SPLITTING_SIZE 300) set(WITH_SHARED_LIB ON) set(WITH_DOC ON) set(BLOCKS_ORGANIZATION "dll") endif (LINUXTEST) if(BLOCKS_ORGANIZATION STREQUAL "dll") set(BLOCKS_IN_DLL ON) else(BLOCKS_ORGANIZATION STREQUAL "dll") set(BLOCKS_IN_SLL ON) endif(BLOCKS_ORGANIZATION STREQUAL "dll") if(WITH_COALESCING STREQUAL "fixed") if (MULTIPLE_HEAPS) set(WITH_OWNERSHIP ON) endif (MULTIPLE_HEAPS) set(COALESCING_FIXED ON) elseif(WITH_COALESCING STREQUAL "variable") set(WITH_KNOBS ON) if (MULTIPLE_HEAPS) set(WITH_OWNERSHIP ON) endif (MULTIPLE_HEAPS) set(COALESCING_VARIABLE ON) endif(WITH_COALESCING STREQUAL "fixed") if(WITH_SPLITTING STREQUAL "fixed") set(SPLITTING_FIXED ON) elseif(WITH_SPLITTING STREQUAL "variable") set(WITH_KNOBS ON) set(SPLITTING_VARIABLE ON) endif(WITH_SPLITTING STREQUAL "fixed")