scripts/build/companion_libs/cloog.sh
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Wed Apr 06 22:30:57 2011 +0200 (2011-04-06)
changeset 2381 0ca0f85a4b2a
parent 2349 ac32a31d30d7
child 2704 fcf5c43cf30f
permissions -rw-r--r--
complibs: disable building shared libs

Managing the shared version of the companion libraries
has become cumbersome.

Also, it will one day be possible to use the companion
libraries from the host distribution, and then we will
be able to easily use either shared or static libs.

As a side note, while working on the canadian-rework
series, it has become quite more complex to properly
handle shared companion libraries, as they need to be
built both for the build and gost systems. That's not
easy to handle. At all.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
yann@1380
     1
# This file adds the functions to build the CLooG library
yann@1380
     2
# Copyright 2009 Yann E. MORIN
yann@1380
     3
# Licensed under the GPL v2. See COPYING in the root of this package
yann@1380
     4
yann@1380
     5
do_cloog_get() { :; }
yann@1380
     6
do_cloog_extract() { :; }
yann@1380
     7
do_cloog() { :; }
yann@1380
     8
yann@1380
     9
# Overide functions depending on configuration
yann@1808
    10
if [ "${CT_CLOOG}" = "y" ]; then
yann@1380
    11
yann@1380
    12
# Download CLooG
yann@1380
    13
do_cloog_get() {
yann@1380
    14
    CT_GetFile "cloog-ppl-${CT_CLOOG_VERSION}"  \
yann@1380
    15
        ftp://gcc.gnu.org/pub/gcc/infrastructure
yann@1380
    16
}
yann@1380
    17
yann@1380
    18
# Extract CLooG
yann@1380
    19
do_cloog_extract() {
yann@1530
    20
    local _t
yann@1530
    21
yann@1380
    22
    CT_Extract "cloog-ppl-${CT_CLOOG_VERSION}"
yann@1530
    23
yann@1530
    24
    # Version 0.15.3 has a dirname 'cloog-ppl' (with no version in it!)
yann@1530
    25
    # while versions 0.15.4 onward do have the version in the dirname.
yann@1530
    26
    case "${CT_CLOOG_VERSION}" in
yann@1530
    27
        0.15.3) _t="";;
yann@1530
    28
        *)      _t="-${CT_CLOOG_VERSION}";;
yann@1530
    29
    esac
yann@1530
    30
    CT_Pushd "${CT_SRC_DIR}/cloog-ppl${_t}"
yann@1901
    31
    CT_Patch nochdir "cloog-ppl" "${CT_CLOOG_VERSION}"
yann@2262
    32
    if [ "${CT_CLOOG_VERSION}" = "0.15.10" ]; then
yann@2262
    33
        ./autogen.sh
yann@2262
    34
    fi
yann@1380
    35
    CT_Popd
yann@1380
    36
}
yann@1380
    37
yann@1380
    38
do_cloog() {
yann@1537
    39
    local _t
yann@1537
    40
yann@1537
    41
    # Version 0.15.3 has a dirname 'cloog-ppl' (with no version in it!)
yann@1537
    42
    # while versions 0.15.4 onward do have the version in the dirname.
yann@1537
    43
    case "${CT_CLOOG_VERSION}" in
yann@1537
    44
        0.15.3) _t="";;
yann@1537
    45
        *)      _t="-${CT_CLOOG_VERSION}";;
yann@1537
    46
    esac
yann@1537
    47
yann@1380
    48
    mkdir -p "${CT_BUILD_DIR}/build-cloog-ppl"
yann@1380
    49
    cd "${CT_BUILD_DIR}/build-cloog-ppl"
yann@1380
    50
yann@1380
    51
    CT_DoStep INFO "Installing CLooG/ppl"
yann@1380
    52
yann@1380
    53
    CT_DoLog EXTRA "Configuring CLooG/ppl"
yann@1892
    54
yann@2349
    55
    CT_DoExecLog CFG                            \
yann@1537
    56
    CFLAGS="${CT_CFLAGS_FOR_HOST}"              \
yann@2381
    57
    LDFLAGS="-lm"                               \
yann@1537
    58
    "${CT_SRC_DIR}/cloog-ppl${_t}/configure"    \
yann@1537
    59
        --build=${CT_BUILD}                     \
yann@1537
    60
        --host=${CT_HOST}                       \
yann@1893
    61
        --prefix="${CT_COMPLIBS_DIR}"           \
yann@1893
    62
        --with-gmp="${CT_COMPLIBS_DIR}"         \
yann@1893
    63
        --with-ppl="${CT_COMPLIBS_DIR}"         \
yann@1892
    64
        --with-bits=gmp                         \
yann@2381
    65
        --with-host-libstdcxx='-lstdc++'        \
yann@2381
    66
        --disable-shared                        \
yann@2381
    67
        --enable-static
yann@1380
    68
yann@1380
    69
    CT_DoLog EXTRA "Building CLooG/ppl"
yann@2275
    70
    CT_DoExecLog ALL make ${JOBSFLAGS} libcloog.la
yann@1380
    71
yann@1890
    72
    if [ "${CT_COMPLIBS_CHECK}" = "y" ]; then
yann@1380
    73
        CT_DoLog EXTRA "Checking CLooG/ppl"
yann@2275
    74
        CT_DoExecLog ALL make ${JOBSFLAGS} -s check
yann@1380
    75
    fi
yann@1380
    76
yann@1380
    77
    CT_DoLog EXTRA "Installing CLooG/ppl"
yann@2199
    78
    CT_DoExecLog ALL make install-libLTLIBRARIES install-pkgincludeHEADERS
yann@1397
    79
yann@1380
    80
    CT_EndStep
yann@1380
    81
}
yann@1380
    82
yann@1808
    83
fi # CT_CLOOG