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

github.setup        mas-cli mas 4.1.1 v
github.tarball_from archive
set git-commit      dac9fc2
# This line is for displaying commit in CLI only
revision            0
categories          sysutils
description         Mac App Store command line interface
long_description    A simple command line interface for the Mac App Store. \
                    Designed for scripting and automation.
license             MIT

maintainers         {kimuraw @kimuraw} \
                    {judaew @judaew} \
                    openmaintainer

checksums           sha256  fd1390ee41ec074c04e0d627551566327d756a2b87b29e11bf2d3f6d4711bad7 \
                    rmd160  6e5bfed9e106e34ed89129e2f3b383f13e3d08d8 \
                    size    147317

use_configure       no
use_xcode           yes

# requirements:
# - mas: Swift 6 (Xcode 16 or later)
set xcodeversion_min_required 16
pre-fetch {
    if {[vercmp ${xcodeversion} ${xcodeversion_min_required}] < 0} {
        ui_error "${name} @${version} requires Xcode ${xcodeversion_min_required} or later but you have Xcode ${xcodeversion}."
        ui_error "See https://guide.macports.org/chunked/installing.xcode.html for download links."
        return -code error "incompatible Xcode version"
    }
}

post-patch {
    reinplace "s|\$(Scripts/version)|${version}|" ${worksrcpath}/Scripts/prebuild ${worksrcpath}/Scripts/package ${worksrcpath}/Scripts/_setup_script
    reinplace "s|\${MAS_INSTALL_METHOD:-unknown}|MacPorts|" ${worksrcpath}/Scripts/prebuild
    reinplace "s|\$(git remote get-url origin)|${git.url}|" ${worksrcpath}/Scripts/prebuild
    reinplace "s|\$(git rev-parse HEAD)|${git-commit}|" ${worksrcpath}/Scripts/prebuild
}

build.cmd           swift
build.target        build
build.args          --configuration release \
                    --arch ${configure.build_arch} \
                    --disable-sandbox

destroot {
    xinstall -m 0755 ${worksrcpath}/.build/${configure.build_arch}-apple-macosx/release/${name} \
        ${destroot}${prefix}/bin/${name}

    set bash_complete ${prefix}/share/bash-completion/completions
    xinstall -d ${destroot}${bash_complete}
    xinstall -m 0644 ${worksrcpath}/contrib/completion/mas-completion.bash \
        ${destroot}${bash_complete}/${name}

    set fish_complete ${prefix}/share/fish/vendor_completions.d
    xinstall -d ${destroot}${fish_complete}
    xinstall -m 0644 ${worksrcpath}/contrib/completion/mas.fish \
        ${destroot}${fish_complete}/${name}.fish
}

github.livecheck.regex  {([0-9.]+)}
