blob: 620139104b0ba7a236a0c79341374902985cb632 (
plain)
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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
|
# Copyright 1999-2024 Gentoo Authors and Martin V\"ath
# Distributed under the terms of the GNU General Public License v2
EAPI=8
WANT_AUTOMAKE=none
WANT_LIBTOOL=none
inherit autotools flag-o-matic optfeature toolchain-funcs
DESCRIPTION="Excellent text file viewer, optionally with additional selection feature"
PATCHN="less-select"
PATCHV="2.15"
PATCHVER="633"
PATCHRUMP="${PATCHN}-${PATCHV}"
PATCHBALL="${PATCHRUMP}.tar.gz"
SELECTDIR="${WORKDIR}/${PATCHRUMP}"
HOMEPAGE="http://www.greenwoodsoftware.com/less/ https://github.com/vaeth/less-select"
SRC_URI="mirror+http://www.greenwoodsoftware.com/less/${P}.tar.gz
less-select? ( https://github.com/vaeth/${PATCHN}/archive/v${PATCHV}.tar.gz -> ${PATCHBALL} )"
RESTRICT="mirror"
LICENSE="|| ( GPL-3 BSD-2 )"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="+lesspipe +less-select pcre original-gentoo source test"
RESTRICT="test !test? ( test )"
DEPEND="
>=app-misc/editor-wrapper-3
>=sys-libs/ncurses-5.2:=
pcre? ( dev-libs/libpcre2 )
"
RDEPEND="${DEPEND}
less-select? ( dev-lang/perl )"
# || ( >=dev-lang/perl-5.10.1 >=virtual/perl-File-Temp-0.19 )
PDEPEND="lesspipe? ( app-text/lesspipe )"
BDEPEND="test? ( virtual/pkgconfig )"
PATCHES=(
"${FILESDIR}"/${PN}-643-lesstest-pkg-config.patch
"${FILESDIR}"/${PN}-643-LESSOPEN-escape.patch
)
pkg_setup() {
if use source && ! use less-select
then ewarn 'ignoring USE=source without USE=less-select'
fi
}
src_prepare() {
if use less-select
then eapply "${SELECTDIR}/patches/less-${PATCHVER}-select.patch"
"${SELECTDIR}"/after-patch || die "${SELECTDIR}/after-patch failed"
sed -i -e 's|\([^a-zA-Z]\)/etc/less-select-key.bin|\1'"${EPREFIX}"'/etc/less/select-key.bin|g' \
"${SELECTDIR}/bin/less-select" || die
fi
default
# Upstream uses unpatched autoconf-2.69, which breaks with clang-16.
# https://bugs.gentoo.org/870412
eautoreconf
}
src_configure() {
append-lfs-flags # bug #896316
local myeconfargs=(
--with-regex=$(usex pcre pcre2 posix)
--with-editor="${EPREFIX}"/usr/libexec/editor
)
econf "${myeconfargs[@]}"
}
src_compile() {
default
if use less-select
then ./lesskey -o normal-key.bin "${SELECTDIR}/keys/less-normal-key.src" || die
./lesskey -o select-key.bin "${SELECTDIR}/keys/less-select-key.src" || die
fi
}
src_test() {
emake check VERBOSE=1 CC="$(tc-getCC)" PKG_CONFIG="$(tc-getPKG_CONFIG)"
}
src_install() {
local a
default
keepdir /usr/lib/lessfilter.d
keepdir /etc/lessfilter.d
newbin "${FILESDIR}"/lesspipe-r3.sh lesspipe
if use original-gentoo
then a="-R -M --shift 5"
else a="-sFRiMX --shift 5"
fi
printf '%s\n' \
'LESSOPEN="|lesspipe'$(usex lesspipe .sh)' %s"' \
"LESS=\"${a}\"" \
>70less || die
doenvd 70less
if use less-select
then newdoc "${SELECTDIR}"/README.md README.less-select
dobin "${SELECTDIR}/bin/"*
insinto /etc/less
doins select-key.bin normal-key.bin
if use source
then newins "${SELECTDIR}/keys/less-select-key.src" select-key.src
newins "${SELECTDIR}/keys/less-normal-key.src" normal-key.src
fi
fi
}
pkg_preinst() {
use lesspipe || optfeature "Colorized output support" dev-python/pygments
}
|