scripts/build/libc/newlib.sh
author "Martin Lund" <mgl@doredevelopment.dk>
Sat May 23 18:46:42 2009 +0000 (2009-05-23)
branchavr32
changeset 1373 1f3e9f7ada71
parent 1372 ff171891e7c4
child 1467 1b9afd946da3
permissions -rw-r--r--
Added support for Atmel AVR32 headers
mgl@1371
     1
# This file adds functions to build the Newlib C library
mgl@1371
     2
# Copyright 2008 Yann E. MORIN
mgl@1371
     3
# Licensed under the GPL v2. See COPYING in the root of this package
mgl@1371
     4
#
mgl@1371
     5
# Edited by by Martin Lund <mgl@doredevelopment.dk>
mgl@1371
     6
#
mgl@1371
     7
mgl@1371
     8
mgl@1371
     9
do_libc_get() {
mgl@1371
    10
    libc_src="ftp://sources.redhat.com/pub/newlib"
mgl@1373
    11
    avr32headers_src="http://dev.doredevelopment.dk/avr32-toolchain/sources"
mgl@1373
    12
    
mgl@1373
    13
    CT_GetFile "newlib-${CT_LIBC_VERSION}" ${libc_src}
mgl@1371
    14
mgl@1373
    15
    if [ "${CT_ATMEL_AVR32_HEADERS}" = "y" ]; then
mgl@1373
    16
        CT_GetFile "avr32headers" ${avr32headers_src}
mgl@1373
    17
    fi
mgl@1371
    18
mgl@1371
    19
    return 0
mgl@1371
    20
}
mgl@1371
    21
mgl@1371
    22
do_libc_extract() {
mgl@1371
    23
    CT_Extract "newlib-${CT_LIBC_VERSION}"
mgl@1371
    24
    CT_Patch "newlib-${CT_LIBC_VERSION}"
mgl@1371
    25
mgl@1373
    26
    if [ "${CT_ATMEL_AVR32_HEADERS}" = "y" ]; then
mgl@1373
    27
        CT_Extract "avr32headers"
mgl@1373
    28
    fi
mgl@1373
    29
mgl@1371
    30
    return 0
mgl@1371
    31
}
mgl@1371
    32
mgl@1371
    33
do_libc_check_config() {
mgl@1371
    34
    :
mgl@1371
    35
}
mgl@1371
    36
mgl@1371
    37
do_libc_headers() {
mgl@1371
    38
    :
mgl@1371
    39
}
mgl@1371
    40
mgl@1371
    41
do_libc_start_files() {
mgl@1371
    42
    :
mgl@1371
    43
}
mgl@1371
    44
mgl@1371
    45
do_libc() {
mgl@1371
    46
    CT_DoStep INFO "Installing C library"
mgl@1371
    47
mgl@1371
    48
    mkdir -p "${CT_BUILD_DIR}/build-libc"
mgl@1371
    49
    cd "${CT_BUILD_DIR}/build-libc"
mgl@1371
    50
mgl@1371
    51
    CT_DoLog EXTRA "Configuring C library"
mgl@1371
    52
mgl@1372
    53
    # FIXME
mgl@1372
    54
#    BUILD_CC="${CT_BUILD}-gcc"                                      \
mgl@1372
    55
#    CFLAGS="${CT_TARGET_CFLAGS} ${CT_LIBC_GLIBC_EXTRA_CFLAGS} -O"   \
mgl@1372
    56
#    CC="${CT_TARGET}-gcc ${CT_LIBC_EXTRA_CC_ARGS} ${extra_cc_args}" \
mgl@1371
    57
    AR=${CT_TARGET}-ar                                              \
mgl@1371
    58
    RANLIB=${CT_TARGET}-ranlib                                      \
mgl@1371
    59
    CT_DoExecLog ALL                                                \
mgl@1371
    60
    "${CT_SRC_DIR}/newlib-${CT_LIBC_VERSION}/configure"             \
mgl@1371
    61
        --build=${CT_BUILD}                                         \
mgl@1371
    62
        --host=${CT_HOST}                                           \
mgl@1371
    63
        --target=${CT_TARGET}                                       \
mgl@1371
    64
        --prefix=${CT_PREFIX_DIR}                                   \
mgl@1371
    65
        ${extra_config}                                             \
mgl@1371
    66
        ${CT_LIBC_GLIBC_EXTRA_CONFIG}
mgl@1371
    67
    
mgl@1371
    68
    CT_DoLog EXTRA "Building C library"
mgl@1371
    69
mgl@1371
    70
    CT_DoExecLog ALL make
mgl@1371
    71
    
mgl@1371
    72
    CT_DoLog EXTRA "Installing C library"
mgl@1371
    73
mgl@1371
    74
    CT_DoExecLog ALL make install install_root="${CT_SYSROOT_DIR}"
mgl@1371
    75
mgl@1371
    76
    CT_EndStep
mgl@1371
    77
}
mgl@1371
    78
mgl@1371
    79
do_libc_finish() {
mgl@1373
    80
    CT_DoStep INFO "Installing Atmel AVR32 headers"
mgl@1373
    81
    
mgl@1373
    82
    if [ "${CT_ATMEL_AVR32_HEADERS}" = "y" ]; then
mgl@1373
    83
        CT_DoExecLog ALL cp -r ${CT_SRC_DIR}/avr32headers "${CT_PREFIX_DIR}/${CT_TARGET}/include/avr32"
mgl@1373
    84
    fi
mgl@1373
    85
mgl@1373
    86
    CT_EndStep
mgl@1371
    87
}