#
# 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_DEFAULT
    bool "libsel4simple-default"
    depends on HAVE_LIB_SEL4 && HAVE_LIBC && HAVE_LIB_SEL4_SIMPLE && HAVE_LIB_SEL4_VSPACE
    select HAVE_SEL4_LIBS
    select HAVE_LIB_SEL4_SIMPLE_DEFAULT
    default y
    help
        Implementation of libsel4simple abstraction for the master branch of seL4

config HAVE_LIB_SEL4_SIMPLE_DEFAULT
    bool
