# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4

PortSystem              1.0
PortGroup               github 1.0
PortGroup               java 1.0

name                    hamcrest
github.setup            hamcrest JavaHamcrest 3.0 v
github.tarball_from     archive
github.livecheck.regex  "(\[0-9]+(\\.\[0-9]+)*)"

categories              java devel
license                 BSD
platforms               any
supported_archs         noarch
homepage                https://hamcrest.org
maintainers             {sethm.id.au:dev @McDaMastR} \
                        openmaintainer

description             Flexible matching logic framework
long_description        Hamcrest is a Java framework for writing matcher \
                        objects and corresponding 'match' rules.  The \
                        framework is flexible and fit for use with UI \
                        validation, data filtering, and unit testing.

depends_build-append    bin:gradle8:gradle8

java.version            1.8+

set gradle_home         ${workpath}/.home/.gradle

checksums               rmd160  a49c7c2697c608f2dec3a7518e0751497c02bf06 \
                        sha256  75f7a70e99b84ebfa21ed8003fd44df9920ec20b88015c5f3a388bceddc9907f \
                        size    880513

use_configure           no

build.cmd               gradle8
build.target            build
build.args              --no-daemon \
                        --exclude-task=check \
                        --gradle-user-home="${gradle_home}"

test.run                yes
test.target             check
test.args               --no-daemon \
                        --gradle-user-home="${gradle_home}"

destroot {
    set destdocdir  ${destroot}/${prefix}/share/doc/${name}
    set destjavadir ${destroot}/${prefix}/share/java

    xinstall -d ${destjavadir}
    xinstall -m 644 \
        ${worksrcpath}/${name}/build/libs/${name}-${version}.jar \
        ${destjavadir}/${name}.jar

    xinstall -d ${destdocdir}
    xinstall -m 644 \
        ${worksrcpath}/CHANGES.md \
        ${worksrcpath}/LICENSE \
        ${worksrcpath}/README.md \
        ${worksrcpath}/RELEASING.md \
        ${destdocdir}

    if {[variant_isset doc]} {
        copy ${worksrcpath}/${name}/build/docs/javadoc ${destdocdir}
    }
}

variant doc \
        description {Install javadoc} {
    build.target-append javadoc
}
