# -*- 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.2 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  3c9d72eee48d75ddadc056bbc8067e61395e6b24 \
                        sha256  058b9f8d2813484fdcec9fb556669861e23d1cfe2ed4dbaf78e7b877c1fc28d2 \
                        size    26765670

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
}
