summaryrefslogtreecommitdiff
path: root/app-emacs/package-lint/package-lint-0.24.ebuild
blob: 2f35f9e66a1efd16df05f7174797c5b53d850b52 (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
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

NEED_EMACS=26.1

inherit elisp

DESCRIPTION="Linting library for Emacs Lisp package metadata"
HOMEPAGE="https://github.com/purcell/package-lint/"

if [[ "${PV}" == *9999* ]] ; then
	inherit git-r3

	EGIT_REPO_URI="https://github.com/purcell/${PN}.git"
else
	SRC_URI="https://github.com/purcell/${PN}/archive/${PV}.tar.gz
		-> ${P}.tar.gz"

	KEYWORDS="amd64 ~x86"
fi

LICENSE="GPL-3+"
SLOT="0"

RDEPEND="
	app-emacs/compat
"
BDEPEND="
	${RDEPEND}
"

PATCHES=(
	"${FILESDIR}/${PN}-0.22-load-data-directory.patch"
)

SITEFILE="50${PN}-gentoo.el"

elisp-enable-tests ert

src_prepare() {
	elisp_src_prepare

	sed "s|@SITEETC@|${EPREFIX}${SITEETC}/${PN}|" -i "${PN}.el" || die

	# Skip failing test. Tests are marked as "WORK IN PROGRESS" at the
	# top of the file.
	local -a skip_tests=(
		package-lint-test-accept-new-backported-libraries-with-backport-dep
		package-lint-test-accept-new-backported-sub-libraries-with-backport-dep
		package-lint-test-accept-normal-deps
		package-lint-test-accepts-new-backported-functions-with-backport-dep
		package-lint-test-accepts-new-functions-with-compat
		package-lint-test-accepts-new-macros-with-compat
		package-lint-test-error-new-backported-sub-libraries
		package-lint-test-warn-unversioned-dep
	)
	local skip_test=""
	for skip_test in "${skip_tests[@]}"; do
		sed -i "/${skip_test}/a (ert-skip nil)" package-lint-test.el || die
	done
}

src_install() {
	elisp-install "${PN}" ${PN}{,-flymake}.el{,c}
	elisp-make-site-file "${SITEFILE}"

	insinto "${SITEETC}/${PN}"
	doins -r data

	einstalldocs
}