diff options
author | Ulrich Müller <ulm@gentoo.org> | 2011-01-31 19:02:11 +0000 |
---|---|---|
committer | Ulrich Müller <ulm@gentoo.org> | 2011-01-31 19:02:11 +0000 |
commit | 1ab8a6d93590303be9d44b7bafe2ffb95bb80bb2 (patch) | |
tree | 13dc4d40229b654220f0f550059667aa29f2a51b /app-emacs/emacs-common-gentoo | |
parent | drop older version (diff) | |
download | gentoo-2-1ab8a6d93590303be9d44b7bafe2ffb95bb80bb2.tar.gz gentoo-2-1ab8a6d93590303be9d44b7bafe2ffb95bb80bb2.tar.bz2 gentoo-2-1ab8a6d93590303be9d44b7bafe2ffb95bb80bb2.zip |
Test REPLACING_VERSIONS to detect a new install. Change ebuild to EAPI 4.
(Portage version: 2.1.9.35/cvs/Linux x86_64)
Diffstat (limited to 'app-emacs/emacs-common-gentoo')
-rw-r--r-- | app-emacs/emacs-common-gentoo/ChangeLog | 8 | ||||
-rw-r--r-- | app-emacs/emacs-common-gentoo/emacs-common-gentoo-1.2-r2.ebuild | 137 |
2 files changed, 144 insertions, 1 deletions
diff --git a/app-emacs/emacs-common-gentoo/ChangeLog b/app-emacs/emacs-common-gentoo/ChangeLog index 567bc7a9a612..2492addbe98d 100644 --- a/app-emacs/emacs-common-gentoo/ChangeLog +++ b/app-emacs/emacs-common-gentoo/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for app-emacs/emacs-common-gentoo # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-emacs/emacs-common-gentoo/ChangeLog,v 1.35 2011/01/13 16:58:08 ulm Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emacs/emacs-common-gentoo/ChangeLog,v 1.36 2011/01/31 19:02:11 ulm Exp $ + +*emacs-common-gentoo-1.2-r2 (31 Jan 2011) + + 31 Jan 2011; Ulrich Mueller <ulm@gentoo.org> + +emacs-common-gentoo-1.2-r2.ebuild: + Test REPLACING_VERSIONS to detect a new install. Change ebuild to EAPI 4. 13 Jan 2011; Ulrich Mueller <ulm@gentoo.org> -emacs-common-gentoo-1.2.ebuild: Remove old. diff --git a/app-emacs/emacs-common-gentoo/emacs-common-gentoo-1.2-r2.ebuild b/app-emacs/emacs-common-gentoo/emacs-common-gentoo-1.2-r2.ebuild new file mode 100644 index 000000000000..a6097fb23573 --- /dev/null +++ b/app-emacs/emacs-common-gentoo/emacs-common-gentoo-1.2-r2.ebuild @@ -0,0 +1,137 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-emacs/emacs-common-gentoo/emacs-common-gentoo-1.2-r2.ebuild,v 1.1 2011/01/31 19:02:11 ulm Exp $ + +EAPI=4 + +inherit elisp-common eutils fdo-mime gnome2-utils + +DESCRIPTION="Common files needed by all GNU Emacs versions" +HOMEPAGE="http://www.gentoo.org/proj/en/lisp/emacs/" +SRC_URI="mirror://gentoo/${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris" +IUSE="X emacs22icons" + +PDEPEND="virtual/emacs" + +pkg_setup() { + if [ -e "${EROOT}${SITELISP}/subdirs.el" ] \ + && ! has_version ">=${CATEGORY}/${PN}-1" + then + ewarn "Removing orphan subdirs.el (installed by old Emacs ebuilds)" + rm -f "${EROOT}${SITELISP}/subdirs.el" + fi +} + +src_install() { + elisp-install . subdirs.el || die + + if use X; then + local i + domenu emacs.desktop emacsclient.desktop || die + newicon icons/sink.png emacs-sink.png || die + if use emacs22icons; then + newicon icons/emacs22_48.png emacs.png || die + for i in 16 24 32 48; do + insinto /usr/share/icons/hicolor/${i}x${i}/apps + newins icons/emacs22_${i}.png emacs.png + done + else + newicon icons/emacs_48.png emacs.png || die + for i in 16 24 32 48 128; do + insinto /usr/share/icons/hicolor/${i}x${i}/apps + newins icons/emacs_${i}.png emacs.png + done + insinto /usr/share/icons/hicolor/scalable/apps + doins icons/emacs.svg + fi + gnome2_icon_savelist + fi +} + +make-site-start() { + ebegin "Creating default ${SITELISP}/site-start.el" + cat <<-EOF >"${T}/site-start.el" + ;;; site-start.el -*- no-byte-compile: t -*- + + ;;; Commentary: + ;; This default site startup file for Emacs was created by package + ;; ${CATEGORY}/${PF}. You may modify this file, replace + ;; it by your own site initialisation, or even remove it completely. + + ;;; Code: + ;; Load site initialisation for Gentoo installed packages. + (require 'site-gentoo) + + ;;; site-start.el ends here + EOF + mv "${T}/site-start.el" "${EROOT}${SITELISP}/site-start.el" + eend $? "Installation of site-start.el failed" +} + +pkg_config() { + # make sure that site-gentoo.el exists since site-start.el requires it + elisp-site-regen + + if [ ! -e "${EROOT}${SITELISP}/site-start.el" ]; then + echo + einfo "Press ENTER to create a default site-start.el file" + einfo "for GNU Emacs, or Control-C to abort now ..." + read + make-site-start + else + einfo "site-start.el for GNU Emacs already exists." + fi +} + +pkg_postinst() { + if use X; then + fdo-mime_desktop_database_update + gnome2_icon_cache_update + fi + + # make sure that site-gentoo.el exists since site-start.el requires it + elisp-site-regen + + if [ ! -e "${EROOT}${SITELISP}/site-start.el" ]; then + local line + echo + while read line; do elog "${line:- }"; done <<-EOF + All site initialisation for Gentoo-installed packages is added to + /usr/share/emacs/site-lisp/site-gentoo.el. In order for this site + initialisation to be loaded for all users automatically, a default + site-start.el is created in the same directory. You are responsible + for all further maintenance of this file. + + Alternatively, individual users can add the following command: + + (require 'site-gentoo) + + to their ~/.emacs initialisation files, or, for greater flexibility, + users may load single package-specific initialisation files from + /usr/share/emacs/site-lisp/site-gentoo.d/. + EOF + echo + + if [ -z "${REPLACING_VERSIONS}" ]; then + # This is a new install. Create default site-start.el, so that + # Gentoo packages will work. + make-site-start + else + # This package was already installed, but site-start.el does + # not exist. Give a hint how to (re-)create it. + elog "If this is a new install, you may want to run:" + elog "emerge --config =${CATEGORY}/${PF}" + fi + fi +} + +pkg_postrm() { + if use X; then + fdo-mime_desktop_database_update + gnome2_icon_cache_update + fi +} |