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

# '-ml' stands for Machine Learning, which is appended in order to avoid conflict with devel/opal.
# See http://lists.macosforge.org/pipermail/macports-dev/2012-January/017429.html and #32884.
name                opal-ml
version             2022-03-18
epoch               0
categories          math
maintainers         nomaintainer

description         C++ header library of online learning with kernel slicing
long_description    Opal is a ${description}.

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

master_sites        ${homepage}
checksums           rmd160  7cc7d4e8539116c2ebf0e616cb2a2be3ca4774c1 \
                    sha256  8a85081a515d9d96159f1066f7eca32323be8f6a6ccf7081ded076ed034c3239 \
                    size    19307554

distname            opal-${version}

if {${configure.build_arch} in [list i386 ppc]} {
    # configure: error: Don't know how to build a 64-bit object; try --disable-64bit
    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 \
        ${destroot}${docdir}
    set exroot ${prefix}/share/examples
    xinstall -d ${destroot}${exroot}
    copy ${worksrcpath}/test ${destroot}${exroot}/${name}
}

variant multiclass description {Add a multi-class classifier} {
    configure.args-append \
                    --enable-multi
}

default_variants    +multiclass

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