Version bump, release candidate for Emacs 24.5.
authorUlrich Müller <ulm@gentoo.org>
Sat, 28 Mar 2015 12:48:53 +0000 (12:48 +0000)
committerUlrich Müller <ulm@gentoo.org>
Sat, 28 Mar 2015 12:48:53 +0000 (12:48 +0000)
Package-Manager: portage-2.2.18/cvs/Linux x86_64
Manifest-Sign-Key: 0x9433907D693FB5B8!

app-editors/emacs/ChangeLog
app-editors/emacs/Manifest
app-editors/emacs/emacs-24.5_rc1.ebuild [new file with mode: 0644]

index 842ea3a3ac70b4f3fbbebb5002b43b5e97b95d10..3bee155a810b8d6aae52828c4a7983fb326c0623 100644 (file)
@@ -1,6 +1,11 @@
 # ChangeLog for app-editors/emacs
 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs/ChangeLog,v 1.662 2015/03/27 10:18:21 ago Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs/ChangeLog,v 1.663 2015/03/28 12:48:38 ulm Exp $
+
+*emacs-24.5_rc1 (28 Mar 2015)
+
+  28 Mar 2015; Ulrich Müller <ulm@gentoo.org> +emacs-24.5_rc1.ebuild:
+  Version bump, release candidate for Emacs 24.5.
 
   27 Mar 2015; Agostino Sarubbo <ago@gentoo.org> emacs-23.4-r13.ebuild,
   emacs-24.4-r4.ebuild:
index c095ff25ac339b12b0294835d21181f3af754c97..f48b7505c8ba26bd6841f0f90d00a4c58857dcb3 100644 (file)
@@ -14,6 +14,7 @@ DIST emacs-24.4-patches-2.tar.xz 1316 SHA256 e67954091f565668b921d32c14f9f31800e
 DIST emacs-24.4-patches-4.tar.xz 4652 SHA256 8b97fe775ed120df42e6f3afbe3ce503c0fedd8957caa759649323ac340f2922 SHA512 b8f8aea92472b5c074fc4cb2198b329e7b0496a70ba04d76eea4f420e398f3882b89d848020750659f60828217ea3155f4d53078edc8dc715b2946b8a239157a WHIRLPOOL e5e92ce3fba0e62ba3135e89ab8de9b6196f9a342048dbe679e06c3530a305311a1b300b72abdee50416d989cb55ca053ea1e0b259e63cc56260bfd58d43894a
 DIST emacs-24.4-patches-5.tar.xz 6000 SHA256 967dac364282a51933f90c56f368bc3f2741efe0b7ff42d3151bb4824b70fa04 SHA512 0a337ad5b7601f5e453645d1fba99717328c6bc7a5505bcb4bd8e853179cf61be43eb6f3b9370edf0f44aa6485d4847c14554c1592ccc7da87b10dabaaa9d421 WHIRLPOOL 149f3a431d055963c544d9fa6c6447a16aa093840f6bf4086f50506979356a12407af16291c46ee62a92b3ee41767452046f45a7163214be33ab7bdbcd6059dc
 DIST emacs-24.4.tar.xz 39733124 SHA256 47e391170db4ca0a3c724530c7050655f6d573a711956b4cd84693c194a9d4fd SHA512 f51f88a4736a3f153ef01f3ad710571e967cd3d0c0112b066169a4040725d370ec29b14a4ca8fa3e3f4c657c726ba8e64c3ac4e390b8e911ea47a3afb5ac755c WHIRLPOOL eae38c2382731fecf0ccf8f717f8c96cc130d01a893ff560caecde903294eb843660492761ea8cce9920b79bfc55e821921924e27c040f25355110f56cd2255b
+DIST emacs-24.5-rc1.tar.xz 39754360 SHA256 f5c15527cf7b470423633c189ab1210a9ddef0f824b422f17dc00ca1bd015104 SHA512 e1ed771ba6d20df37f22a17a07ae0470fc2be4165c8ed989837eab2b1ddaae6814753d30496f8ff4b58961349f18aacecb9e3d59c021fed34a6bd9eb4517035f WHIRLPOOL 099a78e9001746dab8798d28322b39efaafd281cf8141a8b1ae448d9e8c70fcafe993fbc362c1ee799df1450f72da1d8dddbc28856d227821f104358acd442fe
 EBUILD emacs-18.59-r10.ebuild 4297 SHA256 74c5d7927ea976e02680e0a24a90a270a067787e45cbb74602c8e7e513eec166 SHA512 d19f66368ed77bd4caeb260b098e79077a8e87328522d75092297c2cf15b39deb267518242f4939405a99365682653506374c0b6942be267816ddf9419a0ae4a WHIRLPOOL f8fe6dd1b04e838b0e5acc2d199a2d356dbf5ae61152a3ec9df156eceb04a9120743f8f98b04b27ae620b7c30ec5e1841df65b86a572be0746044969c42699a5
 EBUILD emacs-23.4-r11.ebuild 11320 SHA256 cf04e92c7c20bf3b8e5bbab062fb973f1aac81ca22b3575a5f267fd299f0d3c0 SHA512 7db86ce284dc9df0df4b2a00997cfc77b3067c8de277fdfe5bf794698bf018ad2c6036eaca84982de03f777bd746f23312267031924b7616d9078642a014bc70 WHIRLPOOL 863e5d02d8af5e70a9b57c6e82c2b6d2218f87a3947742febd67b9aed55084e38e18bd8489ef7514366bedf4db94605412f9002f114643b054d38b3328e22637
 EBUILD emacs-23.4-r12.ebuild 11310 SHA256 249aa3f72ecef6cbaeb9f7149dade700b53bc101fc2e1022d1f31a327cd017cb SHA512 c67923d31c1112f342fd8ad6ab3fb6f2a82daada8053756ea027a7de9e7cca72f9f4bad080b05b6b06d3dc4ba3a8ecdc0b931c2e6c46c975242e2cb0c04feeb4 WHIRLPOOL 50f585e87a8c41c16475b95976b6451931c73749cbea79137297d166ea809aec93f814b9b315980e848fe29e64f3dd2d7114718256f4f17d04f6fb1672ce1d98
@@ -22,22 +23,20 @@ EBUILD emacs-24.3-r6.ebuild 11210 SHA256 3a18d2256db1c69b55ce9094f85baf63c474aca
 EBUILD emacs-24.4-r1.ebuild 10674 SHA256 bdf46a1e69d26b446445a767caae59827bb78725a6290d14486b1251b3a243cf SHA512 e4f98b8fa857397249d21772922418f8d908113cfc6f700afa7f8821ea63bee83e11d60e3b5bed90b34e578b79f5fdb98ad2fb66802a62b2a8097111170a9eb1 WHIRLPOOL 5cfc5698d70b51786b44c36185d8ded1923d247e616eef60ed5572d7de471b1315786117a1daa2d3b14684158cc1e23fd0d75a4cb115c0faf5790b6419c8e099
 EBUILD emacs-24.4-r3.ebuild 10669 SHA256 978624cd544a29e8100c2bd0d1ee98535e05febf26a8708b5557a4a18f57e9fd SHA512 a9e3a91247afb260d2b394e8a41622aef9ee5d68c6c45a6ffc85cdf3450632dcd15092d0505c11452416cc398a339ac0a434cbd8c78a4ad33a5592145cf4da0e WHIRLPOOL daaa15989ac8544b9eabb4954a4eb46af6a01bbd30e6aee7b91806f04ae619d8658bbec24eb9e2a7acd3eeff21871f18aac8d19a97c43f8d40d7acd353c023cb
 EBUILD emacs-24.4-r4.ebuild 10667 SHA256 87331126f4ec2849d446f1b3641e30a4def7aff9394520356da82bed160a2472 SHA512 b84504eed8c7a85d575c91f4fd082f02aaeeb49edd3a6a99398dc45568909c508a3bdd24c38b1baa847a156dc39c968ae46ec4276e987757b2d7a89f6c1b8a21 WHIRLPOOL 573a13da632253dcac9d9524868472bd3e013183045d494f47c1ebecccad308874cc23e38fbbb1736e1298618354a44a9d77754bdeb7831ab8f08b7f2faab8dc
-MISC ChangeLog 90560 SHA256 5987e479b27903e6af5a9c54ed5deaf46bc0a64f6f0deb53331242fa85da00cc SHA512 fbec69b6e1c036f5089bccf7c6e36371a6cb490cd47e1af5f5612a758af0973d609b090f396076d79865893db30f86e1c3f730a20fe0e8691eb39b106ded30df WHIRLPOOL 47faeb0773fd6da2fdc8629d46b1d6677f1800bb4eca995d30b0a69299004741acd04b2a588879649b291085ee40135d43a8cd6a32f29ae364c58b0bf434c4d2
+EBUILD emacs-24.5_rc1.ebuild 10746 SHA256 921d44463887580b7dbef4d766ecb48216835eb3a1cea80ac344a06a6ded06e2 SHA512 bce63b01db392237ef3161075efe08d09ae177ab2e6c0d29de98f7845702e1a91144f9a00f4a204823e6861c2959586769c481bfc1d06383c2d627a901c6eb56 WHIRLPOOL 8357b227761a42a7d601e1e18760da8f015a4a05fafc48bc71c44b5810ed8a28baaf60ee2fa93945406610df6c270ab666af4875dc39c3b909756885a16d64f6
+MISC ChangeLog 90713 SHA256 fd668ac54672e6503e2a673b14a013030bb28bb88022ed2d63a5c773275f690e SHA512 80bf154c9df639567a4e156edc61aed71f16230d0f475dfaad38ff00f35e4acb823e20356e95822b66a67edc772eb913afe6c091dc3949669aee709eb568a369 WHIRLPOOL d1d2eecdc5ab875705f19c6415a6ba647aed9d3d83bdd29513dc7fa636f02e6f47e11a10843ef2fc4aaebd00064c04e7f595d4d2d71c5011e0fb2797fdb8852e
 MISC metadata.xml 2489 SHA256 21b3602d37aa25bca31b05ea810b37ee2192f4e53b8f8daeb814d9dca59d03d7 SHA512 4f3d663cd61253ae3390c55c5974dd3cc22dbf1306a823c3cb71794d09eaf28d7727c7e24f66f02dbd8d3845894f3a8cafa5ddaf330c1bbb7f99d8130ece077c WHIRLPOOL bcefdded503fa9cebea943952d3f56847002cb5ddc10f5adbd774301b648d1b12a09da7e493694f9cbbb19e8b53b66132cbd2e0141ded41b226415cfdbbcf8f6
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
-iQIcBAEBCAAGBQJVFS5uAAoJELp701BxlEWfzO8QAJXrF6xHucQ+a1UbsEiYHFKk
-Sgi88FgTWLwxhhKgqCSQYqXw9PLQATa9z8U29tQ+SX/hVoF1F5su905mr8AOfhXR
-XeFYIoBhQDf9nifZmYkwoj39Z2NK3/yjTlinzCFxvvv8ODTkHfkUZflkStsp7WjS
-OUL+c8Ttf6KSQhAxyVJ5/lZ0WIEz8O4ShcxJrF1DWSIdx+dwrIIJIM3F6gjNKECp
-3tYqp+IdD3YmO7gaqOxoAV0yMxOfaFX9IEYoxoPRPNqyQgzAJ8CFJiUdTbK1pDZC
-kJt0jRG5BjP1WDNcPNQ5/xmcMc7aOgMoArWT8bo7jYEWz6MABsbQXHUiA2LHJWik
-Qt9fw8ofqtbtOg4GYtoUYVvs4z2LkU5E4s8KaNkBAImwG7jUJs8uLBcltW5a7yWR
-T16tslwQR7wZ5vYzw86RR6EibioBjeolRAq5xYlSl1Xmjz+tfEi8vfo2Hxk2ApsJ
-z/gzsE7j/TnVlrTTcUcHPSHt9c9lDR4wWFc9PzFsXmxauPy1cHqCBDgwt8rZDkfJ
-SFfIv8DjslEvydTHWUv76BW708wv++tDp+Q7JTurjPdtRbiNZeQ4+z5JtBjZeijC
-F20rRg9Vmzdr+zCCOycLWUL7ShO1qHL30qMSrn15WDAcNmmmeeaNpHPz8N6+z1s7
-kOvC+4zUswnge8XxZRLm
-=0NFW
+iQGcBAEBCAAGBQJVFqM2AAoJEJQzkH1pP7W4TtAL/iC7FR8zVvMWz/xx/h3lGbwO
+yNbD/8D85sOJ8fmVvPHtKVzwZE2oX8IZcL0pFUaejzUd3Wt6xmG1FF7VCjwLn67s
+/ZYqyzUgK8wmf3/ZiBWc+7+0C7qw4DJ0lsERz/z5mYOCw+6M74gh0cB7lLJR2738
+yOR/agz+hRzZQuAFRV9Q7YCUjy6683yhmJ0B/GeUCGWhxVTy7w50M/qWkKDUSCX3
+q44VhWT+uaZdYlgjsFSqTpw72YspYd0h+7mIvlEVkPDtvLLMc8BjnSc+nKkMZTie
+uHsxrw7a9VNDPcRsNXkHhoRGAwgtXBNu+dIOJlySoTF5+eYlQ+evAkW2eC01YBjW
++UOFCpwRH1i2bsw/POEzojEwLCGdBteXHjAoyUlXXRAVR4ailgCGDWjfimbzeQFa
+1OaNkk2jA/930MqKWjxGQNVx+/R15n4JMr1l5sEg9qQYdbZgFLSpXmL4624FV/B8
+mmnDrXyb3Ojs7+KILH4IT0zyMg8WIaP+YhQ8x2wyew==
+=dg6R
 -----END PGP SIGNATURE-----
diff --git a/app-editors/emacs/emacs-24.5_rc1.ebuild b/app-editors/emacs/emacs-24.5_rc1.ebuild
new file mode 100644 (file)
index 0000000..3420c96
--- /dev/null
@@ -0,0 +1,339 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs/emacs-24.5_rc1.ebuild,v 1.1 2015/03/28 12:48:38 ulm Exp $
+
+EAPI=5
+
+inherit autotools elisp-common eutils flag-o-matic multilib readme.gentoo
+
+DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
+HOMEPAGE="http://www.gnu.org/software/emacs/"
+SRC_URI="mirror://gnu-alpha/emacs/pretest/${P/_/-}.tar.xz
+       http://dev.gentoo.org/~ulm/emacs/${PN}-24.4-patches-4.tar.xz"
+
+LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
+SLOT="24"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="acl alsa aqua athena dbus games gconf gfile gif gnutls gpm gsettings gtk +gtk3 gzip-el hesiod imagemagick +inotify jpeg kerberos libxml2 livecd m17n-lib motif pax_kernel png selinux sound source svg tiff toolkit-scroll-bars wide-int X Xaw3d xft +xpm zlib"
+REQUIRED_USE="?? ( aqua X )"
+
+RDEPEND="sys-libs/ncurses
+       >=app-admin/eselect-emacs-1.16
+       >=app-emacs/emacs-common-gentoo-1.5[games?,X?]
+       net-libs/liblockfile
+       acl? ( virtual/acl )
+       alsa? ( media-libs/alsa-lib )
+       dbus? ( sys-apps/dbus )
+       gfile? ( >=dev-libs/glib-2.28.6 )
+       gnutls? ( net-libs/gnutls )
+       gpm? ( sys-libs/gpm )
+       hesiod? ( net-dns/hesiod )
+       kerberos? ( virtual/krb5 )
+       libxml2? ( >=dev-libs/libxml2-2.2.0 )
+       selinux? ( sys-libs/libselinux )
+       zlib? ( sys-libs/zlib )
+       X? (
+               x11-libs/libXmu
+               x11-libs/libXt
+               x11-misc/xbitmaps
+               gconf? ( >=gnome-base/gconf-2.26.2 )
+               gsettings? ( >=dev-libs/glib-2.28.6 )
+               gif? ( media-libs/giflib )
+               jpeg? ( virtual/jpeg:0= )
+               png? ( >=media-libs/libpng-1.4:0= )
+               svg? ( >=gnome-base/librsvg-2.0 )
+               tiff? ( media-libs/tiff:0 )
+               xpm? ( x11-libs/libXpm )
+               imagemagick? ( >=media-gfx/imagemagick-6.6.2 )
+               xft? (
+                       media-libs/fontconfig
+                       media-libs/freetype
+                       x11-libs/libXft
+                       m17n-lib? (
+                               >=dev-libs/libotf-0.9.4
+                               >=dev-libs/m17n-lib-1.5.1
+                       )
+               )
+               gtk? (
+                       gtk3? ( x11-libs/gtk+:3 )
+                       !gtk3? ( x11-libs/gtk+:2 )
+               )
+               !gtk? (
+                       motif? ( >=x11-libs/motif-2.3:0 )
+                       !motif? (
+                               Xaw3d? ( x11-libs/libXaw3d )
+                               !Xaw3d? ( athena? ( x11-libs/libXaw ) )
+                       )
+               )
+       )"
+
+DEPEND="${RDEPEND}
+       virtual/pkgconfig
+       gzip-el? ( app-arch/gzip )
+       pax_kernel? (
+               sys-apps/attr
+               sys-apps/paxctl
+       )"
+
+RDEPEND="${RDEPEND}
+       !<app-editors/emacs-vcs-${PV}"
+
+EMACS_SUFFIX="${PN/emacs/emacs-${SLOT}}"
+SITEFILE="20${PN}-${SLOT}-gentoo.el"
+# FULL_VERSION keeps the full version number, which is needed in
+# order to determine some path information correctly for copy/move
+# operations later on
+FULL_VERSION="${PV%%_*}"
+S="${WORKDIR}/emacs-${FULL_VERSION}"
+
+src_prepare() {
+       #EPATCH_SUFFIX=patch epatch
+       epatch "${WORKDIR}"/patch/04_all_games-sgid.patch
+       epatch_user
+
+       # Fix filename reference in redirected man page
+       sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 \
+               || die "unable to sed ctags.1"
+
+       AT_M4DIR=m4 eautoreconf
+}
+
+src_configure() {
+       strip-flags
+       filter-flags -pie                                       #526948
+
+       if use sh; then
+               replace-flags "-O[1-9]" -O0             #262359
+       elif use ia64; then
+               replace-flags "-O[2-9]" -O1             #325373
+       else
+               replace-flags "-O[3-9]" -O2
+       fi
+
+       local myconf
+
+       if use alsa; then
+               use sound || ewarn \
+                       "USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
+               myconf+=" --with-sound=alsa"
+       else
+               myconf+=" --with-sound=$(usex sound oss)"
+       fi
+
+       if use X; then
+               myconf+=" --with-x --without-ns"
+               myconf+=" $(use_with gconf)"
+               myconf+=" $(use_with gsettings)"
+               myconf+=" $(use_with toolkit-scroll-bars)"
+               myconf+=" $(use_with gif)"
+               myconf+=" $(use_with jpeg)"
+               myconf+=" $(use_with png)"
+               myconf+=" $(use_with svg rsvg)"
+               myconf+=" $(use_with tiff)"
+               myconf+=" $(use_with xpm)"
+               myconf+=" $(use_with imagemagick)"
+
+               if use xft; then
+                       myconf+=" --with-xft"
+                       myconf+=" $(use_with m17n-lib libotf)"
+                       myconf+=" $(use_with m17n-lib m17n-flt)"
+               else
+                       myconf+=" --without-xft"
+                       myconf+=" --without-libotf --without-m17n-flt"
+                       use m17n-lib && ewarn \
+                               "USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
+               fi
+
+               local f
+               if use gtk; then
+                       einfo "Configuring to build with GIMP Toolkit (GTK+)"
+                       myconf+=" --with-x-toolkit=$(usex gtk3 gtk3 gtk2)"
+                       for f in motif Xaw3d athena; do
+                               use ${f} && ewarn \
+                                       "USE flag \"${f}\" has no effect if \"gtk\" is set."
+                       done
+               elif use motif; then
+                       einfo "Configuring to build with Motif toolkit"
+                       myconf+=" --with-x-toolkit=motif"
+                       for f in Xaw3d athena; do
+                               use ${f} && ewarn \
+                                       "USE flag \"${f}\" has no effect if \"motif\" is set."
+                       done
+               elif use athena || use Xaw3d; then
+                       einfo "Configuring to build with Athena/Lucid toolkit"
+                       myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
+               else
+                       einfo "Configuring to build with no toolkit"
+                       myconf+=" --with-x-toolkit=no"
+               fi
+       elif use aqua; then
+               einfo "Configuring to build with Nextstep (Cocoa) support"
+               myconf+=" --with-ns --disable-ns-self-contained"
+               myconf+=" --without-x"
+       else
+               myconf+=" --without-x --without-ns"
+       fi
+
+       # Save version information in the Emacs binary. It will be available
+       # in variable "system-configuration-options".
+       myconf+=" GENTOO_PACKAGE=${CATEGORY}/${PF}"
+
+       econf \
+               --program-suffix="-${EMACS_SUFFIX}" \
+               --infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
+               --localstatedir="${EPREFIX}"/var \
+               --enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
+               --with-gameuser=":gamestat" \
+               --without-compress-install \
+               --with-file-notification=$(usev gfile || usev inotify || echo no) \
+               $(use_enable acl) \
+               $(use_with dbus) \
+               $(use_with gnutls) \
+               $(use_with gpm) \
+               $(use_with hesiod) \
+               $(use_with kerberos) $(use_with kerberos kerberos5) \
+               $(use_with libxml2 xml2) \
+               $(use_with selinux) \
+               $(use_with wide-int) \
+               $(use_with zlib) \
+               ${myconf}
+}
+
+src_compile() {
+       export SANDBOX_ON=0                     # for the unbelievers, see Bug #131505
+       emake
+}
+
+src_install () {
+       emake DESTDIR="${D}" NO_BIN_LINK=t install
+
+       mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} \
+               || die "moving emacs executable failed"
+       mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 \
+               || die "moving emacs man page failed"
+
+       # move info dir to avoid collisions with the dir file generated by portage
+       mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} \
+               || die "moving info dir failed"
+       touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
+       docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
+
+       # avoid collision between slots, see bug #169033 e.g.
+       rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el
+       rm -rf "${ED}"/usr/share/{applications,icons}
+       rm -rf "${ED}"/var
+
+       # remove unused <version>/site-lisp dir
+       rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp
+
+       # remove COPYING file (except for etc/COPYING used by describe-copying)
+       rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING
+
+       if use gzip-el; then
+               # compress .el files when a corresponding .elc exists
+               find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
+                       -name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
+               assert "gzip .el failed"
+       fi
+
+       local cdir
+       if use source; then
+               cdir="/usr/share/emacs/${FULL_VERSION}/src"
+               insinto "${cdir}"
+               # This is not meant to install all the source -- just the
+               # C source you might find via find-function
+               doins src/*.{c,h,m}
+       elif has installsources ${FEATURES}; then
+               cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
+       fi
+
+       sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF
+       X
+       ;;; ${PN}-${SLOT} site-lisp configuration
+       X
+       (when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
+       Y  (setq find-function-C-source-directory
+       Y       "${EPREFIX}${cdir}")
+       X  (let ((path (getenv "INFOPATH"))
+       X       (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
+       X       (re "\\\\\`${EPREFIX}/usr/share/info\\\\>"))
+       X    (and path
+       X        ;; move Emacs Info dir before anything else in /usr/share/info
+       X        (let* ((p (cons nil (split-string path ":" t))) (q p))
+       X          (while (and (cdr q) (not (string-match re (cadr q))))
+       X            (setq q (cdr q)))
+       X          (setcdr q (cons dir (delete dir (cdr q))))
+       X          (setq Info-directory-list (prune-directory-list (cdr p)))))))
+       EOF
+       elisp-site-file-install "${T}/${SITEFILE}" || die
+
+       dodoc README BUGS
+
+       if use aqua; then
+               dodir /Applications/Gentoo
+               rm -rf "${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app
+               mv nextstep/Emacs.app \
+                       "${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app || die
+       fi
+
+       DOC_CONTENTS="You can set the version to be started by /usr/bin/emacs
+               through the Emacs eselect module, which also redirects man and info
+               pages. Therefore, several Emacs versions can be installed at the
+               same time. \"man emacs.eselect\" for details.
+               \\n\\nIf you upgrade from Emacs version 24.2 or earlier, then it is
+               strongly recommended that you use app-admin/emacs-updater to rebuild
+               all byte-compiled elisp files of the installed Emacs packages."
+       use X && DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
+               Installing media-fonts/font-adobe-{75,100}dpi on the X server's
+               machine would satisfy basic Emacs requirements under X11.
+               See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
+               for how to enable anti-aliased fonts."
+       use aqua && DOC_CONTENTS+="\\n\\nEmacs${EMACS_SUFFIX#emacs}.app is in
+               \"${EPREFIX}/Applications/Gentoo\". You may want to copy or symlink
+               it into /Applications by yourself."
+       readme.gentoo_create_doc
+}
+
+pkg_preinst() {
+       # move Info dir file to correct name
+       local infodir=/usr/share/info/${EMACS_SUFFIX} f
+       if [[ -f ${ED}${infodir}/dir.orig ]]; then
+               mv "${ED}"${infodir}/dir{.orig,} || die "moving info dir failed"
+       elif [[ -d "${ED}"${infodir} ]]; then
+               # this should not happen in EAPI 4
+               ewarn "Regenerating Info directory index in ${infodir} ..."
+               rm -f "${ED}"${infodir}/dir{,.*}
+               for f in "${ED}"${infodir}/*; do
+                       if [[ ${f##*/} != *-[0-9]* && -e ${f} ]]; then
+                               install-info --info-dir="${ED}"${infodir} "${f}" \
+                                       || die "install-info failed"
+                       fi
+               done
+       fi
+}
+
+pkg_postinst() {
+       elisp-site-regen
+
+       local pvr
+       for pvr in ${REPLACING_VERSIONS}; do
+               [[ ${pvr%%[-_]*} = 24.[12] ]] && FORCE_PRINT_ELOG=1
+       done
+       readme.gentoo_print_elog
+
+       if use livecd; then
+               # force an update of the emacs symlink for the livecd/dvd,
+               # because some microemacs packages set it with USE=livecd
+               eselect emacs update
+       elif [[ $(readlink "${EROOT}"/usr/bin/emacs) = ${EMACS_SUFFIX} ]]; then
+               # refresh symlinks in case any installed files have changed
+               eselect emacs set ${EMACS_SUFFIX}
+       else
+               eselect emacs update ifunset
+       fi
+}
+
+pkg_postrm() {
+       elisp-site-regen
+       eselect emacs update ifunset
+}