public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2018-02-22 13:25 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2018-02-22 13:25 UTC (permalink / raw
  To: gentoo-commits

commit:     6cb5c28ebe2d41da07fd7bcf217a68eb84ee2efd
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 22 13:24:43 2018 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Thu Feb 22 13:24:43 2018 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=6cb5c28e

elisp*.eclass: Sync from gentoo repo.

 eclass/elisp-common.eclass | 4 ++--
 eclass/elisp.eclass        | 8 ++++----
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index 3b9a4a3..05b03f4 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -1,6 +1,6 @@
 # Copyright 1999-2015 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-#
+
 # @ECLASS: elisp-common.eclass
 # @MAINTAINER:
 # Gentoo GNU Emacs project <gnu-emacs@gentoo.org>
@@ -344,7 +344,7 @@ elisp-site-file-install() {
 # directory.
 
 elisp-site-regen() {
-	local sitelisp=${ROOT}${EPREFIX}${SITELISP}
+	local sitelisp=${ROOT%/}${EPREFIX}${SITELISP}
 	local sf i ret=0 null="" page=$'\f'
 	local -a sflist
 

diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index 4e5846c..6745973 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -1,6 +1,6 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-#
+
 # @ECLASS: elisp.eclass
 # @MAINTAINER:
 # Gentoo GNU Emacs project <gnu-emacs@gentoo.org>
@@ -68,11 +68,11 @@ inherit elisp-common
 
 case ${EAPI:-0} in
 	0|1)
-		inherit eutils
+		inherit epatch
 		EXPORT_FUNCTIONS src_{unpack,compile,install} \
 			pkg_{setup,postinst,postrm} ;;
 	2|3|4|5)
-		inherit eutils
+		inherit epatch
 		EXPORT_FUNCTIONS src_{unpack,prepare,configure,compile,install} \
 			pkg_{setup,postinst,postrm} ;;
 	6)


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2018-06-01 18:07 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2018-06-01 18:07 UTC (permalink / raw
  To: gentoo-commits

commit:     9e025d71f8304db07e4e086fd8289f0d5e1789b5
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Fri Jun  1 16:51:24 2018 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Fri Jun  1 18:07:12 2018 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=9e025d71

elisp.eclass: Depend on virtual/emacs on the build system.

For byte-compilation, Emacs is required to run on the native
build system. Therefore BDEPEND on virtual/emacs in EAPI 7.

Reorganise EAPI conditionals to be more compact.

 eclass/elisp.eclass | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index 9a66ec5..0f07a3e 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -65,24 +65,24 @@
 # files by dodoc in src_install().
 
 inherit elisp-common
+case ${EAPI:-0} in
+	0|1|2|3|4|5) inherit epatch ;;
+	6|7) ;;
+	*) die "${ECLASS}: EAPI ${EAPI} not supported" ;;
+esac
 
 case ${EAPI:-0} in
-	0|1)
-		inherit epatch
-		EXPORT_FUNCTIONS src_{unpack,compile,install} \
-			pkg_{setup,postinst,postrm} ;;
-	2|3|4|5)
-		inherit epatch
-		EXPORT_FUNCTIONS src_{unpack,prepare,configure,compile,install} \
+	0|1) EXPORT_FUNCTIONS src_{unpack,compile,install} \
 			pkg_{setup,postinst,postrm} ;;
-	6|7)
-		EXPORT_FUNCTIONS src_{unpack,prepare,configure,compile,install} \
+	*) EXPORT_FUNCTIONS src_{unpack,prepare,configure,compile,install} \
 			pkg_{setup,postinst,postrm} ;;
-	*) die "${ECLASS}: EAPI ${EAPI} not supported" ;;
 esac
 
-DEPEND=">=virtual/emacs-${NEED_EMACS:-23}"
-RDEPEND="${DEPEND}"
+RDEPEND=">=virtual/emacs-${NEED_EMACS:-23}"
+case ${EAPI:-0} in
+	0|1|2|3|4|5|6) DEPEND="${RDEPEND}" ;;
+	*) BDEPEND="${RDEPEND}" ;;
+esac
 
 # @FUNCTION: elisp_pkg_setup
 # @DESCRIPTION:


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2018-06-01 18:07 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2018-06-01 18:07 UTC (permalink / raw
  To: gentoo-commits

commit:     5e996d0ccda6670266632a5af345607c2d6a6aae
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Fri Jun  1 18:06:50 2018 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Fri Jun  1 18:06:50 2018 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=5e996d0c

elisp.eclass: Sync from gentoo repo.

 eclass/elisp.eclass | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index 6745973..9a66ec5 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: elisp.eclass
@@ -75,7 +75,7 @@ case ${EAPI:-0} in
 		inherit epatch
 		EXPORT_FUNCTIONS src_{unpack,prepare,configure,compile,install} \
 			pkg_{setup,postinst,postrm} ;;
-	6)
+	6|7)
 		EXPORT_FUNCTIONS src_{unpack,prepare,configure,compile,install} \
 			pkg_{setup,postinst,postrm} ;;
 	*) die "${ECLASS}: EAPI ${EAPI} not supported" ;;
@@ -137,14 +137,14 @@ elisp_src_prepare() {
 		fi
 		case ${EAPI:-0} in
 			0|1|2|3|4|5) epatch "${file}" ;;
-			6) eapply "${file}" ;;
+			*) eapply "${file}" ;;
 		esac
 	done
 
 	# apply any user patches
 	case ${EAPI:-0} in
 		0|1|2|3|4|5) epatch_user ;;
-		6) eapply_user ;;
+		*) eapply_user ;;
 	esac
 
 	if [[ -n ${ELISP_REMOVE} ]]; then


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2019-08-17 22:08 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2019-08-17 22:08 UTC (permalink / raw
  To: gentoo-commits

commit:     06c1c0f8718db24298c7868f65bf133577988584
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 17 21:27:07 2019 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sat Aug 17 21:27:07 2019 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=06c1c0f8

elisp.eclass: Sync from gentoo repo.

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp.eclass | 35 +++++++++++++----------------------
 1 file changed, 13 insertions(+), 22 deletions(-)

diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index 0f07a3e..c885345 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: elisp.eclass
@@ -9,6 +9,7 @@
 # Jeremy Maitin-Shepard <jbms@attbi.com>
 # Christian Faulhammer <fauli@gentoo.org>
 # Ulrich Müller <ulm@gentoo.org>
+# @SUPPORTED_EAPIS: 4 5 6 7
 # @BLURB: Eclass for Emacs Lisp packages
 # @DESCRIPTION:
 #
@@ -66,21 +67,17 @@
 
 inherit elisp-common
 case ${EAPI:-0} in
-	0|1|2|3|4|5) inherit epatch ;;
+	4|5) inherit epatch ;;
 	6|7) ;;
-	*) die "${ECLASS}: EAPI ${EAPI} not supported" ;;
+	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-case ${EAPI:-0} in
-	0|1) EXPORT_FUNCTIONS src_{unpack,compile,install} \
-			pkg_{setup,postinst,postrm} ;;
-	*) EXPORT_FUNCTIONS src_{unpack,prepare,configure,compile,install} \
-			pkg_{setup,postinst,postrm} ;;
-esac
+EXPORT_FUNCTIONS src_{unpack,prepare,configure,compile,install} \
+	pkg_{setup,postinst,postrm}
 
 RDEPEND=">=virtual/emacs-${NEED_EMACS:-23}"
-case ${EAPI:-0} in
-	0|1|2|3|4|5|6) DEPEND="${RDEPEND}" ;;
+case ${EAPI} in
+	4|5|6) DEPEND="${RDEPEND}" ;;
 	*) BDEPEND="${RDEPEND}" ;;
 esac
 
@@ -101,8 +98,7 @@ elisp_pkg_setup() {
 # @FUNCTION: elisp_src_unpack
 # @DESCRIPTION:
 # Unpack the sources; also handle the case of a single *.el file in
-# WORKDIR for packages distributed that way.  For EAPIs without
-# src_prepare, call elisp_src_prepare.
+# WORKDIR for packages distributed that way.
 
 elisp_src_unpack() {
 	[[ -n ${A} ]] && unpack ${A}
@@ -111,11 +107,6 @@ elisp_src_unpack() {
 		mv ${P}.el ${PN}.el || die
 		[[ -d ${S} ]] || S=${WORKDIR}
 	fi
-
-	case ${EAPI:-0} in
-		0|1) [[ -d ${S} ]] && cd "${S}"
-			elisp_src_prepare ;;
-	esac
 }
 
 # @FUNCTION: elisp_src_prepare
@@ -135,15 +126,15 @@ elisp_src_prepare() {
 		else
 			die "Cannot find ${patch}"
 		fi
-		case ${EAPI:-0} in
-			0|1|2|3|4|5) epatch "${file}" ;;
+		case ${EAPI} in
+			4|5) epatch "${file}" ;;
 			*) eapply "${file}" ;;
 		esac
 	done
 
 	# apply any user patches
-	case ${EAPI:-0} in
-		0|1|2|3|4|5) epatch_user ;;
+	case ${EAPI} in
+		4|5) epatch_user ;;
 		*) eapply_user ;;
 	esac
 


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2019-09-09  8:25 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2019-09-09  8:25 UTC (permalink / raw
  To: gentoo-commits

commit:     be1546c53db3f239a96ae8bb25382eccae863507
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Mon Sep  9 08:25:22 2019 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Mon Sep  9 08:25:22 2019 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=be1546c5

elisp.eclass: Sync from gentoo repo.

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp.eclass | 25 +++++++++++--------------
 1 file changed, 11 insertions(+), 14 deletions(-)

diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index c885345..bcd80a9 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -38,7 +38,8 @@
 # @DESCRIPTION:
 # Space separated list of patches to apply after unpacking the sources.
 # Patch files are searched for in the current working dir, WORKDIR, and
-# FILESDIR.
+# FILESDIR.  This variable is semi-deprecated, preferably use the
+# PATCHES array instead if the EAPI supports it.
 
 # @ECLASS-VARIABLE: ELISP_REMOVE
 # @DEFAULT_UNSET
@@ -59,12 +60,6 @@
 # Space separated list of Texinfo sources.  Respective GNU Info files
 # will be generated in src_compile() and installed in src_install().
 
-# @ECLASS-VARIABLE: DOCS
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# DOCS="blah.txt ChangeLog" is automatically used to install the given
-# files by dodoc in src_install().
-
 inherit elisp-common
 case ${EAPI:-0} in
 	4|5) inherit epatch ;;
@@ -101,7 +96,7 @@ elisp_pkg_setup() {
 # WORKDIR for packages distributed that way.
 
 elisp_src_unpack() {
-	[[ -n ${A} ]] && unpack ${A}
+	default
 	if [[ -f ${P}.el ]]; then
 		# the "simple elisp" case with a single *.el file in WORKDIR
 		mv ${P}.el ${PN}.el || die
@@ -132,10 +127,10 @@ elisp_src_prepare() {
 		esac
 	done
 
-	# apply any user patches
+	# apply PATCHES (if supported in EAPI), and any user patches
 	case ${EAPI} in
 		4|5) epatch_user ;;
-		*) eapply_user ;;
+		*) default ;;
 	esac
 
 	if [[ -n ${ELISP_REMOVE} ]]; then
@@ -177,11 +172,13 @@ elisp_src_install() {
 	if [[ -n ${ELISP_TEXINFO} ]]; then
 		set -- ${ELISP_TEXINFO}
 		set -- ${@##*/}
-		doinfo ${@/%.*/.info*} || die
-	fi
-	if [[ -n ${DOCS} ]]; then
-		dodoc ${DOCS} || die
+		doinfo ${@/%.*/.info*}
 	fi
+	# install documentation only when explicitly requested
+	case ${EAPI} in
+		4|5) [[ -n ${DOCS} ]] && dodoc ${DOCS} ;;
+		*) declare -p DOCS &>/dev/null && einstalldocs ;;
+	esac
 	if declare -f readme.gentoo_create_doc >/dev/null; then
 		readme.gentoo_create_doc
 	fi


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2019-12-21 18:30 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2019-12-21 18:30 UTC (permalink / raw
  To: gentoo-commits

commit:     6da4969af2e59af57c07dc42745eeb9460e0d34f
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 21 18:26:07 2019 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sat Dec 21 18:26:07 2019 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=6da4969a

elisp*.eclass: Sync from gentoo repo.

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 100 ++++++++++++++++++++++++++++++++++++---------
 eclass/elisp.eclass        |  20 ++++-----
 2 files changed, 88 insertions(+), 32 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index 05b03f4..d76c9e5 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: elisp-common.eclass
@@ -23,26 +23,25 @@
 # When relying on the emacs USE flag, you need to add
 #
 # @CODE
-# 	emacs? ( virtual/emacs )
+# 	emacs? ( >=app-editors/emacs-23.1:* )
 # @CODE
 #
 # to your DEPEND/RDEPEND line and use the functions provided here to
 # bring the files to the correct locations.
 #
-# If your package requires a minimum Emacs version, e.g. Emacs 24, then
-# the dependency should be on >=virtual/emacs-24 instead.  Because the
-# user can select the Emacs executable with eselect, you should also
-# make sure that the active Emacs version is sufficient.  This can be
-# tested with function elisp-need-emacs(), which would typically be
-# called from pkg_setup(), as in the following example:
+# If your package requires a minimum Emacs version, e.g. Emacs 26.1,
+# then the dependency should be on >=app-editors/emacs-26.1:* instead.
+# Because the user can select the Emacs executable with eselect, you
+# should also make sure that the active Emacs version is sufficient.
+# The eclass will automatically ensure this if you assign variable
+# NEED_EMACS with the Emacs version, as in the following example:
 #
 # @CODE
-# 	elisp-need-emacs 24 || die "Emacs version too low"
+# 	NEED_EMACS=26.1
 # @CODE
 #
-# Please note that such tests should be limited to packages that are
-# known to fail with lower Emacs versions; the standard case is to
-# depend on virtual/emacs without version.
+# Please note that this should be done only for packages that are known
+# to fail with lower Emacs versions.
 #
 # @ROFF .SS
 # src_compile() usage:
@@ -134,6 +133,23 @@
 # the differing name as second argument.
 #
 # @ROFF .SS
+# pkg_setup() usage:
+#
+# If your ebuild uses the elisp-compile eclass function to compile
+# its elisp files (see above), then you don't need a pkg_setup phase,
+# because elisp-compile and elisp-make-autoload-file do their own sanity
+# checks.  On the other hand, if the elisp files are compiled by the
+# package's build system, then there is often no check for the Emacs
+# version.  In this case, you can add an explicit check in pkg_setup:
+#
+# @CODE
+# 	elisp-check-emacs-version
+# @CODE
+#
+# When having optional Emacs support, you should prepend "use emacs &&"
+# to above call of elisp-check-emacs-version().
+#
+# @ROFF .SS
 # pkg_postinst() / pkg_postrm() usage:
 #
 # After that you need to recreate the start-up file of Emacs after
@@ -149,12 +165,14 @@
 # 	}
 # @CODE
 #
-# When having optional Emacs support, you should prepend "use emacs &&"
+# Again, with optional Emacs support, you should prepend "use emacs &&"
 # to above calls of elisp-site-regen().
-# Don't use "has_version virtual/emacs"!  When unmerging the state of
-# the emacs USE flag is taken from the package database and not from the
-# environment, so it is no problem when you unset USE=emacs between
-# merge and unmerge of a package.
+
+case ${EAPI:-0} in
+	4|5|6) inherit eapi7-ver ;;
+	7) ;;
+	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
+esac
 
 # @ECLASS-VARIABLE: SITELISP
 # @DESCRIPTION:
@@ -182,6 +200,17 @@ EMACSFLAGS="-batch -q --no-site-file"
 # Emacs flags used for byte-compilation in elisp-compile().
 BYTECOMPFLAGS="-L ."
 
+# @ECLASS-VARIABLE: NEED_EMACS
+# @DESCRIPTION:
+# The minimum Emacs version required for the package.
+: ${NEED_EMACS:=23.1}
+
+# @ECLASS-VARIABLE: _ELISP_EMACS_VERSION
+# @INTERNAL
+# @DESCRIPTION:
+# Cached value of Emacs version detected in elisp-check-emacs-version().
+_ELISP_EMACS_VERSION=""
+
 # @FUNCTION: elisp-emacs-version
 # @RETURN: exit status of Emacs
 # @DESCRIPTION:
@@ -212,12 +241,39 @@ elisp-emacs-version() {
 	echo "${version}"
 }
 
-# @FUNCTION: elisp-need-emacs
-# @USAGE: <version>
-# @RETURN: 0 if true, 1 if false, 2 if trouble
+# @FUNCTION: elisp-check-emacs-version
+# @USAGE: [version]
 # @DESCRIPTION:
+# Test if the eselected Emacs version is at least the version of
+# GNU Emacs specified in the NEED_EMACS variable, or die otherwise.
+
+elisp-check-emacs-version() {
+	if [[ -z ${_ELISP_EMACS_VERSION} ]]; then
+		local have_emacs
+		have_emacs=$(elisp-emacs-version) \
+			|| die "Could not determine Emacs version"
+		elog "Emacs version: ${have_emacs}"
+		if [[ ${have_emacs} =~ XEmacs|Lucid ]]; then
+			die "XEmacs detected. This package needs GNU Emacs."
+		fi
+		# GNU Emacs versions have only numeric components.
+		if ! [[ ${have_emacs} =~ ^[0-9]+(\.[0-9]+)*$ ]]; then
+			die "Malformed version string: ${have_emacs}"
+		fi
+		_ELISP_EMACS_VERSION=${have_emacs}
+	fi
+
+	if ! ver_test "${_ELISP_EMACS_VERSION}" -ge "${NEED_EMACS}"; then
+		eerror "This package needs at least Emacs ${NEED_EMACS}."
+		eerror "Use \"eselect emacs\" to select the active version."
+		die "Emacs version too low"
+	fi
+}
+
 # Test if the eselected Emacs version is at least the major version
 # of GNU Emacs specified as argument.
+# Return 0 if true, 1 if false, 2 if trouble.
+# Deprecated, use elisp-check-emacs-version instead.
 
 elisp-need-emacs() {
 	local need_emacs=$1 have_emacs
@@ -249,6 +305,8 @@ elisp-need-emacs() {
 # in case they require or load one another.
 
 elisp-compile() {
+	elisp-check-emacs-version
+
 	ebegin "Compiling GNU Emacs Elisp files"
 	${EMACS} ${EMACSFLAGS} ${BYTECOMPFLAGS} -f batch-byte-compile "$@"
 	eend $? "elisp-compile: batch-byte-compile failed" || die
@@ -262,6 +320,8 @@ elisp-compile() {
 elisp-make-autoload-file() {
 	local f="${1:-${PN}-autoloads.el}" null="" page=$'\f'
 	shift
+	elisp-check-emacs-version
+
 	ebegin "Generating autoload file for GNU Emacs"
 
 	cat >"${f}" <<-EOF

diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index bcd80a9..a411f60 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 2002-2019 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: elisp.eclass
@@ -30,8 +30,8 @@
 # @DEFAULT_UNSET
 # @DESCRIPTION:
 # If you need anything different from Emacs 23, use the NEED_EMACS
-# variable before inheriting elisp.eclass.  Set it to the major version
-# your package uses and the dependency will be adjusted.
+# variable before inheriting elisp.eclass.  Set it to the version your
+# package uses and the dependency will be adjusted.
 
 # @ECLASS-VARIABLE: ELISP_PATCHES
 # @DEFAULT_UNSET
@@ -70,24 +70,20 @@ esac
 EXPORT_FUNCTIONS src_{unpack,prepare,configure,compile,install} \
 	pkg_{setup,postinst,postrm}
 
-RDEPEND=">=virtual/emacs-${NEED_EMACS:-23}"
+RDEPEND=">=app-editors/emacs-${NEED_EMACS}:*"
 case ${EAPI} in
-	4|5|6) DEPEND="${RDEPEND}" ;;
+	4) RDEPEND="${RDEPEND%:*}"; DEPEND="${RDEPEND}" ;;
+	5|6) DEPEND="${RDEPEND}" ;;
 	*) BDEPEND="${RDEPEND}" ;;
 esac
 
 # @FUNCTION: elisp_pkg_setup
 # @DESCRIPTION:
-# Test if the eselected Emacs version is sufficient to fulfil the major
+# Test if the eselected Emacs version is sufficient to fulfil the
 # version requirement of the NEED_EMACS variable.
 
 elisp_pkg_setup() {
-	elisp-need-emacs "${NEED_EMACS:-23}"
-	case $? in
-		0) ;;
-		1) die "Emacs version too low" ;;
-		*) die "Could not determine Emacs version" ;;
-	esac
+	elisp-check-emacs-version
 }
 
 # @FUNCTION: elisp_src_unpack


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2019-12-21 18:54 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2019-12-21 18:54 UTC (permalink / raw
  To: gentoo-commits

commit:     1eff6a128f89b67a4a42253d1c75265255c4e79b
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 21 18:54:04 2019 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sat Dec 21 18:54:04 2019 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=1eff6a12

elisp-common.eclass: Report Emacs version with einfo, not elog.

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index d76c9e5..a4bff25 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -252,7 +252,7 @@ elisp-check-emacs-version() {
 		local have_emacs
 		have_emacs=$(elisp-emacs-version) \
 			|| die "Could not determine Emacs version"
-		elog "Emacs version: ${have_emacs}"
+		einfo "Emacs version: ${have_emacs}"
 		if [[ ${have_emacs} =~ XEmacs|Lucid ]]; then
 			die "XEmacs detected. This package needs GNU Emacs."
 		fi


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2019-12-22 12:34 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2019-12-22 12:34 UTC (permalink / raw
  To: gentoo-commits

commit:     255befc097d728395eea275c4f5dd19c78276a3f
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 22 12:34:04 2019 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sun Dec 22 12:34:04 2019 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=255befc0

elisp-common.eclass: Add missing argument to eend.

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index a4bff25..b5ea21c 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -457,7 +457,7 @@ elisp-site-regen() {
 		# was actually no change.
 		# A case is a remerge where we have doubled output.
 		rm -f "${T}"/site-gentoo.el
-		eend
+		eend 0
 		einfo "... no changes."
 	else
 		mv "${T}"/site-gentoo.el "${sitelisp}"/site-gentoo.el


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2020-02-22 11:42 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2020-02-22 11:42 UTC (permalink / raw
  To: gentoo-commits

commit:     398c5eae70a6cede9316f8d4fcdb49b28392602f
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sat Feb 22 11:42:11 2020 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sat Feb 22 11:42:11 2020 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=398c5eae

elisp*.eclass: Sync from gentoo repo.

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 14 +++++---------
 eclass/elisp.eclass        |  4 ++--
 2 files changed, 7 insertions(+), 11 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index b5ea21c..6fa2bbe 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: elisp-common.eclass
@@ -43,8 +43,7 @@
 # Please note that this should be done only for packages that are known
 # to fail with lower Emacs versions.
 #
-# @ROFF .SS
-# src_compile() usage:
+# @SUBSECTION src_compile() usage:
 #
 # An elisp file is compiled by the elisp-compile() function defined
 # here and simply takes the source files as arguments.  The case of
@@ -64,8 +63,7 @@
 # comments.  See the Emacs Lisp Reference Manual (node "Autoload") for
 # a detailed explanation.
 #
-# @ROFF .SS
-# src_install() usage:
+# @SUBSECTION src_install() usage:
 #
 # The resulting compiled files (.elc) should be put in a subdirectory of
 # /usr/share/emacs/site-lisp/ which is named after the first argument
@@ -132,8 +130,7 @@
 # "50${PN}-gentoo.el".  If your subdirectory is not named ${PN}, give
 # the differing name as second argument.
 #
-# @ROFF .SS
-# pkg_setup() usage:
+# @SUBSECTION pkg_setup() usage:
 #
 # If your ebuild uses the elisp-compile eclass function to compile
 # its elisp files (see above), then you don't need a pkg_setup phase,
@@ -149,8 +146,7 @@
 # When having optional Emacs support, you should prepend "use emacs &&"
 # to above call of elisp-check-emacs-version().
 #
-# @ROFF .SS
-# pkg_postinst() / pkg_postrm() usage:
+# @SUBSECTION pkg_postinst() / pkg_postrm() usage:
 #
 # After that you need to recreate the start-up file of Emacs after
 # emerging and unmerging by using

diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index a411f60..7876928 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -1,4 +1,4 @@
-# Copyright 2002-2019 Gentoo Authors
+# Copyright 2002-2020 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: elisp.eclass
@@ -173,7 +173,7 @@ elisp_src_install() {
 	# install documentation only when explicitly requested
 	case ${EAPI} in
 		4|5) [[ -n ${DOCS} ]] && dodoc ${DOCS} ;;
-		*) declare -p DOCS &>/dev/null && einstalldocs ;;
+		*) [[ $(declare -p DOCS 2>/dev/null) == *=* ]] && einstalldocs ;;
 	esac
 	if declare -f readme.gentoo_create_doc >/dev/null; then
 		readme.gentoo_create_doc


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2020-08-04 14:37 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2020-08-04 14:37 UTC (permalink / raw
  To: gentoo-commits

commit:     ee0c4d0b14c9ece913d340fe5a074e1f63726fc6
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 25 19:08:45 2020 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sat Jul 25 19:08:45 2020 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=ee0c4d0b

elisp-common.eclass: Support installation of dynamic modules.

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 42 ++++++++++++++++++++++++++++++++++++------
 1 file changed, 36 insertions(+), 6 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index 6fa2bbe..0bf6c01 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -180,6 +180,12 @@ SITELISP=/usr/share/emacs/site-lisp
 # Directory where packages install miscellaneous (not Lisp) files.
 SITEETC=/usr/share/emacs/etc
 
+# @ECLASS-VARIABLE: EMACSMODULES
+# @DESCRIPTION:
+# Directory where packages install dynamically loaded modules.
+# May contain a @libdir@ token which will be replaced by $(get_libdir).
+EMACSMODULES=/usr/@libdir@/emacs/modules
+
 # @ECLASS-VARIABLE: EMACS
 # @DESCRIPTION:
 # Path of Emacs executable.
@@ -362,17 +368,37 @@ elisp-install() {
 	eend $? "elisp-install: doins failed" || die
 }
 
+# @FUNCTION: elisp-modules-install
+# @USAGE: <subdirectory> <list of files>
+# @DESCRIPTION:
+# Install dynamic modules in EMACSMODULES directory.
+
+elisp-modules-install() {
+	local subdir="$1"
+	shift
+	# Don't bother inheriting multilib.eclass for get_libdir(), but
+	# error out in old EAPIs that don't support it natively.
+	[[ ${EAPI} == [45] ]] \
+		&& die "${ECLASS}: Dynamic modules not supported in EAPI ${EAPI}"
+	ebegin "Installing dynamic modules for GNU Emacs support"
+	( # subshell to avoid pollution of calling environment
+		exeinto "${EMACSMODULES//@libdir@/$(get_libdir)}/${subdir}"
+		doexe "$@"
+	)
+	eend $? "elisp-modules-install: doins failed" || die
+}
+
 # @FUNCTION: elisp-site-file-install
 # @USAGE: <site-init file> [subdirectory]
 # @DESCRIPTION:
 # Install Emacs site-init file in SITELISP directory.  Automatically
-# inserts a standard comment header with the name of the package (unless
-# it is already present).  Tokens @SITELISP@ and @SITEETC@ are replaced
-# by the path to the package's subdirectory in SITELISP and SITEETC,
-# respectively.
+# inserts a standard comment header with the name of the package
+# (unless it is already present).  Tokens @SITELISP@, @SITEETC@, and
+# @EMACSMODULES@ are replaced by the path to the package's subdirectory
+# in SITELISP, SITEETC, and EMACSMODULES, respectively.
 
 elisp-site-file-install() {
-	local sf="${1##*/}" my_pn="${2:-${PN}}" ret
+	local sf="${1##*/}" my_pn="${2:-${PN}}" modules ret
 	local header=";;; ${PN} site-lisp configuration"
 
 	[[ ${sf} == [0-9][0-9]*-gentoo*.el ]] \
@@ -381,9 +407,13 @@ elisp-site-file-install() {
 	sf="${T}/${sf}"
 	ebegin "Installing site initialisation file for GNU Emacs"
 	[[ $1 = "${sf}" ]] || cp "$1" "${sf}"
+	[[ ${EAPI} == [45] ]] && grep -q "@EMACSMODULES@" "${sf}" \
+		&& die "${ECLASS}: Dynamic modules not supported in EAPI ${EAPI}"
+	modules=${EMACSMODULES//@libdir@/$(get_libdir)}
 	sed -i -e "1{:x;/^\$/{n;bx;};/^;.*${PN}/I!s:^:${header}\n\n:;1s:^:\n:;}" \
 		-e "s:@SITELISP@:${EPREFIX}${SITELISP}/${my_pn}:g" \
-		-e "s:@SITEETC@:${EPREFIX}${SITEETC}/${my_pn}:g;\$q" "${sf}"
+		-e "s:@SITEETC@:${EPREFIX}${SITEETC}/${my_pn}:g" \
+		-e "s:@EMACSMODULES@:${EPREFIX}${modules}/${my_pn}:g;\$q" "${sf}"
 	( # subshell to avoid pollution of calling environment
 		insinto "${SITELISP}/site-gentoo.d"
 		doins "${sf}"


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2020-09-25 17:58 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2020-09-25 17:58 UTC (permalink / raw
  To: gentoo-commits

commit:     88c36c962efd502778b33cb511e3b52da3558c49
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 25 17:57:06 2020 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Fri Sep 25 17:57:06 2020 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=88c36c96

elisp-common.eclass: Sync from gentoo repo.

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index 0bf6c01..66a3a32 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -393,9 +393,9 @@ elisp-modules-install() {
 # @DESCRIPTION:
 # Install Emacs site-init file in SITELISP directory.  Automatically
 # inserts a standard comment header with the name of the package
-# (unless it is already present).  Tokens @SITELISP@, @SITEETC@, and
-# @EMACSMODULES@ are replaced by the path to the package's subdirectory
-# in SITELISP, SITEETC, and EMACSMODULES, respectively.
+# (unless it is already present).  Tokens @SITELISP@, @SITEETC@,
+# and @EMACSMODULES@ are replaced by the path to the package's
+# subdirectory in SITELISP, SITEETC, and EMACSMODULES, respectively.
 
 elisp-site-file-install() {
 	local sf="${1##*/}" my_pn="${2:-${PN}}" modules ret
@@ -407,9 +407,12 @@ elisp-site-file-install() {
 	sf="${T}/${sf}"
 	ebegin "Installing site initialisation file for GNU Emacs"
 	[[ $1 = "${sf}" ]] || cp "$1" "${sf}"
-	[[ ${EAPI} == [45] ]] && grep -q "@EMACSMODULES@" "${sf}" \
-		&& die "${ECLASS}: Dynamic modules not supported in EAPI ${EAPI}"
-	modules=${EMACSMODULES//@libdir@/$(get_libdir)}
+	if [[ ${EAPI} == [45] ]]; then
+		grep -q "@EMACSMODULES@" "${sf}" \
+			&& die "${ECLASS}: Dynamic modules not supported in EAPI ${EAPI}"
+	else
+		modules=${EMACSMODULES//@libdir@/$(get_libdir)}
+	fi
 	sed -i -e "1{:x;/^\$/{n;bx;};/^;.*${PN}/I!s:^:${header}\n\n:;1s:^:\n:;}" \
 		-e "s:@SITELISP@:${EPREFIX}${SITELISP}/${my_pn}:g" \
 		-e "s:@SITEETC@:${EPREFIX}${SITEETC}/${my_pn}:g" \


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2021-03-22  9:00 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2021-03-22  9:00 UTC (permalink / raw
  To: gentoo-commits

commit:     876e56bc80f959238cb9e88ca9599eb80586c6de
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 22 08:59:59 2021 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Mon Mar 22 08:59:59 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=876e56bc

elisp-common.eclass: Sync from gentoo repo

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index ac5fc20..832fc19 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -234,6 +234,8 @@ elisp-emacs-version() {
 	rm -f "${T}"/emacs-version.el
 	if [[ ${ret} -ne 0 ]]; then
 		eerror "elisp-emacs-version: Failed to run ${EMACS}"
+		[[ $(realpath ${EMACS} 2>/dev/null) == */emacs* ]] \
+			|| eerror "This package needs GNU Emacs"
 		return ${ret}
 	fi
 	if [[ -z ${version} ]]; then


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2021-04-12 19:09 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2021-04-12 19:09 UTC (permalink / raw
  To: gentoo-commits

commit:     ed7745256875f460578f0ecd8adbf9724cede1ae
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Mon Apr 12 19:01:01 2021 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Mon Apr 12 19:01:01 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=ed774525

elisp-common.eclass: Add timeout to version detection

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index 832fc19..bdf97f4 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -219,7 +219,9 @@ _ELISP_EMACS_VERSION=""
 # Output version of currently active Emacs.
 
 elisp-emacs-version() {
-	local version ret
+	local version ret tmout="timeout -k 5 55"
+	# Run without timeout if the command is not available
+	${tmout} true &>/dev/null || tmout=""
 	# The following will work for at least versions 18-24.
 	echo "(princ emacs-version)" >"${T}"/emacs-version.el
 	version=$(
@@ -228,7 +230,7 @@ elisp-emacs-version() {
 		# Redirecting stdin and unsetting TERM and DISPLAY will cause
 		# most of them to exit with an error.
 		unset TERM DISPLAY
-		${EMACS} ${EMACSFLAGS} -l "${T}"/emacs-version.el </dev/null
+		${tmout} ${EMACS} ${EMACSFLAGS} -l "${T}"/emacs-version.el </dev/null
 	)
 	ret=$?
 	rm -f "${T}"/emacs-version.el


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2021-04-12 19:09 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2021-04-12 19:09 UTC (permalink / raw
  To: gentoo-commits

commit:     feff6487fa132ae9384647f34c90f1ce81a902cd
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Mon Apr 12 19:08:34 2021 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Mon Apr 12 19:08:34 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=feff6487

elisp*.eclass: Drop support for EAPI 4

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass |  7 ++++---
 eclass/elisp.eclass        | 13 ++++++-------
 2 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index bdf97f4..9de2581 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -10,6 +10,7 @@
 # Mamoru Komachi <usata@gentoo.org>
 # Christian Faulhammer <fauli@gentoo.org>
 # Ulrich Müller <ulm@gentoo.org>
+# @SUPPORTED_EAPIS: 5 6 7
 # @BLURB: Emacs-related installation utilities
 # @DESCRIPTION:
 #
@@ -165,7 +166,7 @@
 # to above calls of elisp-site-regen().
 
 case ${EAPI:-0} in
-	4|5|6) inherit eapi7-ver ;;
+	5|6) inherit eapi7-ver ;;
 	7) ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
@@ -382,7 +383,7 @@ elisp-modules-install() {
 	shift
 	# Don't bother inheriting multilib.eclass for get_libdir(), but
 	# error out in old EAPIs that don't support it natively.
-	[[ ${EAPI} == [45] ]] \
+	[[ ${EAPI} == 5 ]] \
 		&& die "${ECLASS}: Dynamic modules not supported in EAPI ${EAPI}"
 	ebegin "Installing dynamic modules for GNU Emacs support"
 	( # subshell to avoid pollution of calling environment
@@ -411,7 +412,7 @@ elisp-site-file-install() {
 	sf="${T}/${sf}"
 	ebegin "Installing site initialisation file for GNU Emacs"
 	[[ $1 = "${sf}" ]] || cp "$1" "${sf}"
-	if [[ ${EAPI} == [45] ]]; then
+	if [[ ${EAPI} == 5 ]]; then
 		grep -q "@EMACSMODULES@" "${sf}" \
 			&& die "${ECLASS}: Dynamic modules not supported in EAPI ${EAPI}"
 	else

diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index 7876928..a568a05 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -1,4 +1,4 @@
-# Copyright 2002-2020 Gentoo Authors
+# Copyright 2002-2021 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: elisp.eclass
@@ -9,7 +9,7 @@
 # Jeremy Maitin-Shepard <jbms@attbi.com>
 # Christian Faulhammer <fauli@gentoo.org>
 # Ulrich Müller <ulm@gentoo.org>
-# @SUPPORTED_EAPIS: 4 5 6 7
+# @SUPPORTED_EAPIS: 5 6 7
 # @BLURB: Eclass for Emacs Lisp packages
 # @DESCRIPTION:
 #
@@ -62,7 +62,7 @@
 
 inherit elisp-common
 case ${EAPI:-0} in
-	4|5) inherit epatch ;;
+	5) inherit epatch ;;
 	6|7) ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
@@ -72,7 +72,6 @@ EXPORT_FUNCTIONS src_{unpack,prepare,configure,compile,install} \
 
 RDEPEND=">=app-editors/emacs-${NEED_EMACS}:*"
 case ${EAPI} in
-	4) RDEPEND="${RDEPEND%:*}"; DEPEND="${RDEPEND}" ;;
 	5|6) DEPEND="${RDEPEND}" ;;
 	*) BDEPEND="${RDEPEND}" ;;
 esac
@@ -118,14 +117,14 @@ elisp_src_prepare() {
 			die "Cannot find ${patch}"
 		fi
 		case ${EAPI} in
-			4|5) epatch "${file}" ;;
+			5) epatch "${file}" ;;
 			*) eapply "${file}" ;;
 		esac
 	done
 
 	# apply PATCHES (if supported in EAPI), and any user patches
 	case ${EAPI} in
-		4|5) epatch_user ;;
+		5) epatch_user ;;
 		*) default ;;
 	esac
 
@@ -172,7 +171,7 @@ elisp_src_install() {
 	fi
 	# install documentation only when explicitly requested
 	case ${EAPI} in
-		4|5) [[ -n ${DOCS} ]] && dodoc ${DOCS} ;;
+		5) [[ -n ${DOCS} ]] && dodoc ${DOCS} ;;
 		*) [[ $(declare -p DOCS 2>/dev/null) == *=* ]] && einstalldocs ;;
 	esac
 	if declare -f readme.gentoo_create_doc >/dev/null; then


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2021-04-13  7:12 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2021-04-13  7:12 UTC (permalink / raw
  To: gentoo-commits

commit:     3cf9cb16fbaaeb45eaeb8bfb1a5fad638fbe4255
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 13 07:03:16 2021 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Tue Apr 13 07:03:16 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=3cf9cb16

elisp-common.eclass: Drop deprectated elisp-need-emacs()a

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 21 ---------------------
 1 file changed, 21 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index 9de2581..90621cb 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -277,27 +277,6 @@ elisp-check-emacs-version() {
 	fi
 }
 
-# Test if the eselected Emacs version is at least the major version
-# of GNU Emacs specified as argument.
-# Return 0 if true, 1 if false, 2 if trouble.
-# Deprecated, use elisp-check-emacs-version instead.
-
-elisp-need-emacs() {
-	local need_emacs=$1 have_emacs
-	have_emacs=$(elisp-emacs-version) || return 2
-	einfo "Emacs version: ${have_emacs}"
-	if [[ ${have_emacs} =~ XEmacs|Lucid ]]; then
-		eerror "This package needs GNU Emacs."
-		return 1
-	fi
-	if ! [[ ${have_emacs%%.*} -ge ${need_emacs%%.*} ]]; then
-		eerror "This package needs at least Emacs ${need_emacs%%.*}."
-		eerror "Use \"eselect emacs\" to select the active version."
-		return 1
-	fi
-	return 0
-}
-
 # @FUNCTION: elisp-compile
 # @USAGE: <list of elisp files>
 # @DESCRIPTION:


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2021-04-13  7:12 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2021-04-13  7:12 UTC (permalink / raw
  To: gentoo-commits

commit:     dca1e1e2c89751e3ce6031daa8f925fc1de6cbe9
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 13 07:10:40 2021 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Tue Apr 13 07:10:40 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=dca1e1e2

elisp*.eclass: Drop support for EAPI 5

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 15 +++------------
 eclass/elisp.eclass        | 22 ++++++----------------
 2 files changed, 9 insertions(+), 28 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index 90621cb..4aff50e 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -10,7 +10,7 @@
 # Mamoru Komachi <usata@gentoo.org>
 # Christian Faulhammer <fauli@gentoo.org>
 # Ulrich Müller <ulm@gentoo.org>
-# @SUPPORTED_EAPIS: 5 6 7
+# @SUPPORTED_EAPIS: 6 7
 # @BLURB: Emacs-related installation utilities
 # @DESCRIPTION:
 #
@@ -166,7 +166,7 @@
 # to above calls of elisp-site-regen().
 
 case ${EAPI:-0} in
-	5|6) inherit eapi7-ver ;;
+	6) inherit eapi7-ver ;;
 	7) ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
@@ -360,10 +360,6 @@ elisp-install() {
 elisp-modules-install() {
 	local subdir="$1"
 	shift
-	# Don't bother inheriting multilib.eclass for get_libdir(), but
-	# error out in old EAPIs that don't support it natively.
-	[[ ${EAPI} == 5 ]] \
-		&& die "${ECLASS}: Dynamic modules not supported in EAPI ${EAPI}"
 	ebegin "Installing dynamic modules for GNU Emacs support"
 	( # subshell to avoid pollution of calling environment
 		exeinto "${EMACSMODULES//@libdir@/$(get_libdir)}/${subdir}"
@@ -391,12 +387,7 @@ elisp-site-file-install() {
 	sf="${T}/${sf}"
 	ebegin "Installing site initialisation file for GNU Emacs"
 	[[ $1 = "${sf}" ]] || cp "$1" "${sf}"
-	if [[ ${EAPI} == 5 ]]; then
-		grep -q "@EMACSMODULES@" "${sf}" \
-			&& die "${ECLASS}: Dynamic modules not supported in EAPI ${EAPI}"
-	else
-		modules=${EMACSMODULES//@libdir@/$(get_libdir)}
-	fi
+	modules=${EMACSMODULES//@libdir@/$(get_libdir)}
 	sed -i -e "1{:x;/^\$/{n;bx;};/^;.*${PN}/I!s:^:${header}\n\n:;1s:^:\n:;}" \
 		-e "s:@SITELISP@:${EPREFIX}${SITELISP}/${my_pn}:g" \
 		-e "s:@SITEETC@:${EPREFIX}${SITEETC}/${my_pn}:g" \

diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index a568a05..054d5d8 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -9,7 +9,7 @@
 # Jeremy Maitin-Shepard <jbms@attbi.com>
 # Christian Faulhammer <fauli@gentoo.org>
 # Ulrich Müller <ulm@gentoo.org>
-# @SUPPORTED_EAPIS: 5 6 7
+# @SUPPORTED_EAPIS: 6 7
 # @BLURB: Eclass for Emacs Lisp packages
 # @DESCRIPTION:
 #
@@ -62,7 +62,6 @@
 
 inherit elisp-common
 case ${EAPI:-0} in
-	5) inherit epatch ;;
 	6|7) ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
@@ -72,7 +71,7 @@ EXPORT_FUNCTIONS src_{unpack,prepare,configure,compile,install} \
 
 RDEPEND=">=app-editors/emacs-${NEED_EMACS}:*"
 case ${EAPI} in
-	5|6) DEPEND="${RDEPEND}" ;;
+	6) DEPEND="${RDEPEND}" ;;
 	*) BDEPEND="${RDEPEND}" ;;
 esac
 
@@ -116,17 +115,11 @@ elisp_src_prepare() {
 		else
 			die "Cannot find ${patch}"
 		fi
-		case ${EAPI} in
-			5) epatch "${file}" ;;
-			*) eapply "${file}" ;;
-		esac
+		eapply "${file}"
 	done
 
-	# apply PATCHES (if supported in EAPI), and any user patches
-	case ${EAPI} in
-		5) epatch_user ;;
-		*) default ;;
-	esac
+	# apply PATCHES and any user patches
+	default
 
 	if [[ -n ${ELISP_REMOVE} ]]; then
 		rm ${ELISP_REMOVE} || die
@@ -170,10 +163,7 @@ elisp_src_install() {
 		doinfo ${@/%.*/.info*}
 	fi
 	# install documentation only when explicitly requested
-	case ${EAPI} in
-		5) [[ -n ${DOCS} ]] && dodoc ${DOCS} ;;
-		*) [[ $(declare -p DOCS 2>/dev/null) == *=* ]] && einstalldocs ;;
-	esac
+	[[ $(declare -p DOCS 2>/dev/null) == *=* ]] && einstalldocs
 	if declare -f readme.gentoo_create_doc >/dev/null; then
 		readme.gentoo_create_doc
 	fi


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2021-04-13  7:15 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2021-04-13  7:15 UTC (permalink / raw
  To: gentoo-commits

commit:     26afb7f2b7f4b902ec2729cc77d2cc952589eca5
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 13 07:10:40 2021 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Tue Apr 13 07:14:57 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=26afb7f2

elisp*.eclass: Drop support for EAPI 5

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 15 +++------------
 eclass/elisp.eclass        | 22 ++++++----------------
 2 files changed, 9 insertions(+), 28 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index 90621cb..4aff50e 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -10,7 +10,7 @@
 # Mamoru Komachi <usata@gentoo.org>
 # Christian Faulhammer <fauli@gentoo.org>
 # Ulrich Müller <ulm@gentoo.org>
-# @SUPPORTED_EAPIS: 5 6 7
+# @SUPPORTED_EAPIS: 6 7
 # @BLURB: Emacs-related installation utilities
 # @DESCRIPTION:
 #
@@ -166,7 +166,7 @@
 # to above calls of elisp-site-regen().
 
 case ${EAPI:-0} in
-	5|6) inherit eapi7-ver ;;
+	6) inherit eapi7-ver ;;
 	7) ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
@@ -360,10 +360,6 @@ elisp-install() {
 elisp-modules-install() {
 	local subdir="$1"
 	shift
-	# Don't bother inheriting multilib.eclass for get_libdir(), but
-	# error out in old EAPIs that don't support it natively.
-	[[ ${EAPI} == 5 ]] \
-		&& die "${ECLASS}: Dynamic modules not supported in EAPI ${EAPI}"
 	ebegin "Installing dynamic modules for GNU Emacs support"
 	( # subshell to avoid pollution of calling environment
 		exeinto "${EMACSMODULES//@libdir@/$(get_libdir)}/${subdir}"
@@ -391,12 +387,7 @@ elisp-site-file-install() {
 	sf="${T}/${sf}"
 	ebegin "Installing site initialisation file for GNU Emacs"
 	[[ $1 = "${sf}" ]] || cp "$1" "${sf}"
-	if [[ ${EAPI} == 5 ]]; then
-		grep -q "@EMACSMODULES@" "${sf}" \
-			&& die "${ECLASS}: Dynamic modules not supported in EAPI ${EAPI}"
-	else
-		modules=${EMACSMODULES//@libdir@/$(get_libdir)}
-	fi
+	modules=${EMACSMODULES//@libdir@/$(get_libdir)}
 	sed -i -e "1{:x;/^\$/{n;bx;};/^;.*${PN}/I!s:^:${header}\n\n:;1s:^:\n:;}" \
 		-e "s:@SITELISP@:${EPREFIX}${SITELISP}/${my_pn}:g" \
 		-e "s:@SITEETC@:${EPREFIX}${SITEETC}/${my_pn}:g" \

diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index a568a05..054d5d8 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -9,7 +9,7 @@
 # Jeremy Maitin-Shepard <jbms@attbi.com>
 # Christian Faulhammer <fauli@gentoo.org>
 # Ulrich Müller <ulm@gentoo.org>
-# @SUPPORTED_EAPIS: 5 6 7
+# @SUPPORTED_EAPIS: 6 7
 # @BLURB: Eclass for Emacs Lisp packages
 # @DESCRIPTION:
 #
@@ -62,7 +62,6 @@
 
 inherit elisp-common
 case ${EAPI:-0} in
-	5) inherit epatch ;;
 	6|7) ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
@@ -72,7 +71,7 @@ EXPORT_FUNCTIONS src_{unpack,prepare,configure,compile,install} \
 
 RDEPEND=">=app-editors/emacs-${NEED_EMACS}:*"
 case ${EAPI} in
-	5|6) DEPEND="${RDEPEND}" ;;
+	6) DEPEND="${RDEPEND}" ;;
 	*) BDEPEND="${RDEPEND}" ;;
 esac
 
@@ -116,17 +115,11 @@ elisp_src_prepare() {
 		else
 			die "Cannot find ${patch}"
 		fi
-		case ${EAPI} in
-			5) epatch "${file}" ;;
-			*) eapply "${file}" ;;
-		esac
+		eapply "${file}"
 	done
 
-	# apply PATCHES (if supported in EAPI), and any user patches
-	case ${EAPI} in
-		5) epatch_user ;;
-		*) default ;;
-	esac
+	# apply PATCHES and any user patches
+	default
 
 	if [[ -n ${ELISP_REMOVE} ]]; then
 		rm ${ELISP_REMOVE} || die
@@ -170,10 +163,7 @@ elisp_src_install() {
 		doinfo ${@/%.*/.info*}
 	fi
 	# install documentation only when explicitly requested
-	case ${EAPI} in
-		5) [[ -n ${DOCS} ]] && dodoc ${DOCS} ;;
-		*) [[ $(declare -p DOCS 2>/dev/null) == *=* ]] && einstalldocs ;;
-	esac
+	[[ $(declare -p DOCS 2>/dev/null) == *=* ]] && einstalldocs
 	if declare -f readme.gentoo_create_doc >/dev/null; then
 		readme.gentoo_create_doc
 	fi


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2021-04-13  7:15 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2021-04-13  7:15 UTC (permalink / raw
  To: gentoo-commits

commit:     7c57c1893e9f1a16ad09459f3941b86374539340
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 13 07:03:16 2021 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Tue Apr 13 07:14:54 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=7c57c189

elisp-common.eclass: Drop deprectated elisp-need-emacs()

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 21 ---------------------
 1 file changed, 21 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index 9de2581..90621cb 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -277,27 +277,6 @@ elisp-check-emacs-version() {
 	fi
 }
 
-# Test if the eselected Emacs version is at least the major version
-# of GNU Emacs specified as argument.
-# Return 0 if true, 1 if false, 2 if trouble.
-# Deprecated, use elisp-check-emacs-version instead.
-
-elisp-need-emacs() {
-	local need_emacs=$1 have_emacs
-	have_emacs=$(elisp-emacs-version) || return 2
-	einfo "Emacs version: ${have_emacs}"
-	if [[ ${have_emacs} =~ XEmacs|Lucid ]]; then
-		eerror "This package needs GNU Emacs."
-		return 1
-	fi
-	if ! [[ ${have_emacs%%.*} -ge ${need_emacs%%.*} ]]; then
-		eerror "This package needs at least Emacs ${need_emacs%%.*}."
-		eerror "Use \"eselect emacs\" to select the active version."
-		return 1
-	fi
-	return 0
-}
-
 # @FUNCTION: elisp-compile
 # @USAGE: <list of elisp files>
 # @DESCRIPTION:


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2021-04-13  7:27 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2021-04-13  7:27 UTC (permalink / raw
  To: gentoo-commits

commit:     7ebb01991cdd8dcca5b76c1e3d18c9a683eddb64
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 13 07:10:40 2021 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Tue Apr 13 07:27:51 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=7ebb0199

elisp*.eclass: Drop support for EAPI 5

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 15 +++------------
 eclass/elisp.eclass        | 23 +++++++----------------
 2 files changed, 10 insertions(+), 28 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index 90621cb..4aff50e 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -10,7 +10,7 @@
 # Mamoru Komachi <usata@gentoo.org>
 # Christian Faulhammer <fauli@gentoo.org>
 # Ulrich Müller <ulm@gentoo.org>
-# @SUPPORTED_EAPIS: 5 6 7
+# @SUPPORTED_EAPIS: 6 7
 # @BLURB: Emacs-related installation utilities
 # @DESCRIPTION:
 #
@@ -166,7 +166,7 @@
 # to above calls of elisp-site-regen().
 
 case ${EAPI:-0} in
-	5|6) inherit eapi7-ver ;;
+	6) inherit eapi7-ver ;;
 	7) ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
@@ -360,10 +360,6 @@ elisp-install() {
 elisp-modules-install() {
 	local subdir="$1"
 	shift
-	# Don't bother inheriting multilib.eclass for get_libdir(), but
-	# error out in old EAPIs that don't support it natively.
-	[[ ${EAPI} == 5 ]] \
-		&& die "${ECLASS}: Dynamic modules not supported in EAPI ${EAPI}"
 	ebegin "Installing dynamic modules for GNU Emacs support"
 	( # subshell to avoid pollution of calling environment
 		exeinto "${EMACSMODULES//@libdir@/$(get_libdir)}/${subdir}"
@@ -391,12 +387,7 @@ elisp-site-file-install() {
 	sf="${T}/${sf}"
 	ebegin "Installing site initialisation file for GNU Emacs"
 	[[ $1 = "${sf}" ]] || cp "$1" "${sf}"
-	if [[ ${EAPI} == 5 ]]; then
-		grep -q "@EMACSMODULES@" "${sf}" \
-			&& die "${ECLASS}: Dynamic modules not supported in EAPI ${EAPI}"
-	else
-		modules=${EMACSMODULES//@libdir@/$(get_libdir)}
-	fi
+	modules=${EMACSMODULES//@libdir@/$(get_libdir)}
 	sed -i -e "1{:x;/^\$/{n;bx;};/^;.*${PN}/I!s:^:${header}\n\n:;1s:^:\n:;}" \
 		-e "s:@SITELISP@:${EPREFIX}${SITELISP}/${my_pn}:g" \
 		-e "s:@SITEETC@:${EPREFIX}${SITEETC}/${my_pn}:g" \

diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index a568a05..7bdcf38 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -9,7 +9,7 @@
 # Jeremy Maitin-Shepard <jbms@attbi.com>
 # Christian Faulhammer <fauli@gentoo.org>
 # Ulrich Müller <ulm@gentoo.org>
-# @SUPPORTED_EAPIS: 5 6 7
+# @SUPPORTED_EAPIS: 6 7
 # @BLURB: Eclass for Emacs Lisp packages
 # @DESCRIPTION:
 #
@@ -61,8 +61,8 @@
 # will be generated in src_compile() and installed in src_install().
 
 inherit elisp-common
+
 case ${EAPI:-0} in
-	5) inherit epatch ;;
 	6|7) ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
@@ -72,7 +72,7 @@ EXPORT_FUNCTIONS src_{unpack,prepare,configure,compile,install} \
 
 RDEPEND=">=app-editors/emacs-${NEED_EMACS}:*"
 case ${EAPI} in
-	5|6) DEPEND="${RDEPEND}" ;;
+	6) DEPEND="${RDEPEND}" ;;
 	*) BDEPEND="${RDEPEND}" ;;
 esac
 
@@ -116,17 +116,11 @@ elisp_src_prepare() {
 		else
 			die "Cannot find ${patch}"
 		fi
-		case ${EAPI} in
-			5) epatch "${file}" ;;
-			*) eapply "${file}" ;;
-		esac
+		eapply "${file}"
 	done
 
-	# apply PATCHES (if supported in EAPI), and any user patches
-	case ${EAPI} in
-		5) epatch_user ;;
-		*) default ;;
-	esac
+	# apply PATCHES and any user patches
+	default
 
 	if [[ -n ${ELISP_REMOVE} ]]; then
 		rm ${ELISP_REMOVE} || die
@@ -170,10 +164,7 @@ elisp_src_install() {
 		doinfo ${@/%.*/.info*}
 	fi
 	# install documentation only when explicitly requested
-	case ${EAPI} in
-		5) [[ -n ${DOCS} ]] && dodoc ${DOCS} ;;
-		*) [[ $(declare -p DOCS 2>/dev/null) == *=* ]] && einstalldocs ;;
-	esac
+	[[ $(declare -p DOCS 2>/dev/null) == *=* ]] && einstalldocs
 	if declare -f readme.gentoo_create_doc >/dev/null; then
 		readme.gentoo_create_doc
 	fi


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2021-04-13  7:43 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2021-04-13  7:43 UTC (permalink / raw
  To: gentoo-commits

commit:     77d3618f1e303764a883e936ec404abb95305e34
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 13 07:42:53 2021 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Tue Apr 13 07:42:53 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=77d3618f

elisp.eclass: Sync from Gentoo repository

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp.eclass | 1 +
 1 file changed, 1 insertion(+)

diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index 7bdcf38..c4a1b52 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -27,6 +27,7 @@
 # ${PN}.el in src_unpack().
 
 # @ECLASS-VARIABLE: NEED_EMACS
+# @PRE_INHERIT
 # @DEFAULT_UNSET
 # @DESCRIPTION:
 # If you need anything different from Emacs 23, use the NEED_EMACS


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2021-04-20 18:13 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2021-04-20 18:13 UTC (permalink / raw
  To: gentoo-commits

commit:     2d849335502f87557049d486c1171a9e6e6bb045
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 20 18:13:40 2021 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Tue Apr 20 18:13:40 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=2d849335

elisp*.eclass: Sync from Gentoo repository

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 6 +++---
 eclass/elisp.eclass        | 2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index 4aff50e..30dad3b 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -386,7 +386,7 @@ elisp-site-file-install() {
 	[[ ${sf%-gentoo*.el} != "${sf}" ]] && sf="${sf%-gentoo*.el}-gentoo.el"
 	sf="${T}/${sf}"
 	ebegin "Installing site initialisation file for GNU Emacs"
-	[[ $1 = "${sf}" ]] || cp "$1" "${sf}"
+	[[ $1 == "${sf}" ]] || cp "$1" "${sf}"
 	modules=${EMACSMODULES//@libdir@/$(get_libdir)}
 	sed -i -e "1{:x;/^\$/{n;bx;};/^;.*${PN}/I!s:^:${header}\n\n:;1s:^:\n:;}" \
 		-e "s:@SITELISP@:${EPREFIX}${SITELISP}/${my_pn}:g" \
@@ -412,7 +412,7 @@ elisp-site-regen() {
 	local sf i ret=0 null="" page=$'\f'
 	local -a sflist
 
-	if [[ ${EBUILD_PHASE} = *rm && ! -e ${sitelisp}/site-gentoo.el ]]; then
+	if [[ ${EBUILD_PHASE} == *rm && ! -e ${sitelisp}/site-gentoo.el ]]; then
 		ewarn "Refusing to create site-gentoo.el in ${EBUILD_PHASE} phase."
 		return 0
 	fi
@@ -467,7 +467,7 @@ elisp-site-regen() {
 		mv "${T}"/site-gentoo.el "${sitelisp}"/site-gentoo.el
 		eend $? "elisp-site-regen: Replacing site-gentoo.el failed" || die
 		case ${#sflist[@]} in
-			0) [[ ${PN} = emacs-common ]] \
+			0) [[ ${PN} == emacs-common ]] \
 				|| ewarn "... Huh? No site initialisation files found." ;;
 			1) einfo "... ${#sflist[@]} site initialisation file included." ;;
 			*) einfo "... ${#sflist[@]} site initialisation files included." ;;

diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index c4a1b52..d763a49 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -40,7 +40,7 @@
 # Space separated list of patches to apply after unpacking the sources.
 # Patch files are searched for in the current working dir, WORKDIR, and
 # FILESDIR.  This variable is semi-deprecated, preferably use the
-# PATCHES array instead if the EAPI supports it.
+# PATCHES array instead.
 
 # @ECLASS-VARIABLE: ELISP_REMOVE
 # @DEFAULT_UNSET


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2021-07-28  7:53 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2021-07-28  7:53 UTC (permalink / raw
  To: gentoo-commits

commit:     008b451753b8ec665e55e808d88885c51a99c6f6
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 28 07:53:01 2021 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Wed Jul 28 07:53:01 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=008b4517

elisp*.eclass: EAPI 8

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 4 ++--
 eclass/elisp.eclass        | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index 30dad3b..b2c4f10 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -10,7 +10,7 @@
 # Mamoru Komachi <usata@gentoo.org>
 # Christian Faulhammer <fauli@gentoo.org>
 # Ulrich Müller <ulm@gentoo.org>
-# @SUPPORTED_EAPIS: 6 7
+# @SUPPORTED_EAPIS: 6 7 8
 # @BLURB: Emacs-related installation utilities
 # @DESCRIPTION:
 #
@@ -167,7 +167,7 @@
 
 case ${EAPI:-0} in
 	6) inherit eapi7-ver ;;
-	7) ;;
+	7|8) ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 

diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index d763a49..c3c0045 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -9,7 +9,7 @@
 # Jeremy Maitin-Shepard <jbms@attbi.com>
 # Christian Faulhammer <fauli@gentoo.org>
 # Ulrich Müller <ulm@gentoo.org>
-# @SUPPORTED_EAPIS: 6 7
+# @SUPPORTED_EAPIS: 6 7 8
 # @BLURB: Eclass for Emacs Lisp packages
 # @DESCRIPTION:
 #
@@ -64,7 +64,7 @@
 inherit elisp-common
 
 case ${EAPI:-0} in
-	6|7) ;;
+	6|7|8) ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2022-03-24  6:44 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2022-03-24  6:44 UTC (permalink / raw
  To: gentoo-commits

commit:     2588a1fdb15b806daf793ad02121de05bbe2386d
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Thu Mar 24 06:44:40 2022 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Thu Mar 24 06:44:40 2022 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=2588a1fd

elisp*.eclass: Sync from Gentoo repository

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 16 ++++++++--------
 eclass/elisp.eclass        | 11 ++++++-----
 2 files changed, 14 insertions(+), 13 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index b2c4f10..a821e4a 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -171,44 +171,44 @@ case ${EAPI:-0} in
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-# @ECLASS-VARIABLE: SITELISP
+# @ECLASS_VARIABLE: SITELISP
 # @DESCRIPTION:
 # Directory where packages install Emacs Lisp files.
 SITELISP=/usr/share/emacs/site-lisp
 
-# @ECLASS-VARIABLE: SITEETC
+# @ECLASS_VARIABLE: SITEETC
 # @DESCRIPTION:
 # Directory where packages install miscellaneous (not Lisp) files.
 SITEETC=/usr/share/emacs/etc
 
-# @ECLASS-VARIABLE: EMACSMODULES
+# @ECLASS_VARIABLE: EMACSMODULES
 # @DESCRIPTION:
 # Directory where packages install dynamically loaded modules.
 # May contain a @libdir@ token which will be replaced by $(get_libdir).
 EMACSMODULES=/usr/@libdir@/emacs/modules
 
-# @ECLASS-VARIABLE: EMACS
+# @ECLASS_VARIABLE: EMACS
 # @DESCRIPTION:
 # Path of Emacs executable.
 EMACS=${EPREFIX}/usr/bin/emacs
 
-# @ECLASS-VARIABLE: EMACSFLAGS
+# @ECLASS_VARIABLE: EMACSFLAGS
 # @DESCRIPTION:
 # Flags for executing Emacs in batch mode.
 # These work for Emacs versions 18-24, so don't change them.
 EMACSFLAGS="-batch -q --no-site-file"
 
-# @ECLASS-VARIABLE: BYTECOMPFLAGS
+# @ECLASS_VARIABLE: BYTECOMPFLAGS
 # @DESCRIPTION:
 # Emacs flags used for byte-compilation in elisp-compile().
 BYTECOMPFLAGS="-L ."
 
-# @ECLASS-VARIABLE: NEED_EMACS
+# @ECLASS_VARIABLE: NEED_EMACS
 # @DESCRIPTION:
 # The minimum Emacs version required for the package.
 : ${NEED_EMACS:=23.1}
 
-# @ECLASS-VARIABLE: _ELISP_EMACS_VERSION
+# @ECLASS_VARIABLE: _ELISP_EMACS_VERSION
 # @INTERNAL
 # @DESCRIPTION:
 # Cached value of Emacs version detected in elisp-check-emacs-version().

diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index c3c0045..2fea311 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -10,6 +10,7 @@
 # Christian Faulhammer <fauli@gentoo.org>
 # Ulrich Müller <ulm@gentoo.org>
 # @SUPPORTED_EAPIS: 6 7 8
+# @PROVIDES: elisp-common
 # @BLURB: Eclass for Emacs Lisp packages
 # @DESCRIPTION:
 #
@@ -26,7 +27,7 @@
 # file with the file name ${P}.el, then this eclass will move ${P}.el to
 # ${PN}.el in src_unpack().
 
-# @ECLASS-VARIABLE: NEED_EMACS
+# @ECLASS_VARIABLE: NEED_EMACS
 # @PRE_INHERIT
 # @DEFAULT_UNSET
 # @DESCRIPTION:
@@ -34,7 +35,7 @@
 # variable before inheriting elisp.eclass.  Set it to the version your
 # package uses and the dependency will be adjusted.
 
-# @ECLASS-VARIABLE: ELISP_PATCHES
+# @ECLASS_VARIABLE: ELISP_PATCHES
 # @DEFAULT_UNSET
 # @DESCRIPTION:
 # Space separated list of patches to apply after unpacking the sources.
@@ -42,12 +43,12 @@
 # FILESDIR.  This variable is semi-deprecated, preferably use the
 # PATCHES array instead.
 
-# @ECLASS-VARIABLE: ELISP_REMOVE
+# @ECLASS_VARIABLE: ELISP_REMOVE
 # @DEFAULT_UNSET
 # @DESCRIPTION:
 # Space separated list of files to remove after unpacking the sources.
 
-# @ECLASS-VARIABLE: SITEFILE
+# @ECLASS_VARIABLE: SITEFILE
 # @DEFAULT_UNSET
 # @DESCRIPTION:
 # Name of package's site-init file.  The filename must match the shell
@@ -55,7 +56,7 @@
 # reserved for internal use.  "50${PN}-gentoo.el" is a reasonable choice
 # in most cases.
 
-# @ECLASS-VARIABLE: ELISP_TEXINFO
+# @ECLASS_VARIABLE: ELISP_TEXINFO
 # @DEFAULT_UNSET
 # @DESCRIPTION:
 # Space separated list of Texinfo sources.  Respective GNU Info files


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2022-04-03 18:02 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2022-04-03 18:02 UTC (permalink / raw
  To: gentoo-commits

commit:     2aeffb609341215e89690d22065f5ea2aeaa11e0
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sun Apr  3 18:02:03 2022 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sun Apr  3 18:02:03 2022 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=2aeffb60

elisp.eclass: Update EAPI conditional

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index 2fea311..6b6679d 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -1,4 +1,4 @@
-# Copyright 2002-2021 Gentoo Authors
+# Copyright 2002-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: elisp.eclass
@@ -64,7 +64,7 @@
 
 inherit elisp-common
 
-case ${EAPI:-0} in
+case ${EAPI} in
 	6|7|8) ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2022-04-03 18:29 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2022-04-03 18:29 UTC (permalink / raw
  To: gentoo-commits

commit:     23882c38da799bf52eea49586d4147c40f55903a
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sun Apr  3 18:28:51 2022 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sun Apr  3 18:28:51 2022 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=23882c38

elisp-common.eclass: Update EAPI conditional

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index a821e4a..47c8132 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: elisp-common.eclass
@@ -165,7 +165,7 @@
 # Again, with optional Emacs support, you should prepend "use emacs &&"
 # to above calls of elisp-site-regen().
 
-case ${EAPI:-0} in
+case ${EAPI} in
 	6) inherit eapi7-ver ;;
 	7|8) ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2022-10-20  8:05 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2022-10-20  8:05 UTC (permalink / raw
  To: gentoo-commits

commit:     f567f94fe7f413b9d8d20aca3c48fb1d84a23985
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 18 19:18:20 2022 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Thu Oct 20 08:05:03 2022 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=f567f94f

elisp-common.eclass: fix for Emacs 29 (explicitly require autoload)

Emacs 29's NEWS says: "The autoload.el library is now obsolete."

We should therefore explicitly 'require it in order to have the
eclass machinery work.

Fix build failures with e.g. exec-path-from-shell, flycheck:
```
 * Generating autoload file for GNU Emacs ...

Error: void-function (batch-update-autoloads)
  debug-early-backtrace()
  debug-early(error (void-function batch-update-autoloads))
  batch-update-autoloads()
  command-line-1(("--eval" "(setq make-backup-files nil)" "--eval" "(setq generated-autoload-file (expand-file-name \"exec-path-from-shell-autoloads.el\"))" "-f" "batch-update-autoloads" "."))
  command-line()
  normal-top-level()
Symbol’s function definition is void: batch-update-autoloads
 * elisp-make-autoload-file: batch-update-autoloads failed
 [ !! ]
 * ERROR: app-emacs/exec-path-from-shell-1.12::gentoo failed (compile phase):
 *   (no error message)
```

See https://www.mail-archive.com/freebsd-pkg-fallout <AT> freebsd.org/msg1982134.html
and https://lists.gnu.org/archive/html/bug-gnu-emacs/2022-08/msg01259.html.

Thanks-to: John Turner <jturner.usa+gentoo <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>
Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 1 +
 1 file changed, 1 insertion(+)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index 47c8132..2715c26 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -329,6 +329,7 @@ elisp-make-autoload-file() {
 	EOF
 
 	${EMACS} ${EMACSFLAGS} \
+		--eval "(require 'autoload)" \
 		--eval "(setq make-backup-files nil)" \
 		--eval "(setq generated-autoload-file (expand-file-name \"${f}\"))" \
 		-f batch-update-autoloads "${@-.}"


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2022-10-20  8:05 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2022-10-20  8:05 UTC (permalink / raw
  To: gentoo-commits

commit:     e1dcb02f09ff0b52a783e67bc4aa868c246c4ba4
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 20 07:53:11 2022 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Thu Oct 20 08:05:04 2022 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=e1dcb02f

elisp.eclass: Drop EAPI 6 support

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp.eclass | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index 6b6679d..7c05948 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -9,7 +9,7 @@
 # Jeremy Maitin-Shepard <jbms@attbi.com>
 # Christian Faulhammer <fauli@gentoo.org>
 # Ulrich Müller <ulm@gentoo.org>
-# @SUPPORTED_EAPIS: 6 7 8
+# @SUPPORTED_EAPIS: 7 8
 # @PROVIDES: elisp-common
 # @BLURB: Eclass for Emacs Lisp packages
 # @DESCRIPTION:
@@ -65,7 +65,7 @@
 inherit elisp-common
 
 case ${EAPI} in
-	6|7|8) ;;
+	7|8) ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
@@ -73,10 +73,7 @@ EXPORT_FUNCTIONS src_{unpack,prepare,configure,compile,install} \
 	pkg_{setup,postinst,postrm}
 
 RDEPEND=">=app-editors/emacs-${NEED_EMACS}:*"
-case ${EAPI} in
-	6) DEPEND="${RDEPEND}" ;;
-	*) BDEPEND="${RDEPEND}" ;;
-esac
+BDEPEND="${RDEPEND}"
 
 # @FUNCTION: elisp_pkg_setup
 # @DESCRIPTION:


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2023-10-20 12:18 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2023-10-20 12:18 UTC (permalink / raw
  To: gentoo-commits

commit:     7b3b0bc2aca2aa4c2980ac34e13486cec8a3981f
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Fri Oct 20 12:18:10 2023 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Fri Oct 20 12:18:10 2023 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=7b3b0bc2

elisp*.eclass: Sync from Gentoo repository

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 291 +++++++++++++++++++++++++++++++++++++++++++--
 eclass/elisp.eclass        |  36 ++++--
 2 files changed, 311 insertions(+), 16 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index 2715c26..72dbb97 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: elisp-common.eclass
@@ -10,7 +10,8 @@
 # Mamoru Komachi <usata@gentoo.org>
 # Christian Faulhammer <fauli@gentoo.org>
 # Ulrich Müller <ulm@gentoo.org>
-# @SUPPORTED_EAPIS: 6 7 8
+# Maciej Barć <xgqt@gentoo.org>
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: Emacs-related installation utilities
 # @DESCRIPTION:
 #
@@ -24,7 +25,7 @@
 # When relying on the emacs USE flag, you need to add
 #
 # @CODE
-# 	emacs? ( >=app-editors/emacs-23.1:* )
+# 	emacs? ( >=app-editors/emacs-25.3:* )
 # @CODE
 #
 # to your DEPEND/RDEPEND line and use the functions provided here to
@@ -131,6 +132,17 @@
 # "50${PN}-gentoo.el".  If your subdirectory is not named ${PN}, give
 # the differing name as second argument.
 #
+# For the simple case that only the package's subdirectory needs to be
+# added to the load-path, function elisp-make-site-file() will create
+# and install a site-init file that does just that:
+#
+# @CODE
+# 	elisp-make-site-file "${SITEFILE}"
+# @CODE
+#
+# Again, this must be called in src_install().  See the function's
+# documentation for more details on its usage.
+#
 # @SUBSECTION pkg_setup() usage:
 #
 # If your ebuild uses the elisp-compile eclass function to compile
@@ -166,7 +178,6 @@
 # to above calls of elisp-site-regen().
 
 case ${EAPI} in
-	6) inherit eapi7-ver ;;
 	7|8) ;;
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
@@ -206,7 +217,7 @@ BYTECOMPFLAGS="-L ."
 # @ECLASS_VARIABLE: NEED_EMACS
 # @DESCRIPTION:
 # The minimum Emacs version required for the package.
-: ${NEED_EMACS:=23.1}
+: "${NEED_EMACS:=25.3}"
 
 # @ECLASS_VARIABLE: _ELISP_EMACS_VERSION
 # @INTERNAL
@@ -337,6 +348,242 @@ elisp-make-autoload-file() {
 	eend $? "elisp-make-autoload-file: batch-update-autoloads failed" || die
 }
 
+# @FUNCTION: elisp-org-export-to
+# @USAGE: <export file type> <Org file path>
+# @DESCRIPTION:
+# Use Emacs Org "export-to" functions to convert a given Org file to a
+# picked format.
+#
+# Example:
+# @CODE
+# 	elisp-org-export-to texinfo README.org
+# 	mv README.texi ${PN}.texi || die
+# @CODE
+
+elisp-org-export-to() {
+	local export_format="${1}"
+	local org_file_path="${2}"
+
+	local export_group
+	case ${export_format} in
+		info) export_group=texinfo ;;  # Straight to ".info".
+		markdown) export_group=md ;;
+		pdf) export_group=latex ;;
+		*) export_group=${export_format} ;;
+	esac
+
+	# export_format = texinfo    =>  org-texinfo-export-to-texinfo
+	# export_format = pdf        =>  org-latex-export-to-pdf
+
+	local export_function=org-${export_group}-export-to-${export_format}
+
+	${EMACS} ${EMACSFLAGS} "${org_file_path}" -f "${export_function}" \
+		|| die "Org export to ${export_format} failed"
+}
+
+# @FUNCTION: elisp-test-buttercup
+# @USAGE: [test-subdirectory] [test-runner-opts] ...
+# @DESCRIPTION:
+# Run ELisp package tests using the "buttercup" test runner.
+#
+# The option "test-subdirectory" may be given any number of times,
+# it should be given as though it was passed to Emacs or the test tool,
+# not as a string.
+#
+# The options "test-subdirectory" and "test-runner-opts" are optional,
+# but if "test-runner-opts" needs to be provided also "test-subdirectory"
+# has to be specified.
+
+elisp-test-buttercup() {
+	debug-print-function ${FUNCNAME} "$@"
+
+	local test_dir="${1:-$(pwd)}"
+	shift
+
+	local -a myopts=(
+		${BYTECOMPFLAGS}
+		-L "${test_dir}"
+		--traceback full
+		"$@"
+	)
+	ebegin "Running buttercup tests"
+	buttercup "${myopts[@]}" "${test_dir}"
+	eend $? "${FUNCNAME}: tests failed" || die
+}
+
+# @FUNCTION: elisp-test-ert-runner
+# @USAGE: [test-subdirectory] [test-runner-opts] ...
+# @DESCRIPTION:
+# Run ELisp package tests using the "ert-runner" test runner.
+#
+# The option "test-subdirectory" may be given any number of times,
+# it should be given as though it was passed to Emacs or the test tool,
+# not as a string.
+#
+# The options "test-subdirectory" and "test-runner-opts" are optional,
+# but if "test-runner-opts" needs to be provided also "test-subdirectory"
+# has to be specified.
+
+elisp-test-ert-runner() {
+	debug-print-function ${FUNCNAME} "$@"
+
+	local test_dir="${1:-$(pwd)}"
+	shift
+
+	local -a myopts=(
+		${BYTECOMPFLAGS}
+		--reporter ert+duration
+		--script
+		-L "${test_dir}"
+		"$@"
+	)
+	ebegin "Running ert-runner tests"
+	ert-runner "${myopts[@]}" "${test_dir}"
+	eend $? "${FUNCNAME}: tests failed" || die
+}
+
+# @FUNCTION: elisp-test-ert
+# @USAGE: [test-subdirectory] [test-runner-opts] ...
+# @DESCRIPTION:
+# Run ELisp package tests using "ert", the Emacs's built-in test runner.
+#
+# The option "test-subdirectory" may be given any number of times,
+# it should be given as though it was passed to Emacs or the test tool,
+# not as a string.
+#
+# The options "test-subdirectory" and "test-runner-opts" are optional,
+# but if "test-runner-opts" needs to be provided also "test-subdirectory"
+# has to be specified.
+
+elisp-test-ert() {
+	debug-print-function ${FUNCNAME} "$@"
+
+	local test_dir="${1:-$(pwd)}"
+	shift
+
+	local -a extra_load=()
+	local extra_load_file
+	for extra_load_file in "${test_dir}"/?*-test.el; do
+		if [[ -f "${extra_load_file}" ]]; then
+			extra_load+=( -l "${extra_load_file}" )
+		fi
+	done
+
+	local -a myopts=(
+		${EMACSFLAGS}
+		${BYTECOMPFLAGS}
+		-L "${test_dir}"
+		"${extra_load[@]}"
+		"$@"
+		-f ert-run-tests-batch-and-exit
+	)
+	ebegin "Running ert tests"
+	${EMACS} "${myopts[@]}"
+	eend $? "${FUNCNAME}: tests failed" || die
+}
+
+# @FUNCTION: elisp-enable-tests
+# @USAGE: [--optional] <test-runner> [test-runner-options] ...
+# @DESCRIPTION:
+# Set up IUSE, RESTRICT, BDEPEND and test runner function for running
+# tests with the specified test runner.
+#
+# The test-runner argument must be one of:
+#
+# - buttercup: for "buttercup" provided via "app-emacs/buttercup"
+#
+# - ert-runner: for "ert-runner" provided via "app-emacs/ert-runner"
+#
+# - ert: for built-in GNU Emacs test utility
+#
+# If the "--optional" flag is passed (before specifying the test
+# runner), then it is assumed that the ELisp package is a part of some
+# some project that optionally enables GNU Emacs support.  This will
+# correctly set up the test and Emacs dependencies.
+#
+# Notice that the first option passed to the "test-runner" is the
+# directory and the rest are miscellaneous options applicable to that
+# given runner.
+#
+# This function has to be called post inherit, specifically after
+# "IUSE", "RESTRICT" and "BDEPEND" variables are assigned.
+# It is advised to place this call right before (re)defining a given
+# ebuild's phases.
+#
+# Example:
+# @CODE
+# 	inherit elisp-common
+#
+# 	...
+#
+# 	elisp-enable-tests --optional ert-runner "${S}"/elisp -t "!org"
+#
+# 	src_test() {
+# 		emake -C tests test
+# 		elisp-test
+# 	}
+# @CODE
+
+elisp-enable-tests() {
+	debug-print-function ${FUNCNAME} "$@"
+
+	local optional
+	if [[ ${1} = "--optional" ]] ; then
+		optional=YES
+		shift
+	fi
+
+	local test_pkg
+	local test_runner=${1}
+	shift
+
+	_ELISP_TEST_OPTS=( "$@" )
+
+	case ${test_runner} in
+		buttercup )
+			test_pkg="app-emacs/buttercup"
+			_ELISP_TEST_FUNCTION=elisp-test-buttercup
+			;;
+		ert-runner )
+			test_pkg="app-emacs/ert-runner"
+			_ELISP_TEST_FUNCTION=elisp-test-ert-runner
+			;;
+		ert )
+			_ELISP_TEST_FUNCTION=elisp-test-ert
+			;;
+		* )
+			die "${FUNCNAME}: unknown test runner, given ${test_runner}"
+			;;
+	esac
+
+	if [[ ${test_pkg} ]]; then
+		IUSE+=" test "
+		RESTRICT+=" !test? ( test ) "
+		if [[ ${optional} ]]; then
+			IUSE+=" emacs "
+			BDEPEND+=" test? ( emacs? ( ${test_pkg} ) ) "
+		else
+			BDEPEND+=" test? ( ${test_pkg} ) "
+		fi
+	fi
+
+	return 0
+}
+
+# @FUNCTION: elisp-test
+# @DESCRIPTION:
+# Test the package using a ELisp test runner.
+#
+# If called without executing "elisp-enable-tests" beforehand, then
+# does nothing, otherwise a test runner is called with given
+# "test-runner-options".
+
+elisp-test() {
+	if [[ ${_ELISP_TEST_FUNCTION} ]]; then
+		${_ELISP_TEST_FUNCTION} "${_ELISP_TEST_OPTS[@]}"
+	fi
+}
+
 # @FUNCTION: elisp-install
 # @USAGE: <subdirectory> <list of files>
 # @DESCRIPTION:
@@ -380,7 +627,13 @@ elisp-modules-install() {
 
 elisp-site-file-install() {
 	local sf="${1##*/}" my_pn="${2:-${PN}}" modules ret
-	local header=";;; ${PN} site-lisp configuration"
+	local add_header="1 {
+		# Find first non-empty line
+		:x; /^\$/ { n; bx; }
+		# Insert a header, unless we already look at one
+		/^;.*${PN}/I! s/^/;;; ${PN} site-lisp configuration\n\n/
+		1 s/^/\n/
+	}"
 
 	[[ ${sf} == [0-9][0-9]*-gentoo*.el ]] \
 		|| ewarn "elisp-site-file-install: bad name of site-init file"
@@ -389,7 +642,7 @@ elisp-site-file-install() {
 	ebegin "Installing site initialisation file for GNU Emacs"
 	[[ $1 == "${sf}" ]] || cp "$1" "${sf}"
 	modules=${EMACSMODULES//@libdir@/$(get_libdir)}
-	sed -i -e "1{:x;/^\$/{n;bx;};/^;.*${PN}/I!s:^:${header}\n\n:;1s:^:\n:;}" \
+	sed -i -e "${add_header}" \
 		-e "s:@SITELISP@:${EPREFIX}${SITELISP}/${my_pn}:g" \
 		-e "s:@SITEETC@:${EPREFIX}${SITEETC}/${my_pn}:g" \
 		-e "s:@EMACSMODULES@:${EPREFIX}${modules}/${my_pn}:g;\$q" "${sf}"
@@ -402,6 +655,30 @@ elisp-site-file-install() {
 	eend ${ret} "elisp-site-file-install: doins failed" || die
 }
 
+# @FUNCTION: elisp-make-site-file
+# @USAGE: <filename> [subdirectory] [line]...
+# @DESCRIPTION:
+# Create and install a site-init file for the package.  By default,
+# this will add the package's SITELISP subdirectory to Emacs' load-path:
+#
+# @CODE
+# 	(add-to-list 'load-path "@SITELISP@")
+# @CODE
+#
+# Additional arguments are appended as lines to the destination file.
+# Any @SITELISP@, @SITEETC@, and @EMACSMODULES@ tokens in these
+# arguments are replaced, as described for elisp-site-file-install.
+
+elisp-make-site-file() {
+	[[ $1 == [0-9][0-9]*-gentoo.el ]] \
+		|| die "elisp-make-site-file: bad name of site-init file"
+
+	local f="${T}/$1" my_pn="${2:-${PN}}"
+	shift; shift
+	printf "%s\n" "(add-to-list 'load-path \"@SITELISP@\")" "$@" >"${f}" || die
+	elisp-site-file-install "${f}" "${my_pn}"
+}
+
 # @FUNCTION: elisp-site-regen
 # @DESCRIPTION:
 # Regenerate the site-gentoo.el file, based on packages' site

diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index 7c05948..2013949 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -1,4 +1,4 @@
-# Copyright 2002-2022 Gentoo Authors
+# Copyright 2002-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: elisp.eclass
@@ -9,6 +9,7 @@
 # Jeremy Maitin-Shepard <jbms@attbi.com>
 # Christian Faulhammer <fauli@gentoo.org>
 # Ulrich Müller <ulm@gentoo.org>
+# Maciej Barć <xgqt@gentoo.org>
 # @SUPPORTED_EAPIS: 7 8
 # @PROVIDES: elisp-common
 # @BLURB: Eclass for Emacs Lisp packages
@@ -31,9 +32,9 @@
 # @PRE_INHERIT
 # @DEFAULT_UNSET
 # @DESCRIPTION:
-# If you need anything different from Emacs 23, use the NEED_EMACS
-# variable before inheriting elisp.eclass.  Set it to the version your
-# package uses and the dependency will be adjusted.
+# If you need anything different from Emacs 25.3 (or newer), use the
+# NEED_EMACS variable before inheriting elisp.eclass.  Set it to the
+# version your package uses and the dependency will be adjusted.
 
 # @ECLASS_VARIABLE: ELISP_PATCHES
 # @DEFAULT_UNSET
@@ -69,9 +70,6 @@ case ${EAPI} in
 	*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-EXPORT_FUNCTIONS src_{unpack,prepare,configure,compile,install} \
-	pkg_{setup,postinst,postrm}
-
 RDEPEND=">=app-editors/emacs-${NEED_EMACS}:*"
 BDEPEND="${RDEPEND}"
 
@@ -128,7 +126,7 @@ elisp_src_prepare() {
 
 # @FUNCTION: elisp_src_configure
 # @DESCRIPTION:
-# Do nothing, because Emacs packages seldomly bring a full build system.
+# Do nothing, because Emacs packages seldom bring a full build system.
 
 elisp_src_configure() { :; }
 
@@ -145,6 +143,19 @@ elisp_src_compile() {
 	fi
 }
 
+# @FUNCTION: elisp_src_test
+# @DESCRIPTION:
+# Call "elisp-test" to test the package if "elisp-enable-tests" was called
+# beforehand, otherwise execute the default test function - "src_test".
+
+elisp_src_test() {
+	if [[ ${_ELISP_TEST_FUNCTION} ]]; then
+		elisp-test
+	else
+		default_src_test
+	fi
+}
+
 # @FUNCTION: elisp_src_install
 # @DESCRIPTION:
 # Call elisp-install to install all Emacs Lisp (*.el and *.elc) files.
@@ -155,7 +166,11 @@ elisp_src_compile() {
 elisp_src_install() {
 	elisp-install ${PN} *.el *.elc
 	if [[ -n ${SITEFILE} ]]; then
-		elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+		if [[ -f "${FILESDIR}/${SITEFILE}" ]]; then
+			elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+		else
+			elisp-make-site-file "${SITEFILE}"
+		fi
 	fi
 	if [[ -n ${ELISP_TEXINFO} ]]; then
 		set -- ${ELISP_TEXINFO}
@@ -189,3 +204,6 @@ elisp_pkg_postinst() {
 elisp_pkg_postrm() {
 	elisp-site-regen
 }
+
+EXPORT_FUNCTIONS src_{unpack,prepare,configure,compile,test,install} \
+	pkg_{setup,postinst,postrm}


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2023-10-22 10:01 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2023-10-22 10:01 UTC (permalink / raw
  To: gentoo-commits

commit:     b74162669b474e7c2aaab5b5f75301d4c462c715
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sun Oct 22 09:47:46 2023 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sun Oct 22 10:00:46 2023 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=b7416266

elisp-common.eclass: Set no-native-compile in generated files

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index 72dbb97..bab7250 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -333,6 +333,7 @@ elisp-make-autoload-file() {
 	;; Local ${null}Variables:
 	;; version-control: never
 	;; no-byte-compile: t
+	;; no-native-compile: t
 	;; no-update-autoloads: t
 	;; End:
 
@@ -725,6 +726,7 @@ elisp-site-regen() {
 
 	;; Local ${null}Variables:
 	;; no-byte-compile: t
+	;; no-native-compile: t
 	;; buffer-read-only: t
 	;; End:
 


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2024-09-02 15:18 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2024-09-02 15:18 UTC (permalink / raw
  To: gentoo-commits

commit:     5acbe1fd2c8aa7de0b0d06fcfdad98240deab4a6
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Mon Sep  2 15:17:03 2024 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Mon Sep  2 15:17:03 2024 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=5acbe1fd

elisp-common.eclass: Sync from Gentoo repository

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 13 ++++---------
 1 file changed, 4 insertions(+), 9 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index bab7250..ad9d3c7 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: elisp-common.eclass
@@ -322,7 +322,7 @@ elisp-make-autoload-file() {
 	ebegin "Generating autoload file for GNU Emacs"
 
 	cat >"${f}" <<-EOF
-	;;; ${f##*/} --- autoloads for ${PN}
+	;;; ${f##*/} --- autoloads for ${PN}  -*-lexical-binding:t-*-
 
 	;;; Commentary:
 	;; Automatically generated by elisp-common.eclass
@@ -333,7 +333,6 @@ elisp-make-autoload-file() {
 	;; Local ${null}Variables:
 	;; version-control: never
 	;; no-byte-compile: t
-	;; no-native-compile: t
 	;; no-update-autoloads: t
 	;; End:
 
@@ -687,7 +686,7 @@ elisp-make-site-file() {
 # directory.
 
 elisp-site-regen() {
-	local sitelisp=${ROOT%/}${EPREFIX}${SITELISP}
+	local sitelisp=${EROOT}${SITELISP}
 	local sf i ret=0 null="" page=$'\f'
 	local -a sflist
 
@@ -699,9 +698,6 @@ elisp-site-regen() {
 	[[ -d ${sitelisp} ]] \
 		|| die "elisp-site-regen: Directory ${sitelisp} does not exist"
 
-	[[ -d ${T} ]] \
-		|| die "elisp-site-regen: Temporary directory ${T} does not exist"
-
 	ebegin "Regenerating site-gentoo.el for GNU Emacs (${EBUILD_PHASE})"
 
 	for sf in "${sitelisp}"/site-gentoo.d/[0-9][0-9]*.el; do
@@ -709,7 +705,7 @@ elisp-site-regen() {
 	done
 
 	cat <<-EOF >"${T}"/site-gentoo.el || ret=$?
-	;;; site-gentoo.el --- site initialisation for Gentoo-installed packages
+	;;; site-gentoo.el --- Gentoo site initialisation  -*-lexical-binding:t-*-
 
 	;;; Commentary:
 	;; Automatically generated by elisp-common.eclass
@@ -726,7 +722,6 @@ elisp-site-regen() {
 
 	;; Local ${null}Variables:
 	;; no-byte-compile: t
-	;; no-native-compile: t
 	;; buffer-read-only: t
 	;; End:
 


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2024-09-02 15:18 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2024-09-02 15:18 UTC (permalink / raw
  To: gentoo-commits

commit:     409d8a4f6b05d760aafa3cf15cd863a0304938a5
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Mon Sep  2 15:18:17 2024 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Mon Sep  2 15:18:17 2024 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=409d8a4f

elisp.eclass: Add pkg_info

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp.eclass | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index 2013949..32e4902 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -1,4 +1,4 @@
-# Copyright 2002-2023 Gentoo Authors
+# Copyright 2002-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: elisp.eclass
@@ -205,5 +205,11 @@ elisp_pkg_postrm() {
 	elisp-site-regen
 }
 
+elisp_pkg_info() {
+	if [[ -n ${_ELISP_EMACS_VERSION} ]]; then
+		echo "Built with Emacs version ${_ELISP_EMACS_VERSION}"
+	fi
+}
+
 EXPORT_FUNCTIONS src_{unpack,prepare,configure,compile,test,install} \
-	pkg_{setup,postinst,postrm}
+	pkg_{setup,postinst,postrm,info}


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2024-09-02 15:31 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2024-09-02 15:31 UTC (permalink / raw
  To: gentoo-commits

commit:     cc418c019b48522b2516a3c3f003817cd19648ba
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Mon Sep  2 15:18:17 2024 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Mon Sep  2 15:30:46 2024 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=cc418c01

elisp.eclass: Add pkg_info

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp.eclass | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index 2013949..1fa8aab 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -1,4 +1,4 @@
-# Copyright 2002-2023 Gentoo Authors
+# Copyright 2002-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: elisp.eclass
@@ -205,5 +205,11 @@ elisp_pkg_postrm() {
 	elisp-site-regen
 }
 
+elisp_pkg_info() {
+	if [[ -n ${_ELISP_EMACS_VERSION} ]]; then
+		echo "Built with Emacs version: ${_ELISP_EMACS_VERSION}"
+	fi
+}
+
 EXPORT_FUNCTIONS src_{unpack,prepare,configure,compile,test,install} \
-	pkg_{setup,postinst,postrm}
+	pkg_{setup,postinst,postrm,info}


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2024-12-16 18:46 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2024-12-16 18:46 UTC (permalink / raw
  To: gentoo-commits

commit:     a84a6e2978051e307ba125f36809f98d90e4762a
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Mon Dec 16 18:46:31 2024 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Mon Dec 16 18:46:31 2024 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=a84a6e29

elisp-common.eclass: Sync from Gentoo repository

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp-common.eclass | 55 +++++++++++++++++++++++-----------------------
 1 file changed, 27 insertions(+), 28 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index ad9d3c7..117544e 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -25,7 +25,7 @@
 # When relying on the emacs USE flag, you need to add
 #
 # @CODE
-# 	emacs? ( >=app-editors/emacs-25.3:* )
+# emacs? ( >=app-editors/emacs-25.3:* )
 # @CODE
 #
 # to your DEPEND/RDEPEND line and use the functions provided here to
@@ -39,7 +39,7 @@
 # NEED_EMACS with the Emacs version, as in the following example:
 #
 # @CODE
-# 	NEED_EMACS=26.1
+# NEED_EMACS=26.1
 # @CODE
 #
 # Please note that this should be done only for packages that are known
@@ -54,7 +54,7 @@
 # are loadable.
 #
 # @CODE
-# 	elisp-compile *.el
+# elisp-compile *.el
 # @CODE
 #
 # Function elisp-make-autoload-file() can be used to generate a file
@@ -75,7 +75,7 @@
 # (see below) the change, as it defaults to ${PN}.
 #
 # @CODE
-# 	elisp-install ${PN} *.el *.elc
+# elisp-install ${PN} *.el *.elc
 # @CODE
 #
 # To let the Emacs support be activated by Emacs on startup, you need
@@ -84,9 +84,9 @@
 # Normally this would look like this:
 #
 # @CODE
-# 	(add-to-list 'load-path "@SITELISP@")
-# 	(add-to-list 'auto-mode-alist '("\\.csv\\'" . csv-mode))
-# 	(autoload 'csv-mode "csv-mode" "Major mode for csv files." t)
+# (add-to-list 'load-path "@SITELISP@")
+# (add-to-list 'auto-mode-alist '("\\.csv\\'" . csv-mode))
+# (autoload 'csv-mode "csv-mode" "Major mode for csv files." t)
 # @CODE
 #
 # If your Emacs support files are installed in a subdirectory of
@@ -117,13 +117,13 @@
 # your ebuild (e.g., right after S or RDEPEND):
 #
 # @CODE
-# 	SITEFILE="50${PN}-gentoo.el"
+# SITEFILE="50${PN}-gentoo.el"
 # @CODE
 #
 # Which is then installed by
 #
 # @CODE
-# 	elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+# elisp-site-file-install "${FILESDIR}/${SITEFILE}"
 # @CODE
 #
 # in src_install().  Any characters after the "-gentoo" part and before
@@ -137,7 +137,7 @@
 # and install a site-init file that does just that:
 #
 # @CODE
-# 	elisp-make-site-file "${SITEFILE}"
+# elisp-make-site-file "${SITEFILE}"
 # @CODE
 #
 # Again, this must be called in src_install().  See the function's
@@ -153,7 +153,7 @@
 # version.  In this case, you can add an explicit check in pkg_setup:
 #
 # @CODE
-# 	elisp-check-emacs-version
+# elisp-check-emacs-version
 # @CODE
 #
 # When having optional Emacs support, you should prepend "use emacs &&"
@@ -165,13 +165,13 @@
 # emerging and unmerging by using
 #
 # @CODE
-# 	pkg_postinst() {
-# 		elisp-site-regen
-# 	}
+# pkg_postinst() {
+# 	elisp-site-regen
+# }
 #
-# 	pkg_postrm() {
-# 		elisp-site-regen
-# 	}
+# pkg_postrm() {
+# 	elisp-site-regen
+# }
 # @CODE
 #
 # Again, with optional Emacs support, you should prepend "use emacs &&"
@@ -260,7 +260,6 @@ elisp-emacs-version() {
 }
 
 # @FUNCTION: elisp-check-emacs-version
-# @USAGE: [version]
 # @DESCRIPTION:
 # Test if the eselected Emacs version is at least the version of
 # GNU Emacs specified in the NEED_EMACS variable, or die otherwise.
@@ -356,8 +355,8 @@ elisp-make-autoload-file() {
 #
 # Example:
 # @CODE
-# 	elisp-org-export-to texinfo README.org
-# 	mv README.texi ${PN}.texi || die
+# elisp-org-export-to texinfo README.org
+# mv README.texi ${PN}.texi || die
 # @CODE
 
 elisp-org-export-to() {
@@ -512,16 +511,16 @@ elisp-test-ert() {
 #
 # Example:
 # @CODE
-# 	inherit elisp-common
+# inherit elisp-common
 #
-# 	...
+# ...
 #
-# 	elisp-enable-tests --optional ert-runner "${S}"/elisp -t "!org"
+# elisp-enable-tests --optional ert-runner "${S}"/elisp -t "!org"
 #
-# 	src_test() {
-# 		emake -C tests test
-# 		elisp-test
-# 	}
+# src_test() {
+# 	emake -C tests test
+# 	elisp-test
+# }
 # @CODE
 
 elisp-enable-tests() {
@@ -662,7 +661,7 @@ elisp-site-file-install() {
 # this will add the package's SITELISP subdirectory to Emacs' load-path:
 #
 # @CODE
-# 	(add-to-list 'load-path "@SITELISP@")
+# (add-to-list 'load-path "@SITELISP@")
 # @CODE
 #
 # Additional arguments are appended as lines to the destination file.


^ permalink raw reply related	[flat|nested] 34+ messages in thread

* [gentoo-commits] repo/proj/emacs:master commit in: eclass/
@ 2024-12-29  9:23 Ulrich Müller
  0 siblings, 0 replies; 34+ messages in thread
From: Ulrich Müller @ 2024-12-29  9:23 UTC (permalink / raw
  To: gentoo-commits

commit:     9023b0d68d8c7ab365852cf3a533a41219516987
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Thu Dec 26 12:03:23 2024 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sun Dec 29 09:23:28 2024 +0000
URL:        https://gitweb.gentoo.org/repo/proj/emacs.git/commit/?id=9023b0d6

elisp.eclass: Call makeinfo with --no-split option

By default, makeinfo will split output files larger than 300 kB into
smaller subfiles. Although this doesn't currently happen for any elisp
package, it might happen in future and could break some assumptions.
This is also consistent with GNU Emacs itself which installs unsplit
Info files for its documentation.

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eclass/elisp.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index 1fa8aab..e2f629e 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -139,7 +139,7 @@ elisp_src_configure() { :; }
 elisp_src_compile() {
 	elisp-compile *.el
 	if [[ -n ${ELISP_TEXINFO} ]]; then
-		makeinfo ${ELISP_TEXINFO} || die
+		makeinfo --no-split ${ELISP_TEXINFO} || die
 	fi
 }
 


^ permalink raw reply related	[flat|nested] 34+ messages in thread

end of thread, other threads:[~2024-12-29  9:23 UTC | newest]

Thread overview: 34+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-12-22 12:34 [gentoo-commits] repo/proj/emacs:master commit in: eclass/ Ulrich Müller
  -- strict thread matches above, loose matches on Subject: below --
2024-12-29  9:23 Ulrich Müller
2024-12-16 18:46 Ulrich Müller
2024-09-02 15:31 Ulrich Müller
2024-09-02 15:18 Ulrich Müller
2024-09-02 15:18 Ulrich Müller
2023-10-22 10:01 Ulrich Müller
2023-10-20 12:18 Ulrich Müller
2022-10-20  8:05 Ulrich Müller
2022-10-20  8:05 Ulrich Müller
2022-04-03 18:29 Ulrich Müller
2022-04-03 18:02 Ulrich Müller
2022-03-24  6:44 Ulrich Müller
2021-07-28  7:53 Ulrich Müller
2021-04-20 18:13 Ulrich Müller
2021-04-13  7:43 Ulrich Müller
2021-04-13  7:27 Ulrich Müller
2021-04-13  7:15 Ulrich Müller
2021-04-13  7:15 Ulrich Müller
2021-04-13  7:12 Ulrich Müller
2021-04-13  7:12 Ulrich Müller
2021-04-12 19:09 Ulrich Müller
2021-04-12 19:09 Ulrich Müller
2021-03-22  9:00 Ulrich Müller
2020-09-25 17:58 Ulrich Müller
2020-08-04 14:37 Ulrich Müller
2020-02-22 11:42 Ulrich Müller
2019-12-21 18:54 Ulrich Müller
2019-12-21 18:30 Ulrich Müller
2019-09-09  8:25 Ulrich Müller
2019-08-17 22:08 Ulrich Müller
2018-06-01 18:07 Ulrich Müller
2018-06-01 18:07 Ulrich Müller
2018-02-22 13:25 Ulrich Müller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox