scripts/build/debug/100-dmalloc.sh
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Fri Apr 15 00:22:42 2011 +0200 (2011-04-15)
changeset 2544 751c3f735ada
parent 2154 250cdcc86441
child 3200 0fc56e62cecf
permissions -rw-r--r--
scripts/internals: do not remove lib{32,64}/ symlinks after build

During the build, we create lib{32,64}/ symlinks out of the sysroot.
In some cases (eg. mingw32 target), these symlinks are still required
when running the toolchain. For other combinations, the symlinks are
without incidence, so they can be safely kept after the build.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
yann@479
     1
# Build script for the dmalloc debug library facility
yann@479
     2
yann@479
     3
do_debug_dmalloc_get() {
yann@479
     4
    CT_GetFile "dmalloc-${CT_DMALLOC_VERSION}" http://dmalloc.com/releases/
yann@479
     5
}
yann@479
     6
yann@479
     7
do_debug_dmalloc_extract() {
yann@1126
     8
    CT_Extract "dmalloc-${CT_DMALLOC_VERSION}"
yann@1901
     9
    CT_Patch "dmalloc" "${CT_DMALLOC_VERSION}"
yann@479
    10
}
yann@479
    11
yann@479
    12
do_debug_dmalloc_build() {
yann@1480
    13
    local -a extra_config
yann@1480
    14
yann@479
    15
    CT_DoStep INFO "Installing dmalloc"
yann@479
    16
    CT_DoLog EXTRA "Configuring dmalloc"
yann@479
    17
yann@479
    18
    mkdir -p "${CT_BUILD_DIR}/build-dmalloc"
yann@479
    19
    cd "${CT_BUILD_DIR}/build-dmalloc"
yann@479
    20
yann@479
    21
    case "${CT_CC_LANG_CXX}" in
yann@1480
    22
        y)  extra_config+=("--enable-cxx");;
yann@1480
    23
        *)  extra_config+=("--disable-cxx");;
yann@479
    24
    esac
yann@1587
    25
    case "${CT_THREADS}" in
yann@1587
    26
        none)   extra_config+=("--disable-threads");;
yann@1587
    27
        *)      extra_config+=("--enable-threads");;
yann@479
    28
    esac
yann@479
    29
    case "${CT_SHARED_LIBS}" in
yann@1480
    30
        y)  extra_config+=("--enable-shlib");;
yann@1480
    31
        *)  extra_config+=("--disable-shlib");;
yann@479
    32
    esac
yann@479
    33
yann@1480
    34
    CT_DoLog DEBUG "Extra config passed: '${extra_config[*]}'"
yann@479
    35
yann@2343
    36
    CT_DoExecLog CFG                                            \
yann@479
    37
    LD="${CT_TARGET}-ld"                                        \
yann@479
    38
    AR="${CT_TARGET}-ar"                                        \
yann@1074
    39
    CFLAGS=-fPIC                                                \
yann@479
    40
    "${CT_SRC_DIR}/dmalloc-${CT_DMALLOC_VERSION}/configure"     \
yann@479
    41
        --prefix=/usr                                           \
yann@479
    42
        --build="${CT_BUILD}"                                   \
yann@479
    43
        --host="${CT_TARGET}"                                   \
yann@1480
    44
        "${extra_config[@]}"
yann@479
    45
yann@479
    46
    CT_DoLog EXTRA "Building dmalloc"
yann@857
    47
    CT_DoExecLog ALL make
yann@479
    48
yann@479
    49
    CT_DoLog EXTRA "Installing dmalloc"
yann@669
    50
    CT_DoExecLog ALL make DESTDIR="${CT_SYSROOT_DIR}" installincs installlib
yann@1219
    51
    CT_DoExecLog ALL make DESTDIR="${CT_DEBUGROOT_DIR}" installutil
yann@479
    52
yann@479
    53
    CT_EndStep
yann@479
    54
}