scripts/build/companion_libs/mpc.sh
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue Aug 02 18:26:53 2011 +0200 (2011-08-02)
changeset 2592 4908eb2b6f17
parent 2350 069c0df98b64
child 2927 ddaae597fd7c
permissions -rw-r--r--
scripts/functions: cvs retrieval first tries the mirror for tarballs

The cvs download helper looks for the local tarballs dir to see if it
can find a pre-downloaded tarball, and if it does not find it, does
the actual fetch to upstream via cvs.

In the process, it does not even try to get a tarball from the local
mirror, which can be useful if the mirror has been pre-populated
manually (or with a previously downloaded tree).

Fake a tarball get with the standard tarball-download helper, but
without specifying any upstream URL, which makes the helper directly
try the LAN mirror.

Of course, if no mirror is specified, no URL wil be available, and
the standard cvs retrieval will kick in.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
yann@1384
     1
# This file adds the functions to build the MPC library
yann@1384
     2
# Copyright 2009 Yann E. MORIN
yann@1384
     3
# Licensed under the GPL v2. See COPYING in the root of this package
yann@1384
     4
yann@1384
     5
do_mpc_get() { :; }
yann@1384
     6
do_mpc_extract() { :; }
yann@1384
     7
do_mpc() { :; }
yann@1384
     8
yann@1384
     9
# Overide functions depending on configuration
yann@1808
    10
if [ "${CT_MPC}" = "y" ]; then
yann@1384
    11
yann@1384
    12
# Download MPC
yann@1384
    13
do_mpc_get() {
yann@1384
    14
    CT_GetFile "mpc-${CT_MPC_VERSION}" .tar.gz      \
yann@1384
    15
        http://www.multiprecision.org/mpc/download
yann@1384
    16
}
yann@1384
    17
yann@1384
    18
# Extract MPC
yann@1384
    19
do_mpc_extract() {
yann@1384
    20
    CT_Extract "mpc-${CT_MPC_VERSION}"
yann@1901
    21
    CT_Patch "mpc" "${CT_MPC_VERSION}"
yann@1384
    22
}
yann@1384
    23
yann@1384
    24
do_mpc() {
yann@1384
    25
    mkdir -p "${CT_BUILD_DIR}/build-mpc"
yann@1384
    26
    cd "${CT_BUILD_DIR}/build-mpc"
yann@1384
    27
yann@1384
    28
    CT_DoStep INFO "Installing MPC"
yann@1384
    29
yann@1384
    30
    CT_DoLog EXTRA "Configuring MPC"
yann@1892
    31
yann@2350
    32
    CT_DoExecLog CFG                                \
yann@1384
    33
    CFLAGS="${CT_CFLAGS_FOR_HOST}"                  \
yann@1384
    34
    "${CT_SRC_DIR}/mpc-${CT_MPC_VERSION}/configure" \
yann@1384
    35
        --build=${CT_BUILD}                         \
yann@1384
    36
        --host=${CT_HOST}                           \
yann@1893
    37
        --prefix="${CT_COMPLIBS_DIR}"               \
yann@1893
    38
        --with-gmp="${CT_COMPLIBS_DIR}"             \
yann@1893
    39
        --with-mpfr="${CT_COMPLIBS_DIR}"            \
yann@2381
    40
        --disable-shared                            \
yann@2381
    41
        --enable-static
yann@1384
    42
yann@1384
    43
    CT_DoLog EXTRA "Building MPC"
yann@2275
    44
    CT_DoExecLog ALL make ${JOBSFLAGS}
yann@1384
    45
yann@1890
    46
    if [ "${CT_COMPLIBS_CHECK}" = "y" ]; then
yann@1384
    47
        CT_DoLog EXTRA "Checking MPC"
yann@2275
    48
        CT_DoExecLog ALL make ${JOBSFLAGS} -s check
yann@1384
    49
    fi
yann@1384
    50
yann@1384
    51
    CT_DoLog EXTRA "Installing MPC"
yann@1384
    52
    CT_DoExecLog ALL make install
yann@1384
    53
yann@1384
    54
    CT_EndStep
yann@1384
    55
}
yann@1384
    56
yann@1808
    57
fi # CT_MPC