crosstool-ng/scripts/build/companion_libs/ppl.sh
Yann E. MORIN" 5e27ad1e5a 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>
2011-04-06 22:30:57 +02:00

75 lines
2.3 KiB
Bash

# This file adds the functions to build the PPL library
# Copyright 2009 Yann E. MORIN
# Licensed under the GPL v2. See COPYING in the root of this package
do_ppl_get() { :; }
do_ppl_extract() { :; }
do_ppl() { :; }
# Overide functions depending on configuration
if [ "${CT_PPL}" = "y" ]; then
# Download PPL
do_ppl_get() {
CT_GetFile "ppl-${CT_PPL_VERSION}" \
http://www.cs.unipr.it/ppl/Download/ftp/releases/${CT_PPL_VERSION} \
ftp://ftp.cs.unipr.it/pub/ppl/releases/${CT_PPL_VERSION} \
ftp://gcc.gnu.org/pub/gcc/infrastructure
}
# Extract PPL
do_ppl_extract() {
CT_Extract "ppl-${CT_PPL_VERSION}"
CT_Patch "ppl" "${CT_PPL_VERSION}"
}
do_ppl() {
mkdir -p "${CT_BUILD_DIR}/build-ppl"
cd "${CT_BUILD_DIR}/build-ppl"
CT_DoStep INFO "Installing PPL"
CT_DoLog EXTRA "Configuring PPL"
CT_DoExecLog CFG \
CFLAGS="${CT_CFLAGS_FOR_HOST}" \
CXXFLAGS="${CT_CFLAGS_FOR_HOST}" \
"${CT_SRC_DIR}/ppl-${CT_PPL_VERSION}/configure" \
--build=${CT_BUILD} \
--host=${CT_HOST} \
--prefix="${CT_COMPLIBS_DIR}" \
--with-libgmp-prefix="${CT_COMPLIBS_DIR}" \
--with-libgmpxx-prefix="${CT_COMPLIBS_DIR}" \
--enable-cxx \
--enable-watchdog \
--disable-debugging \
--disable-assertions \
--disable-ppl_lcdd \
--disable-ppl_lpsol \
--disable-shared \
--enable-static
# Maybe-options:
# --enable-interfaces=...
# --enable-optimization=speed or sspeed (yes, with 2 's')
CT_DoLog EXTRA "Building PPL"
CT_DoExecLog ALL make ${JOBSFLAGS}
if [ "${CT_COMPLIBS_CHECK}" = "y" ]; then
CT_DoLog EXTRA "Checking PPL"
CT_DoExecLog ALL make ${JOBSFLAGS} -s check
fi
CT_DoLog EXTRA "Installing PPL"
CT_DoExecLog ALL make install
# Remove spuriously installed file
CT_DoExecLog ALL rm -f "${CT_PREFIX_DIR}/bin/ppl-config"
CT_EndStep
}
fi # CT_PPL