# -*- 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

PortSystem              1.0

name                    palp
version                 2.20
revision                0

categories              math
license                 GPL-3+

maintainers             nomaintainer

homepage                http://hep.itp.tuwien.ac.at/~kreuzer/CY/CYpalp.html
description             a Package for Analyzing Lattice Polytopes
long_description        {*}${description}

master_sites            http://hep.itp.tuwien.ac.at/~kreuzer/CY/palp/

checksums               rmd160  4b7d861c5e1836e407e8616062d8a6cb27379d2e \
                        sha256  723e89e78b2d3d94a720dd770c11b932b3e6b56f8a49e0bf3621c776f7a02ce0 \
                        size    237664

patchfiles              makefile.diff

use_configure           no

configure.cflags-append -Wno-implicit-function-declaration

post-extract {
    # Extracted files do not have correct 'group' and 'other' permissions.
    fs-traverse item ${worksrcpath} {
        if {[file isfile ${item}]} {
            file attributes ${item} -permissions 0644
        }

        if {[file isdirectory ${item}]} {
            file attributes ${item} -permissions 0755
        }
    }
}

build {
    # optmize demntions in sage-way
    foreach dim {4 5 6 11} {
        system -W ${build.dir} "make CC=${configure.cc} CFLAGS='${configure.cflags} -DPOLY_Dmax=${dim}'"
        foreach file {poly class cws nef mori} {
            move ${build.dir}/${file}.x ${build.dir}/${file}-${dim}d.x
        }
        system -W ${build.dir} "make clean"
    }
    # build with default optimization
    system -W ${build.dir} "make CC=${configure.cc} CFLAGS='${configure.cflags}'"
}

destroot {
    foreach file [glob ${build.dir}/*.x] {
        move ${file} ${destroot}${prefix}/bin
    }

    set docdir ${destroot}${prefix}/share/doc/${subport}
    xinstall -d ${docdir}
    xinstall -m 0644 -W ${worksrcpath} COPYING ${docdir}
}

livecheck.type          regex
livecheck.regex         "${name}-(\[\\d\.]+)${extract.suffix}"