# -*- 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 2.12.0 v
github.tarball_from     archive
name                    apktool

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://ibotpeaches.github.io/Apktool/

checksums               rmd160  82166a7028268314651adca73e225b65467b9926 \
                        sha256  d87a589778d4369362a99c83a67ca3d365891395aba1be1b85dbf04e72cd3298 \
                        size    37127292

java.version            1.8+
java.fallback           openjdk11

use_configure           no
universal_variant       no

depends_build-append    port:gradle

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
}
