commit:     32537869bbf98938b76ecd31eea0ffd64cded99e
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 20 15:31:40 2015 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sun Dec 20 15:35:20 2015 +0000
URL:        https://gitweb.gentoo.org/proj/emacs.git/commit/?id=32537869

elisp*.eclass: Merge changes from Portage tree.

 eclass/ChangeLog           |  4 ++++
 eclass/elisp-common.eclass |  2 +-
 eclass/elisp.eclass        | 43 +++++++++++++++++++++++++++++--------------
 3 files changed, 34 insertions(+), 15 deletions(-)

diff --git a/eclass/ChangeLog b/eclass/ChangeLog
index 3cfdab5..087edf2 100644
--- a/eclass/ChangeLog
+++ b/eclass/ChangeLog
@@ -1,3 +1,7 @@
+2015-12-20  Ulrich Müller  <[email protected]>
+
+       * elisp.eclass: Support EAPI 6.
+
 2015-05-25  Ulrich Müller  <[email protected]>
 
        * elisp-common.eclass (elisp-site-file-install): Fix filename

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index 4ccbfb1..1517788 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
-# $Header: $
+# $Id$
 #
 # @ECLASS: elisp-common.eclass
 # @MAINTAINER:

diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index c24613b..93a7d4b 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -1,6 +1,6 @@
 # Copyright 1999-2015 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: $
+# $Id$
 #
 # @ECLASS: elisp.eclass
 # @MAINTAINER:
@@ -65,13 +65,21 @@
 # DOCS="blah.txt ChangeLog" is automatically used to install the given
 # files by dodoc in src_install().
 
-inherit elisp-common eutils
-
-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} ;;
+inherit elisp-common
+
+case ${EAPI:-0} in
+       0|1)
+               inherit eutils
+               EXPORT_FUNCTIONS src_{unpack,compile,install} \
+                       pkg_{setup,postinst,postrm} ;;
+       2|3|4|5)
+               inherit eutils
+               EXPORT_FUNCTIONS src_{unpack,prepare,configure,compile,install} 
\
+                       pkg_{setup,postinst,postrm} ;;
+       6)
+               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}"
@@ -105,7 +113,7 @@ elisp_src_unpack() {
                [[ -d ${S} ]] || S=${WORKDIR}
        fi
 
-       case "${EAPI:-0}" in
+       case ${EAPI:-0} in
                0|1) [[ -d ${S} ]] && cd "${S}"
                        elisp_src_prepare ;;
        esac
@@ -117,21 +125,28 @@ elisp_src_unpack() {
 # for in the current working dir, WORKDIR, and FILESDIR.
 
 elisp_src_prepare() {
-       local patch
+       local patch file
        for patch in ${ELISP_PATCHES}; do
                if [[ -f ${patch} ]]; then
-                       epatch "${patch}"
+                       file="${patch}"
                elif [[ -f ${WORKDIR}/${patch} ]]; then
-                       epatch "${WORKDIR}/${patch}"
+                       file="${WORKDIR}/${patch}"
                elif [[ -f ${FILESDIR}/${patch} ]]; then
-                       epatch "${FILESDIR}/${patch}"
+                       file="${FILESDIR}/${patch}"
                else
                        die "Cannot find ${patch}"
                fi
+               case ${EAPI:-0} in
+                       0|1|2|3|4|5) epatch "${file}" ;;
+                       6) eapply "${file}" ;;
+               esac
        done
 
        # apply any user patches
-       epatch_user
+       case ${EAPI:-0} in
+               0|1|2|3|4|5) epatch_user ;;
+               6) eapply_user ;;
+       esac
 
        if [[ -n ${ELISP_REMOVE} ]]; then
                rm ${ELISP_REMOVE} || die

Reply via email to