mirror of
https://github.com/crosstool-ng/crosstool-ng.git
synced 2024-12-24 15:06:42 +00:00
79422633cf
This change updates the download locations to default to the official download site. For gcc and gdb, also separate out the linaro download locations so that if you are downloading the linaro variant, it skips trying to download from the official gcc mirror. This commit closes #3 Signed-off-by: Bryan Hundven <bryanhundven@gmail.com> Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
129 lines
3.6 KiB
Bash
129 lines
3.6 KiB
Bash
# This file adds the functions to build the ISL library
|
|
# Copyright 2009 Yann E. MORIN
|
|
# Licensed under the GPL v2. See COPYING in the root of this package
|
|
|
|
do_isl_get() { :; }
|
|
do_isl_extract() { :; }
|
|
do_isl_for_build() { :; }
|
|
do_isl_for_host() { :; }
|
|
|
|
# Overide functions depending on configuration
|
|
if [ "${CT_ISL}" = "y" ]; then
|
|
|
|
# Download ISL
|
|
do_isl_get() {
|
|
CT_GetFile "isl-${CT_ISL_VERSION}" \
|
|
http://isl.gforge.inria.fr
|
|
}
|
|
|
|
# Extract ISL
|
|
do_isl_extract() {
|
|
CT_Extract "isl-${CT_ISL_VERSION}"
|
|
CT_Patch "isl" "${CT_ISL_VERSION}"
|
|
}
|
|
|
|
# Build ISL for running on build
|
|
# - always build statically
|
|
# - we do not have build-specific CFLAGS
|
|
# - install in build-tools prefix
|
|
do_isl_for_build() {
|
|
local -a isl_opts
|
|
local isl_cflags
|
|
local isl_cxxflags
|
|
|
|
case "${CT_TOOLCHAIN_TYPE}" in
|
|
native|cross) return 0;;
|
|
esac
|
|
|
|
CT_DoStep INFO "Installing ISL for build"
|
|
CT_mkdir_pushd "${CT_BUILD_DIR}/build-isl-build-${CT_BUILD}"
|
|
|
|
isl_cflags="${CT_CFLAGS_FOR_BUILD}"
|
|
isl_cxxflags="${CT_CFLAGS_FOR_BUILD}"
|
|
|
|
isl_opts+=( "host=${CT_BUILD}" )
|
|
isl_opts+=( "prefix=${CT_BUILDTOOLS_PREFIX_DIR}" )
|
|
isl_opts+=( "cflags=${isl_cflags}" )
|
|
isl_opts+=( "cxxflags=${isl_cxxflags}" )
|
|
isl_opts+=( "ldflags=${CT_LDFLAGS_FOR_BUILD}" )
|
|
do_isl_backend "${isl_opts[@]}"
|
|
|
|
CT_Popd
|
|
CT_EndStep
|
|
}
|
|
|
|
# Build ISL for running on host
|
|
do_isl_for_host() {
|
|
local -a isl_opts
|
|
local isl_cflags
|
|
local isl_cxxflags
|
|
|
|
CT_DoStep INFO "Installing ISL for host"
|
|
CT_mkdir_pushd "${CT_BUILD_DIR}/build-isl-host-${CT_HOST}"
|
|
|
|
isl_cflags="${CT_CFLAGS_FOR_HOST}"
|
|
isl_cxxflags="${CT_CFLAGS_FOR_HOST}"
|
|
|
|
isl_opts+=( "host=${CT_HOST}" )
|
|
isl_opts+=( "prefix=${CT_HOST_COMPLIBS_DIR}" )
|
|
isl_opts+=( "cflags=${isl_cflags}" )
|
|
isl_opts+=( "cxxflags=${isl_cxxflags}" )
|
|
isl_opts+=( "ldflags=${CT_LDFLAGS_FOR_HOST}" )
|
|
do_isl_backend "${isl_opts[@]}"
|
|
|
|
CT_Popd
|
|
CT_EndStep
|
|
}
|
|
|
|
# Build ISL
|
|
# Parameter : description : type : default
|
|
# host : machine to run on : tuple : (none)
|
|
# prefix : prefix to install into : dir : (none)
|
|
# cflags : cflags to use : string : (empty)
|
|
# ldflags : ldflags to use : string : (empty)
|
|
do_isl_backend() {
|
|
local host
|
|
local prefix
|
|
local cflags
|
|
local cxxflags
|
|
local ldflags
|
|
local arg
|
|
|
|
for arg in "$@"; do
|
|
eval "${arg// /\\ }"
|
|
done
|
|
|
|
CT_DoLog EXTRA "Configuring ISL"
|
|
|
|
CT_DoExecLog CFG \
|
|
CFLAGS="${cflags}" \
|
|
CXXFLAGS="${cxxflags}" \
|
|
LDFLAGS="${ldflags}" \
|
|
"${CT_SRC_DIR}/isl-${CT_ISL_VERSION}/configure" \
|
|
--build=${CT_BUILD} \
|
|
--host=${host} \
|
|
--prefix="${prefix}" \
|
|
--with-libgmp-prefix="${prefix}" \
|
|
--with-libgmpxx-prefix="${prefix}" \
|
|
--with-gmp-prefix="${prefix}" \
|
|
--disable-shared \
|
|
--enable-static \
|
|
--with-gmp=system \
|
|
--with-gmp-prefix="${prefix}" \
|
|
--with-piplib=no \
|
|
--with-clang=no
|
|
|
|
CT_DoLog EXTRA "Building ISL"
|
|
CT_DoExecLog ALL make ${JOBSFLAGS}
|
|
|
|
if [ "${CT_COMPLIBS_CHECK}" = "y" ]; then
|
|
CT_DoLog EXTRA "Checking ISL"
|
|
CT_DoExecLog ALL make ${JOBSFLAGS} -s check
|
|
fi
|
|
|
|
CT_DoLog EXTRA "Installing ISL"
|
|
CT_DoExecLog ALL make install
|
|
}
|
|
|
|
fi # CT_ISL
|