# -*- 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                yakmo
version             2015-01-21
categories          math textproc
maintainers         nomaintainer

description         C++ implementation of robust, efficient alternative k-means clustering

long_description    Yakmo implements robust, efficient k-means clustering \
                    with triangular inequality and smart initialization, \
                    while supporting alternative clustering outputs. The use \
                    of the triangular inequality allows k-means to skip \
                    unnecessary distance calculations, while the smart \
                    initialization by randomized seeding (k-means++) \
                    not only improves solution accuracy but also accelerates \
                    the algorithm convergence. In addition, you can obtain \
                    alternative clusterings via orthogonalization.

homepage            http://www.tkl.iis.u-tokyo.ac.jp/~ynaga/yakmo/
license             {GPL-2 LGPL-2.1}

master_sites        ${homepage}
checksums           rmd160  01d56aad8f1722a8c50f26debdac906f46b6888d \
                    sha256  3aa1e4adff48554db40556dd0c48ad3828e7ab60d1d3d5f8775d7b81defabfe4 \
                    size    106825

# configure: error: Don't know how to build a 64-bit object; try --disable-64bit
if {${configure.build_arch} in [list arm i386 ppc]} {
    configure.args-append \
                    --disable-64bit
}

post-destroot {
    # install additional documents.
    set docdir ${prefix}/share/doc/${name}
    xinstall -d ${destroot}${docdir}
    xinstall -m 644 -W ${worksrcpath} \
        AUTHORS GPL LGPL \
        ${destroot}${docdir}
}

livecheck.type      regex
livecheck.regex     "${name}-(\\d+(?:\\-\\d+)*)${extract.suffix}"
