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

github.setup            jboss-javassist javassist 3_33_0 rel_ _ga
github.tarball_from     archive
version                 [string map {_ .} ${version}]

categories              java devel
license                 {Apache-2 LGPL-2.1+ MPL-1.1}
platforms               any
supported_archs         noarch
homepage                https://www.javassist.org
maintainers             {sethm.id.au:dev @McDaMastR} \
                        openmaintainer

description             Java bytecode engineering toolkit
long_description        Javassist (JAVA programming ASSISTant) makes Java \
                        bytecode manipulation simple.  It is a class library \
                        for editing bytecodes in Java\; it enables Java \
                        programs to define a new class at runtime and to \
                        modify a class file when the JVM loads it.

# Building requires Java >= 11
# Running requires Java >= 8
java.version            11+

checksums               rmd160  29f1b691e43a4dd5aa088a0ea79891b87ba82e70 \
                        sha256  7a89cadb3334c797845452ff155e8dff95f48b2a69d8e8c7608f4aad03a249a1 \
                        size    1287349

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

    xinstall -d ${destbindir}
    xinstall ${filespath}/${name} ${destbindir}
    reinplace "s|@@PREFIX@@|${prefix}|g" ${destbindir}/${name}

    xinstall -d ${destjavadir}
    xinstall -W ${worksrcpath} -m 644 \
        target/${name}-${version}-GA.jar \
        ${destjavadir}/${name}-GA.jar

    xinstall -d ${destdocdir}
    xinstall -W ${worksrcpath} -m 644 \
        Changes.md \
        Examples.md \
        License.html \
        README.md \
        ${destdocdir}
    copy ${worksrcpath}/tutorial ${destdocdir}

    if {[variant_isset doc]} {
        copy ${worksrcpath}/target/site/apidocs ${destdocdir}/javadoc
    }
}

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