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

go.setup            github.com/mikefarah/yq 4.54.2 v
go.package          github.com/mikefarah/yq/v4
go.offline_build    no
go.toolchain_min    1.26
revision            0
dist_subdir         ${name}/${version}_${revision}

homepage            https://mikefarah.gitbook.io/yq

description         \
    yq is a portable command-line YAML processor

long_description    \
    {*}${description}. The aim of the project is to be the jq or sed of yaml \
    files.

categories          textproc sysutils
installs_libs       no
license             MIT
maintainers         {gmail.com:herby.gillot @herbygillot} \
                    openmaintainer

checksums           ${distname}${extract.suffix} \
                        rmd160  32c8a26fe8ff99fd4ef72494b3151d602ae0d97d \
                        sha256  13391403bb284452e102a532037c1ce5f5cd9d2a45f3e70521e810d5c32afe46 \
                        size    396996 \
                    ${name}_man_page_only${extract.suffix} \
                        rmd160  a576c9b1372af21f0e3c97f8ad6cf9bc01cbc62d \
                        sha256  f9dca70fe08f2d747bad275062e14daff6cb5d8c8f89c0e678ba1a1ba4660140 \
                        size    50781

# use generated man page to avoid build depedency on pandoc
master_sites-append https://github.com/mikefarah/yq/releases/download/v${version}/yq_man_page_only${extract.suffix}?dummy=:yqman
distfiles-append    yq_man_page_only${extract.suffix}:yqman

build.pre_args-append \
                    -ldflags \"-X ${go.package}/cmd.Version=${version}\"
build.args-append   -o ${name}

destroot {
    xinstall -m 0755 ${worksrcpath}/${name} ${destroot}${prefix}/bin/
    xinstall -d ${destroot}${prefix}/share/man/man1
    xinstall -m 0644 ${workpath}/${name}.1 ${destroot}${prefix}/share/man/man1/

    xinstall -d ${destroot}${prefix}/share/${name}
    xinstall -m 0644 ${worksrcpath}/LICENSE ${destroot}${prefix}/share/${name}
    file copy ${worksrcpath}/examples ${destroot}${prefix}/share/${name}/

    set bash_completion ${prefix}/share/bash-completion/completions
    xinstall -d ${destroot}${bash_completion}
    exec ${destroot}${prefix}/bin/${name} shell-completion bash > \
        ${destroot}${bash_completion}/${name}

    set zsh_completion ${prefix}/share/zsh/site-functions
    xinstall -d ${destroot}${zsh_completion}
    exec ${destroot}${prefix}/bin/${name} shell-completion zsh > \
        ${destroot}${zsh_completion}/_${name}

    set fish_completion ${prefix}/share/fish/vendor_completions.d
    xinstall -d ${destroot}${fish_completion}
    exec ${destroot}${prefix}/bin/${name} shell-completion fish > \
        ${destroot}${fish_completion}/${name}.fish
}
