blob: 2ccd1e431281dd35d49d85f5e91964b03f937eda [file] [log] [blame]
# Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit go-module
DESCRIPTION="A shell parser, formatter, and interpreter with bash support"
HOMEPAGE="https://github.com/mvdan/sh"
if [[ ${PV} == *9999 ]]; then
EGIT_REPO_URI="https://github.com/mvdan/sh.git"
inherit git-r3
else
SRC_URI="https://github.com/mvdan/sh/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-deps.tar.xz"
KEYWORDS="*"
S="${WORKDIR}/${PN//fmt/}-${PV}"
fi
LICENSE="Apache-2.0 BSD"
SLOT="0"
IUSE="man"
BDEPEND="man? ( app-text/scdoc )"
RDEPEND="!dev-util/shfmt"
src_unpack() {
default
if [[ ${PV} == *9999 ]]; then
git-r3_src_unpack
go-module_live_vendor
fi
}
src_compile() {
# Not bothering with gosh for now as it's very new
# https://github.com/mvdan/sh#gosh
ego build ./cmd/shfmt
if use man; then
scdoc <cmd/shfmt/shfmt.1.scd >shfmt.1 || die "conversation of man page failed"
fi
}
src_test() {
cd syntax || die
ego test -run=-
}
src_install() {
dobin shfmt
if use man; then
doman shfmt.1
fi
}