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
6 do_cloog_extract() { :; }
7 do_cloog_for_build() { :; }
8 do_cloog_for_host() { :; }
10 # Overide functions depending on configuration
11 if [ "${CT_CLOOG}" = "y" ]; then
15 CT_GetFile "cloog-ppl-${CT_CLOOG_VERSION}" \
16 ftp://gcc.gnu.org/pub/gcc/infrastructure
23 # Version 0.15.3 has a dirname 'cloog-ppl' (with no version in it!)
24 # while versions 0.15.4 onward do have the version in the dirname.
25 # But, because the infrastructure properly creates the extracted
26 # directories (with tar's --strip-components), we can live safely...
27 CT_Extract "cloog-ppl-${CT_CLOOG_VERSION}"
28 CT_Patch "cloog-ppl" "${CT_CLOOG_VERSION}"
30 # Help the autostuff in case it thinks there are things to regenerate...
31 CT_DoExecLog DEBUG mkdir -p "${CT_SRC_DIR}/cloog-ppl-${CT_CLOOG_VERSION}/m4"
33 if [ "${CT_CLOOG_NEEDS_AUTORECONF}" = "y" ]; then
34 CT_Pushd "${CT_SRC_DIR}/cloog-ppl-${CT_CLOOG_VERSION}"
35 CT_DoExecLog CFG ./autogen.sh
40 # Build CLooG/PPL for running on build
41 # - always build statically
42 # - we do not have build-specific CFLAGS
43 # - install in build-tools prefix
44 do_cloog_for_build() {
47 case "${CT_TOOLCHAIN_TYPE}" in
48 native|cross) return 0;;
51 CT_DoStep INFO "Installing CLooG/PPL for build"
52 CT_mkdir_pushd "${CT_BUILD_DIR}/build-cloog-ppl-build-${CT_BUILD}"
54 cloog_opts+=( "host=${CT_BUILD}" )
55 cloog_opts+=( "prefix=${CT_BUILDTOOLS_PREFIX_DIR}" )
56 do_cloog_backend "${cloog_opts[@]}"
62 # Build CLooG/PPL for running on host
66 CT_DoStep INFO "Installing CLooG/PPL for host"
67 CT_mkdir_pushd "${CT_BUILD_DIR}/build-cloog-ppl-host-${CT_HOST}"
69 cloog_opts+=( "host=${CT_HOST}" )
70 cloog_opts+=( "prefix=${CT_HOST_COMPLIBS_DIR}" )
71 cloog_opts+=( "cflags=${CT_CFLAGS_FOR_HOST}" )
72 do_cloog_backend "${cloog_opts[@]}"
79 # Parameter : description : type : default
80 # host : machine to run on : tuple : (none)
81 # prefix : prefix to install into : dir : (none)
82 # cflags : host cflags to use : string : (empty)
87 local cloog_src_dir="${CT_SRC_DIR}/cloog-ppl-${CT_CLOOG_VERSION}"
94 CT_DoLog EXTRA "Configuring CLooG/ppl"
99 "${cloog_src_dir}/configure" \
100 --build=${CT_BUILD} \
102 --prefix="${prefix}" \
103 --with-gmp="${prefix}" \
104 --with-ppl="${prefix}" \
106 --with-host-libstdcxx='-lstdc++' \
110 CT_DoLog EXTRA "Building CLooG/ppl"
111 CT_DoExecLog ALL make ${JOBSFLAGS} libcloog.la
113 if [ "${CT_COMPLIBS_CHECK}" = "y" ]; then
114 CT_DoLog EXTRA "Checking CLooG/ppl"
115 CT_DoExecLog ALL make ${JOBSFLAGS} -s check
118 CT_DoLog EXTRA "Installing CLooG/ppl"
119 CT_DoExecLog ALL make install-libLTLIBRARIES install-pkgincludeHEADERS