scripts/build/tools/100-libelf.sh
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Fri Jan 01 17:09:52 2010 +0100 (2010-01-01)
changeset 1673 ecb7fcc4edb0
parent 1112 c72aecd1a9ef
permissions -rw-r--r--
scripts/functions: fix downloading with aria2

In case the remote file does not exist (and probably for some
other reasons as well), aria2 nonetheless creates an empty file
(or not empty for some other reasons).

The solution is to delete the file whenever aria2 fails.
     1 # Build script for libelf
     2 
     3 do_tools_libelf_get() {
     4     # The server hosting libelf will return an "HTTP 300 : Multiple Choices"
     5     # error code if we try to download a file that does not exists there.
     6     # So we have to request the file with an explicit extension.
     7     CT_GetFile "libelf-${CT_LIBELF_VERSION}" .tar.gz http://www.mr511.de/software/
     8 }
     9 
    10 do_tools_libelf_extract() {
    11     CT_Extract "libelf-${CT_LIBELF_VERSION}"
    12     CT_Patch "libelf-${CT_LIBELF_VERSION}"
    13 }
    14 
    15 do_tools_libelf_build() {
    16     CT_DoStep INFO "Installing libelf"
    17     mkdir -p "${CT_BUILD_DIR}/build-libelf"
    18     CT_Pushd "${CT_BUILD_DIR}/build-libelf"
    19 
    20     CT_DoLog EXTRA "Configuring libelf"
    21     CC="${CT_TARGET}-gcc"                                   \
    22     CT_DoExecLog ALL                                        \
    23     "${CT_SRC_DIR}/libelf-${CT_LIBELF_VERSION}/configure"   \
    24         --build=${CT_BUILD}                                 \
    25         --host=${CT_TARGET}                                 \
    26         --target=${CT_TARGET}                               \
    27         --prefix=/usr                                       \
    28         --enable-compat                                     \
    29         --enable-elf64                                      \
    30         --enable-shared                                     \
    31         --enable-extended-format                            \
    32         --enable-static
    33 
    34     CT_DoLog EXTRA "Building libelf"
    35     CT_DoExecLog ALL make
    36 
    37     CT_DoLog EXTRA "Installing libelf"
    38     CT_DoExecLog ALL make instroot="${CT_SYSROOT_DIR}" install
    39 
    40     CT_Popd
    41     CT_EndStep
    42 }
    43