# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
# $Id: Portfile 115384 2014-01-01 05:52:43Z jeremyhu@macports.org $

PortSystem          1.0
PortGroup           muniversal 1.0

name                ppl
version             1.0
revision            2
categories          devel math
platforms           darwin
maintainers         nomaintainer
license             GPL-3+

description         Parma Polyhedra Library
long_description    The Parma Polyhedra Library (PPL) provides numerical \
                    abstractions especially targeted at applications in \
                    the field of analysis and verification of complex \
                    systems. These abstractions include convex polyhedra, \
                    some special classes of polyhedra shapes that offer \
                    interesting complexity/precision tradeoffs, and grids \
                    which represent regularly spaced points that satisfy \
                    a set of linear congruence relations. The library \
                    also supports finite powersets and products of \
                    polyhedra and grids, a mixed integer linear \
                    programming problem solver using an exact-arithmetic \
                    version of the simplex algorithm, a parametric integer \
                    programming solver, and primitives for termination \
                    analysis via the automatic synthesis of linear ranking \
                    functions.

homepage            http://bugseng.com/products/ppl/
master_sites        http://bugseng.com/products/ppl/download/ftp/releases/${version} \
                    ftp://ftp.cs.unipr.it/pub/ppl/releases/${version}/
use_bzip2           yes

checksums           rmd160  eb239b1ef6eed3963c604cab4c8a9d5d48813c00 \
                    sha256  c169e962b8a0f7b7bcde5c5e0e2235248f1d78b155dfad684591d1a57e330b54

depends_build       port:m4
depends_skip_archcheck-append m4

depends_lib         port:gmp \
                    port:glpk

patchfiles          gmp-5.1.patch 

# Teach glibtool about -stdlib=libc++
use_autoreconf  yes
autoreconf.args -fvi

compiler.blacklist-append   gcc-3.3 gcc-4.0 apple-gcc-4.0
compiler.fallback-append    apple-gcc-4.2

if {[regexp clang|llvm ${configure.compiler}]} {
    # As of 'ppl-0.12.1', we need to be careful about use of the
    # '--enable-fpmath' flag! Newer versions of 'clang' will error about
    # '-frounding-math' being unsupported due to '-Werror'. Older
    # versions of 'clang' will just warn about '-frounding-math' despite
    # '-Werror'. And 'llvm-gcc' does not '-frounding-math' and siliently
    # ignores it.
    configure.args-append   --enable-fpmath=no
    configure.ccache        no
    configure.distcc        no
}

test.run            yes
test.target         check

livecheck.type      regex
livecheck.url       ${homepage}Download/
livecheck.regex     ${name}-(\[0-9.\]+)\\.tar
