#
# Copyright 2017, Data61
# Commonwealth Scientific and Industrial Research Organisation (CSIRO)
# ABN 41 687 119 230.
#
# This software may be distributed and modified according to the terms of
# the BSD 2-Clause license. Note that NO WARRANTY is provided.
# See "LICENSE_BSD2.txt" for details.
#
# @TAG(DATA61_BSD)
#

menuconfig LIB_SEL4_ALLOCMAN
    bool "libsel4allocman"
    default y
    depends on HAVE_LIB_SEL4 && HAVE_LIBC && HAVE_LIB_SEL4_VKA && HAVE_LIB_SEL4_UTILS && \
               HAVE_LIB_SEL4_VSPACE && HAVE_LIB_SEL4_SIMPLE && HAVE_LIB_UTILS && HAVE_LIB_SEL4_PLAT_SUPPORT
    select HAVE_LIB_SEL4_ALLOCMAN
    help
        Allocation manager library for seL4

config HAVE_LIB_SEL4_ALLOCMAN
    bool
