# This file adds functions to build the C library for bare metal (IE. none)
# Copyright 2008 Yann E. MORIN
# Licensed under the GPL v2. See COPYING in the root of this package

do_libc_get() {
    :
}

do_libc_extract() {
    :
}

do_libc_check_config() {
    :
}

do_libc_start_files() {
    :
}

do_libc() {
    :
}

do_libc_finish() {
    :
}
