aboutsummaryrefslogtreecommitdiffstats
path: root/app-shells/etsh/etsh-5.4.0.ebuild
blob: 08aa884b73c9c6a9ef2e69ef49c00781f91ab923 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=9

VERIFY_SIG_METHOD="signify"
inherit verify-sig

DESCRIPTION="Enhanced port of the Thompson sh(1) from V6 UNIX"
HOMEPAGE="https://etsh.dev/"

SRC_URI="
	https://etsh.dev/src/etsh_${PV}/etsh-${PV}.tar.gz
	https://etsh.dev/src/etsh_${PV}/SHA512.sig -> ${P}.sha.sig
"
LICENSE="BSD BSD-2 BSD-4"
SLOT="0"
KEYWORDS="~amd64"

IUSE="doc examples"

# Also installs manpage for if(1)
DEPEND="!!app-doc/execline-man-pages"
BDEPEND="verify-sig? ( sec-keys/signify-keys-etsh )"

VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/signify-keys/etsh-20260918.pub

src_unpack() {
	if use verify-sig; then
		cp "${DISTDIR}"/${P}.{sha.sig,tar.gz} . || die
		verify-sig_verify_signed_checksums ${P}.sha.sig sha512 ${P}.tar.gz
	fi

	unpack "${P}.tar.gz"
}

src_prepare() {
	sed -i -e '/$(INSTALL)/s/-s//' Makefile || die
	eapply_user
}

src_configure() {
	./configure || die
}

etsh_emake() {
	local mymakeargs=(
		PREFIX="${EPREFIX}/usr"
		LIBEXECDIR="${EPREFIX}/usr/libexec/${PN}"
		LIBEXECDIRETSH="${EPREFIX}/usr/libexec/${PN}"
		LIBEXECDIRTSH="${EPREFIX}/usr/libexec/${PN}"
		DOCDIR="${EPREFIX}/usr/share/doc/${P}"
		EXPDIR="${EPREFIX}/usr/share/doc/${P}/examples"
		MANDIR="${EPREFIX}/usr/share/man/man1"
	)
	emake -j1 "${mymakeargs[@]}" "$@"
}

src_compile() {
	etsh_emake all exp
}

src_install() {
	etsh_emake DESTDIR="${D}" install
	if use doc; then
		etsh_emake DESTDIR="${D}" install-doc
	fi
	if use examples; then
		etsh_emake DESTDIR="${D}" install-exp
	fi
}