summaryrefslogtreecommitdiff
path: root/eclass
diff options
context:
space:
mode:
authorUlrich Müller <ulm@gentoo.org>2010-11-10 13:02:44 +0000
committerUlrich Müller <ulm@gentoo.org>2010-11-10 13:02:44 +0000
commita9c80639e3be7173d8f885b240550e402d2d418f (patch)
tree2a5be24b028c4882a3b7e998e7557b88015972aa /eclass
parentMore specifix mask. (diff)
downloademacs-a9c80639e3be7173d8f885b240550e402d2d418f.tar.gz
emacs-a9c80639e3be7173d8f885b240550e402d2d418f.tar.bz2
emacs-a9c80639e3be7173d8f885b240550e402d2d418f.zip
New eclass function elisp-need-emacs.
svn path=/emacs-overlay/; revision=1533
Diffstat (limited to 'eclass')
-rw-r--r--eclass/ChangeLog5
-rw-r--r--eclass/elisp-common.eclass18
-rw-r--r--eclass/elisp.eclass9
3 files changed, 24 insertions, 8 deletions
diff --git a/eclass/ChangeLog b/eclass/ChangeLog
index 858dfb0..f2dbb8c 100644
--- a/eclass/ChangeLog
+++ b/eclass/ChangeLog
@@ -1,3 +1,8 @@
+2010-11-10 Ulrich Mueller <ulm@gentoo.org>
+
+ * elisp-common.eclass (elisp-need-emacs): New function.
+ * elisp.eclass (elisp_pkg_setup): Use it.
+
2010-09-14 Ulrich Mueller <ulm@gentoo.org>
* elisp-common.eclass (elisp-make-autoload-file): In header
diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index 4f8b547..61aa554 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -188,6 +188,24 @@ elisp-emacs-version() {
rm -f "${T}"/emacs-version.el
}
+# @FUNCTION: elisp-need-emacs
+# @USAGE: <version>
+# @DESCRIPTION:
+# Test if the eselected Emacs version is at least the major version
+# specified as argument.
+
+elisp-need-emacs() {
+ local need_emacs=$1
+ local have_emacs=$(elisp-emacs-version)
+ if [ "${have_emacs%%.*}" -lt "${need_emacs%%.*}" ]; then
+ eerror "This package needs at least Emacs ${need_emacs%%.*}."
+ eerror "Use \"eselect emacs\" to select the active version."
+ return 1
+ fi
+ einfo "Emacs version: ${have_emacs}"
+ return 0
+}
+
# @FUNCTION: elisp-make-autoload-file
# @USAGE: [output file] [list of directories]
# @DESCRIPTION:
diff --git a/eclass/elisp.eclass b/eclass/elisp.eclass
index 22c53da..9270dc2 100644
--- a/eclass/elisp.eclass
+++ b/eclass/elisp.eclass
@@ -79,14 +79,7 @@ IUSE=""
# version requirement of the NEED_EMACS variable.
elisp_pkg_setup() {
- local need_emacs=${NEED_EMACS:-21}
- local have_emacs=$(elisp-emacs-version)
- if [ "${have_emacs%%.*}" -lt "${need_emacs%%.*}" ]; then
- eerror "This package needs at least Emacs ${need_emacs%%.*}."
- eerror "Use \"eselect emacs\" to select the active version."
- die "Emacs version ${have_emacs} is too low."
- fi
- einfo "Emacs version: ${have_emacs}"
+ elisp-need-emacs "${NEED_EMACS:-21}" || die "Emacs version too low"
}
# @FUNCTION: elisp_src_unpack