# -*- 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
PortGroup               java 1.0
PortGroup               github 1.0

github.setup            iBotPeaches Apktool 3.0.1 v
github.tarball_from     archive
name                    [string tolower ${github.project}]

categories              java devel
supported_archs         x86_64 arm64
license                 Apache-2
maintainers             {i0ntempest @i0ntempest} openmaintainer

description             A tool for reverse engineering 3rd party, closed, binary Android apps
long_description        Apktool is a tool for reverse engineering 3rd party, closed, binary Android apps.\
                        It can decode resources to nearly original form and rebuild them after making\
                        some modifications. It also makes working with an app easier because of the\
                        project like file structure and automation of some repetitive tasks like\
                        building apk, etc.

homepage                https://apktool.org

checksums               rmd160  09ad4c23759f279066d189fef6c5707ba6c76b9e \
                        sha256  5bdb4316f9d9aaf07874901860b1938bdd8f850a76d4e35777f4483beea8a63d \
                        size    26765085

java.version            1.8+
java.fallback           openjdk11

use_configure           no
universal_variant       no

depends_build-append    port:gradle8

build.env-append        GRADLE_USER_HOME=${worksrcpath}
build.cmd               ${prefix}/bin/gradle
build.args              --no-daemon --console=plain --stacktrace -p ${worksrcpath}
build.target            shadowJar

post-patch {
    reinplace "s|!in gradle.startParameter.taskNames|in gradle.startParameter.taskNames|g" ${worksrcpath}/build.gradle.kts
}

destroot {
    copy ${worksrcpath}/brut.apktool/apktool-cli/build/libs/apktool-cli.jar ${destroot}${prefix}/libexec/
    set script [open ${destroot}${prefix}/bin/apktool w]
    puts $script "#!/bin/sh"
    puts $script "\$(/usr/libexec/java_home)/bin/java -jar ${prefix}/libexec/apktool-cli.jar \"$@\""
    close $script
    file attributes ${destroot}${prefix}/bin/apktool -permissions ugo+x
}
