diff options
Diffstat (limited to 'app-emacs/compat/compat-31.0.0.0.ebuild')
| -rw-r--r-- | app-emacs/compat/compat-31.0.0.0.ebuild | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/app-emacs/compat/compat-31.0.0.0.ebuild b/app-emacs/compat/compat-31.0.0.0.ebuild new file mode 100644 index 000000000000..30fd23d4b6be --- /dev/null +++ b/app-emacs/compat/compat-31.0.0.0.ebuild @@ -0,0 +1,67 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=9 + +inherit elisp + +DESCRIPTION="Compatibility libraries for Emacs" +HOMEPAGE="https://github.com/emacs-compat/compat/ + https://git.sr.ht/~pkal/compat/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/emacs-compat/${PN}" +else + SRC_URI="https://github.com/emacs-compat/${PN}/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz" + + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86" +fi + +LICENSE="GPL-3+" +SLOT="0" + +BDEPEND=" + sys-apps/texinfo +" + +ELISP_TEXINFO="${PN}.texi" + +src_prepare() { + elisp_src_prepare + + # Skip failing tests. + local -a skip_tests=( + compat-read-answer + compat-read-multiple-choice + ) + local skip_test="" + for skip_test in "${skip_tests[@]}"; do + sed -i "/${skip_test}/a (ert-skip nil)" ./compat-tests.el || die + done +} + +src_test() { + local has_json="$("${EMACS}" ${EMACSFLAGS} --eval "(princ (fboundp 'json-parse-string))")" + if [[ "${has_json}" != t ]] ; then + local line + while read line ; do + ewarn "${line}" + done <<-EOF + Your current Emacs version does not support native JSON parsing, + which is required for running tests of ${CATEGORY}/${PN}. + Emerge >=app-editors/emacs-27 with USE="json" and use "eselect emacs" + to select that version. + EOF + else + emake test + fi +} + +src_install() { + rm ./compat-tests.el || die + + elisp_src_install +} |
