scripts/build/debug/400-ltrace.sh
author Bart vdr. Meulen <bartvdrmeulen@gmail.com>
Sun Aug 02 16:45:43 2009 +0200 (2009-08-02)
changeset 1434 7e7290acccc1
parent 1147 86930cd9340a
child 1678 ac247da318a1
permissions -rw-r--r--
fix wrapper script for symlinks

The wrapper script placed around the target binaries when
using the companion libraries does not work for symbolic links
The wrapper scripts needs to follow the links before calling the
actual binary

Signed-off-by: Bart vdr. Meulen <bartvdrmeulen@gmail.com>

---
yann@479
     1
# Build script for ltrace
yann@479
     2
yann@479
     3
do_debug_ltrace_get() {
yann@486
     4
    CT_GetFile "ltrace_${CT_LTRACE_VERSION}.orig" {ftp,http}://ftp.de.debian.org/debian/pool/main/l/ltrace/
yann@479
     5
    # Create a link so that the following steps are easier to do:
yann@479
     6
    cd "${CT_TARBALLS_DIR}"
yann@523
     7
    ltrace_ext=$(CT_GetFileExtension "ltrace_${CT_LTRACE_VERSION}.orig")
yann@479
     8
    ln -sf "ltrace_${CT_LTRACE_VERSION}.orig${ltrace_ext}" "ltrace-${CT_LTRACE_VERSION}${ltrace_ext}"
yann@479
     9
}
yann@479
    10
yann@479
    11
do_debug_ltrace_extract() {
yann@1126
    12
    CT_Extract "ltrace-${CT_LTRACE_VERSION}"
yann@1126
    13
    CT_Patch "ltrace-${CT_LTRACE_VERSION}"
yann@1147
    14
    # ltrace uses ppc instead of powerpc for the arch name
yann@1147
    15
    # create a symlink to get it to build for powerpc
yann@1147
    16
    CT_Pushd "${CT_SRC_DIR}/ltrace-${CT_LTRACE_VERSION}/sysdeps/linux-gnu"
yann@1147
    17
    CT_DoExecLog ALL ln -sf ppc powerpc
yann@1147
    18
    CT_Popd
yann@479
    19
}
yann@479
    20
yann@479
    21
do_debug_ltrace_build() {
yann@479
    22
    CT_DoStep INFO "Installing ltrace"
yann@479
    23
    mkdir -p "${CT_BUILD_DIR}/build-ltrace"
yann@479
    24
    CT_Pushd "${CT_BUILD_DIR}/build-ltrace"
yann@479
    25
yann@973
    26
    CT_DoLog EXTRA "Copying sources to build dir"
yann@973
    27
    (cd "${CT_SRC_DIR}/ltrace-${CT_LTRACE_VERSION}"; tar cf - .)| tar xvf - |CT_DoLog ALL
yann@973
    28
yann@479
    29
    CT_DoLog EXTRA "Configuring ltrace"
yann@980
    30
    CT_DoExecLog ALL        \
yann@984
    31
    ./configure             \
yann@980
    32
        --build=${CT_BUILD} \
yann@980
    33
        --host=${CT_TARGET} \
yann@479
    34
        --prefix=/usr
yann@479
    35
yann@479
    36
    CT_DoLog EXTRA "Building ltrace"
yann@669
    37
    CT_DoExecLog ALL make
yann@479
    38
yann@479
    39
    CT_DoLog EXTRA "Installing ltrace"
yann@1219
    40
    CT_DoExecLog ALL make DESTDIR="${CT_DEBUGROOT_DIR}" install
yann@479
    41
yann@479
    42
    CT_Popd
yann@479
    43
    CT_EndStep
yann@479
    44
}
yann@479
    45