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