# -*- 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.1 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  d8d64b89ec772b559727b0d1ff07256862d91d66 \
                        sha256  0cec36e7035dd56c508bda56245cbd71e4495d2317bc2528165c4162bce79335 \
                        size    384314 \
                    ${name}_man_page_only${extract.suffix} \
                        rmd160  b81d7082d1873dd5464e01d831f40ae2ad650462 \
                        sha256  2f9db96faeb11a82fa80fe5af35d955f306b04e4d530e25f85b3574b41107414 \
                        size    49910

# 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
}
