# -*- 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                pecco
version             2022-03-18
epoch               0
categories          math
maintainers         nomaintainer

description         simple C++ library for linear classification with conjunctive features
long_description    ${name} is a ${description}.

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

master_sites        ${homepage}
checksums           rmd160  a7f2194a8350550e5a58324617fc619bcd7c0f5e \
                    sha256  2d547e4e44f2abb399bc323ee6d412ee72a53278728ec58206a5eb474fe38ff3 \
                    size    15266871

if {${build_arch} in [list arm i386 ppc]} {
    configure.args-append --disable-64bit
}

post-destroot {
    set docdir ${prefix}/share/doc/${name}
    xinstall -d ${destroot}${docdir}
    xinstall -m 644 -W ${worksrcpath} \
        AUTHORS COPYING GPL LGPL README THANKS \
        ${destroot}${docdir}
    set exroot ${prefix}/share/examples
    xinstall -d ${destroot}${exroot}
    copy ${worksrcpath}/test ${destroot}${exroot}/${name}
}

variant dartsclone description {Use darts-clone} {
    depends_build-append       port:darts-clone
    configure.args-append      --with-trie-impl=darts-clone
}

variant float description {Use float as the type of weights} {
    configure.args-append      --enable-float
}

variant trie description {Encode weights into a trie in kernel_model} {
    configure.args-append      --enable-abuse-trie
}

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