diff -r 1c56c03b7ed5 -r 069f43a215cc scripts/build/companion_libs/130-cloog.sh --- a/scripts/build/companion_libs/130-cloog.sh Fri Nov 16 15:25:57 2012 +0100 +++ b/scripts/build/companion_libs/130-cloog.sh Wed Jun 25 23:33:01 2014 +0200 @@ -7,12 +7,24 @@ do_cloog_for_build() { :; } do_cloog_for_host() { :; } +cloog_basename() { + printf "cloog" + if [ "${CT_PPL}" = "y" ]; then + printf -- "-ppl" + fi +} +cloog_basename_version() { + cloog_basename + printf -- "-${CT_CLOOG_VERSION}" +} + # Overide functions depending on configuration if [ "${CT_CLOOG}" = "y" ]; then # Download CLooG do_cloog_get() { - CT_GetFile "cloog-ppl-${CT_CLOOG_VERSION}" \ + CT_GetFile "$(cloog_basename_version)" \ + http://www.bastoul.net/cloog/pages/download \ ftp://gcc.gnu.org/pub/gcc/infrastructure } @@ -24,20 +36,20 @@ # while versions 0.15.4 onward do have the version in the dirname. # But, because the infrastructure properly creates the extracted # directories (with tar's --strip-components), we can live safely... - CT_Extract "cloog-ppl-${CT_CLOOG_VERSION}" - CT_Patch "cloog-ppl" "${CT_CLOOG_VERSION}" + CT_Extract "$(cloog_basename_version)" + CT_Patch "$(cloog_basename)" "${CT_CLOOG_VERSION}" # Help the autostuff in case it thinks there are things to regenerate... - CT_DoExecLog DEBUG mkdir -p "${CT_SRC_DIR}/cloog-ppl-${CT_CLOOG_VERSION}/m4" + CT_DoExecLog DEBUG mkdir -p "${CT_SRC_DIR}/$(cloog_basename_version)/m4" if [ "${CT_CLOOG_NEEDS_AUTORECONF}" = "y" ]; then - CT_Pushd "${CT_SRC_DIR}/cloog-ppl-${CT_CLOOG_VERSION}" + CT_Pushd "${CT_SRC_DIR}/$(cloog_basename_version)" CT_DoExecLog CFG ./autogen.sh CT_Popd fi } -# Build CLooG/PPL for running on build +# Build CLooG for running on build # - always build statically # - we do not have build-specific CFLAGS # - install in build-tools prefix @@ -48,8 +60,8 @@ native|cross) return 0;; esac - CT_DoStep INFO "Installing CLooG/PPL for build" - CT_mkdir_pushd "${CT_BUILD_DIR}/build-cloog-ppl-build-${CT_BUILD}" + CT_DoStep INFO "Installing CLooG for build" + CT_mkdir_pushd "${CT_BUILD_DIR}/build-cloog-build-${CT_BUILD}" cloog_opts+=( "host=${CT_BUILD}" ) cloog_opts+=( "prefix=${CT_BUILDTOOLS_PREFIX_DIR}" ) @@ -61,12 +73,12 @@ CT_EndStep } -# Build CLooG/PPL for running on host +# Build CLooG for running on host do_cloog_for_host() { local -a cloog_opts - CT_DoStep INFO "Installing CLooG/PPL for host" - CT_mkdir_pushd "${CT_BUILD_DIR}/build-cloog-ppl-host-${CT_HOST}" + CT_DoStep INFO "Installing CLooG for host" + CT_mkdir_pushd "${CT_BUILD_DIR}/build-cloog-host-${CT_HOST}" cloog_opts+=( "host=${CT_HOST}" ) cloog_opts+=( "prefix=${CT_HOST_COMPLIBS_DIR}" ) @@ -78,7 +90,7 @@ CT_EndStep } -# Build ClooG/PPL +# Build CLooG # Parameter : description : type : default # host : machine to run on : tuple : (none) # prefix : prefix to install into : dir : (none) @@ -89,14 +101,30 @@ local prefix local cflags local ldflags - local cloog_src_dir="${CT_SRC_DIR}/cloog-ppl-${CT_CLOOG_VERSION}" + local cloog_src_dir="${CT_SRC_DIR}/$(cloog_basename_version)" local arg + local -a cloog_opts + local -a cloog_targets + local -a cloog_install_targets for arg in "$@"; do eval "${arg// /\\ }" done - CT_DoLog EXTRA "Configuring CLooG/ppl" + if [ "${CT_CLOOG_0_18_or_later}" = y ]; then + cloog_opts+=( --with-gmp=system --with-gmp-prefix="${prefix}" ) + cloog_opts+=( --with-isl=system --with-isl-prefix="${prefix}" ) + cloog_opts+=( --without-osl ) + cloog_targets=( all ) + cloog_install_targets=( install ) + else + cloog_opts+=( --with-gmp="${prefix}" ) + cloog_opts+=( --with-ppl="${prefix}" ) + cloog_targets=( libcloog.la ) + cloog_install_targets=( install-libLTLIBRARIES install-pkgincludeHEADERS ) + fi + + CT_DoLog EXTRA "Configuring CLooG" CT_DoExecLog CFG \ CFLAGS="${cflags}" \ @@ -106,23 +134,22 @@ --build=${CT_BUILD} \ --host=${host} \ --prefix="${prefix}" \ - --with-gmp="${prefix}" \ - --with-ppl="${prefix}" \ --with-bits=gmp \ --with-host-libstdcxx='-lstdc++' \ --disable-shared \ - --enable-static + --enable-static \ + "${cloog_opts[@]}" - CT_DoLog EXTRA "Building CLooG/ppl" - CT_DoExecLog ALL make ${JOBSFLAGS} libcloog.la + CT_DoLog EXTRA "Building CLooG" + CT_DoExecLog ALL make ${JOBSFLAGS} "${cloog_targets[@]}" if [ "${CT_COMPLIBS_CHECK}" = "y" ]; then - CT_DoLog EXTRA "Checking CLooG/ppl" + CT_DoLog EXTRA "Checking CLooG" CT_DoExecLog ALL make ${JOBSFLAGS} -s check fi - CT_DoLog EXTRA "Installing CLooG/ppl" - CT_DoExecLog ALL make install-libLTLIBRARIES install-pkgincludeHEADERS + CT_DoLog EXTRA "Installing CLooG" + CT_DoExecLog ALL make "${cloog_install_targets[@]}" } fi # CT_CLOOG