#
# Copyright 2014, NICTA
#
# 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(NICTA_BSD)
#

config LIB_SEL4_SIMPLE_STABLE
    bool "libsel4simple-stable"
    depends on HAVE_LIB_SEL4 && HAVE_LIBC && HAVE_LIB_SEL4_SIMPLE && HAVE_LIB_SEL4_UTILS && HAVE_LIB_SEL4_VKA
    select HAVE_SEL4_LIBS
    select HAVE_LIB_SEL4_SIMPLE_STABLE
    default y
    help
        Implementation of libsel4simple abstraction for the experimental branch (searchable CDT) of the kernel

config HAVE_LIB_SEL4_SIMPLE_STABLE
    bool
