6.7. PPL-0.10.2

The Parma Polyhedra Library (PPL) provides numerical abstractions especially targeted at applications in the field of analysis and verification of complex systems. CLooG-PPL requires this library.

6.7.1. Environment Settings

This package requires compiler variables to be set for the target in the environment.

export CC="${CLFS_TARGET}-gcc"
export CXX="${CLFS_TARGET}-g++"
export AR="${CLFS_TARGET}-ar"
export AS="${CLFS_TARGET}-as"
export RANLIB="${CLFS_TARGET}-ranlib"
export LD="${CLFS_TARGET}-ld"
export STRIP="${CLFS_TARGET}-strip"

6.7.2. Installation of PPL

Prepare PPL for compilation:

CPPFLAGS=-fexceptions \
    ./configure --prefix=/usr \
    --build=${CLFS_HOST} --host=${CLFS_TARGET} \
    --with-libgmp-prefix=${CLFS}/usr \
    --with-libgmpxx-prefix=${CLFS}/usr \
    --enable-shared --disable-optimization \
    --enable-check=quick

Compile the package:

make

Install the package:

make DESTDIR=${CLFS} install

At this time, Libtool does not support searching a sysroot for libraries. Leaving the .la files in place will cause Libtool to look in the wrong place for libraries. These files are not required for linking on Linux. Remove them with the following command:

rm -v ${CLFS}/usr/lib/lib{ppl,ppl_c,pwl}.la

6.7.3. Contents of PPL

Installed Programs: ppl-config, ppl_lcdd
Installed Libraries: libppl.[a,so], libppl_c.[a,so], libpwl.[a,so]

Short Descriptions

ppl-config

Outputs information about the PPL installation

ppl_lcdd

Reads an H-representation of a polyhedron and generates a V-representation of the same polyhedron

libppl

The Parma Polyhedra Library (PPL).

libppl_c

The Parma Polyhedra Library bindings for C.

libpwl

The Parma Watchdog Library