aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnthony G. Basile <blueness@gentoo.org>2018-12-29 11:15:24 -0500
committerAnthony G. Basile <blueness@gentoo.org>2018-12-29 11:15:31 -0500
commit34d70352d1e25613117aff022aae253a4ff15333 (patch)
tree984e71ac4da5243000bd4892e2a8729edb66fd9c
parentsys-libs/queue: moved to tree as sys-libs/queue-standalone (diff)
downloadmusl-34d70352d1e25613117aff022aae253a4ff15333.tar.gz
musl-34d70352d1e25613117aff022aae253a4ff15333.tar.bz2
musl-34d70352d1e25613117aff022aae253a4ff15333.zip
app-editors/emacs: in tree version (probably) works
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
-rw-r--r--app-editors/emacs/Manifest3
-rw-r--r--app-editors/emacs/emacs-24.5-r5.ebuild367
-rw-r--r--app-editors/emacs/emacs-25.3-r1.ebuild371
-rw-r--r--app-editors/emacs/emacs-25.3-r3.ebuild371
-rw-r--r--app-editors/emacs/files/emacs-24.3-alloc-invalid-frees.patch58
-rw-r--r--app-editors/emacs/files/emacs-24.3-stderr.patch11
-rw-r--r--app-editors/emacs/files/emacs-24.4-configure.patch10
-rw-r--r--app-editors/emacs/files/emacs-24.4-lisp.patch10
-rw-r--r--app-editors/emacs/files/emacs-24.4-preload-hack.patch11
-rw-r--r--app-editors/emacs/files/emacs-vcs-musl.patch89
-rw-r--r--app-editors/emacs/files/preload.c88
-rw-r--r--app-editors/emacs/metadata.xml52
12 files changed, 0 insertions, 1441 deletions
diff --git a/app-editors/emacs/Manifest b/app-editors/emacs/Manifest
deleted file mode 100644
index ffd77aa8..00000000
--- a/app-editors/emacs/Manifest
+++ /dev/null
@@ -1,3 +0,0 @@
-DIST emacs-24.5-patches-4.tar.xz 13632 SHA256 3b2d7c2034711d114494745780b6521150aa0c524966cbaceeb8d4d053dcbdd3 SHA512 569c3a55aaf1102c0bae4ab25ee06372763cd2de8a54e26b3eefd54e585cf90b53c8ffe1ca48eb4fd312a340380fd3f2fcdb584697814bf429129b48fa56ffb5 WHIRLPOOL 1855ac4178faafcc2d86141e023ff2626246c87e7ff2e7bfbaf9a989e9a48d2767acb9f7af99924cd7db04d34913a42764490831b7b45a34bcd131999180ff28
-DIST emacs-24.5.tar.xz 39759804 BLAKE2B aec253528038686822d1f8ed9a52dff276789ef7744053fc9b6176fceba4d4d8684fe979cf97e756b3feaf734d2377baef81f5efaa5450930a4e94d9f3bca355 SHA512 89dee4c3aadb6e505c523f84c65b5e40e5bf28a586cc8a4518a59581c22972f942bb6f3c772df0d5b2685c3e78247c545c6bb2576e981d1ef0f9298c18ad1677
-DIST emacs-25.3.tar.xz 42854740 SHA256 253ac5e7075e594549b83fd9ec116a9dc37294d415e2f21f8ee109829307c00b SHA512 1cce656451b6ca8502ebb229e88bd3ef48b7f9444a10eeac4ea43bd5491b2efacd641dfa35227a33362c3866493d3449cf1df81606563eef44bba0ed668e457f WHIRLPOOL 603ec6b203523a22556e48616b4a5ab227c32d3653ac4b713e6cb0357e3556964bc92a1818b417bbf9037cca7dac55935da9458dc3d29b3bb24d66157e74c8df
diff --git a/app-editors/emacs/emacs-24.5-r5.ebuild b/app-editors/emacs/emacs-24.5-r5.ebuild
deleted file mode 100644
index 48fb51c7..00000000
--- a/app-editors/emacs/emacs-24.5-r5.ebuild
+++ /dev/null
@@ -1,367 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools elisp-common eutils flag-o-matic multilib readme.gentoo-r1
-
-DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
-HOMEPAGE="https://www.gnu.org/software/emacs/"
-SRC_URI="mirror://gnu/emacs/${P}.tar.xz
- https://dev.gentoo.org/~ulm/emacs/${P}-patches-4.tar.xz"
-
-LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
-SLOT="24"
-KEYWORDS="amd64 arm arm64 ia64 ~mips ppc ~sh ~sparc x86"
-IUSE="acl alsa aqua athena dbus games gconf gfile gif gpm gsettings gtk +gtk3 gzip-el imagemagick +inotify jpeg kerberos libxml2 livecd m17n-lib motif pax_kernel png selinux sound source ssl svg tiff toolkit-scroll-bars wide-int X Xaw3d xft +xpm zlib"
-REQUIRED_USE="?? ( aqua X )"
-
-RDEPEND="sys-libs/ncurses:0=
- >=app-eselect/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 )
- gpm? ( sys-libs/gpm )
- !inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
- kerberos? ( virtual/krb5 )
- libxml2? ( >=dev-libs/libxml2-2.2.0 )
- selinux? ( sys-libs/libselinux )
- ssl? ( net-libs/gnutls:0= )
- zlib? ( sys-libs/zlib )
- X? (
- x11-libs/libICE
- x11-libs/libSM
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXinerama
- x11-libs/libXrandr
- x11-misc/xbitmaps
- gconf? ( >=gnome-base/gconf-2.26.2 )
- gsettings? ( >=dev-libs/glib-2.28.6 )
- gif? ( media-libs/giflib:0= )
- 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:0= )
- xft? (
- media-libs/fontconfig
- media-libs/freetype
- x11-libs/libXft
- x11-libs/libXrender
- 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
- x11-libs/libXpm
- x11-libs/libXmu
- x11-libs/libXt
- )
- !motif? (
- Xaw3d? (
- x11-libs/libXaw3d
- x11-libs/libXmu
- x11-libs/libXt
- )
- !Xaw3d? ( athena? (
- x11-libs/libXaw
- x11-libs/libXmu
- x11-libs/libXt
- ) )
- )
- )
- )"
-
-DEPEND="${RDEPEND}
- virtual/pkgconfig
- gzip-el? ( app-arch/gzip )
- pax_kernel? ( sys-apps/attr )"
-
-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() {
- eapply ../patch
-
- eapply "${FILESDIR}/${PN}-24.3-stderr.patch"
- eapply "${FILESDIR}/${PN}-24.3-alloc-invalid-frees.patch"
- eapply "${FILESDIR}/${PN}-24.4-configure.patch"
- eapply "${FILESDIR}/${PN}-24.4-preload-hack.patch"
- eapply "${FILESDIR}/${PN}-24.4-lisp.patch"
-
- eapply_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
- touch src/stamp-h.in || die
-}
-
-src_configure() {
- strip-flags
- filter-flags -pie #526948
- append-ldflags $(test-flags -no-pie) #639570
-
- 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 line
- if use gtk; then
- einfo "Configuring to build with GIMP Toolkit (GTK+)"
- while read line; do ewarn "${line}"; done <<-EOF
- Your version of GTK+ will have problems with closing open
- displays. This is no problem if you just use one display, but
- if you use more than one and close one of them Emacs may crash.
- See <https://bugzilla.gnome.org/show_bug.cgi?id=85715>.
- If you intend to use more than one display, then it is strongly
- recommended that you compile Emacs with the Athena/Lucid or the
- Motif toolkit instead.
- EOF
- 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 \
- --without-hesiod \
- --with-file-notification=$(usev inotify || usev gfile || echo no) \
- $(use_enable acl) \
- $(use_with dbus) \
- $(use_with gpm) \
- $(use_with kerberos) $(use_with kerberos kerberos5) \
- $(use_with libxml2 xml2) \
- $(use_with selinux) \
- $(use_with ssl gnutls) \
- $(use_with wide-int) \
- $(use_with zlib) \
- ${myconf}
-}
-
-src_compile() {
- # compile preload hack
- $(tc-getCC) -shared -fPIC -o preload.so "${FILESDIR}/preload.c" || die
-
- # Disable sandbox when dumping. For the unbelievers, see bug #131505
- emake RUN_TEMACS="env SANDBOX_ON=0 LD_PRELOAD=preload.so ./temacs"
-}
-
-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 || die
- 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
- 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
-}
diff --git a/app-editors/emacs/emacs-25.3-r1.ebuild b/app-editors/emacs/emacs-25.3-r1.ebuild
deleted file mode 100644
index 030e523a..00000000
--- a/app-editors/emacs/emacs-25.3-r1.ebuild
+++ /dev/null
@@ -1,371 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit elisp-common flag-o-matic multilib readme.gentoo-r1
-
-DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
-HOMEPAGE="https://www.gnu.org/software/emacs/"
-SRC_URI="mirror://gnu/emacs/${P}.tar.xz"
-
-LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
-SLOT="25"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh ~sparc x86"
-IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gconf gfile gif gpm gsettings gtk +gtk3 gzip-el imagemagick +inotify jpeg kerberos libxml2 livecd m17n-lib motif pax_kernel png selinux sound source ssl svg tiff toolkit-scroll-bars wide-int X Xaw3d xft +xpm zlib"
-REQUIRED_USE="?? ( aqua X )"
-
-RDEPEND="sys-libs/ncurses:0=
- >=app-eselect/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 )
- gpm? ( sys-libs/gpm )
- !inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
- kerberos? ( virtual/krb5 )
- libxml2? ( >=dev-libs/libxml2-2.2.0 )
- selinux? ( sys-libs/libselinux )
- ssl? ( net-libs/gnutls:0= )
- zlib? ( sys-libs/zlib )
- X? (
- x11-libs/libICE
- x11-libs/libSM
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libXinerama
- x11-libs/libXrandr
- x11-libs/libxcb
- x11-misc/xbitmaps
- gconf? ( >=gnome-base/gconf-2.26.2 )
- gsettings? ( >=dev-libs/glib-2.28.6 )
- gif? ( media-libs/giflib:0= )
- 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:0= )
- xft? (
- media-libs/fontconfig
- media-libs/freetype
- x11-libs/libXft
- x11-libs/libXrender
- cairo? ( >=x11-libs/cairo-1.12.18 )
- 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
- x11-libs/libXpm
- x11-libs/libXmu
- x11-libs/libXt
- )
- !motif? (
- Xaw3d? (
- x11-libs/libXaw3d
- x11-libs/libXmu
- x11-libs/libXt
- )
- !Xaw3d? ( athena? (
- x11-libs/libXaw
- x11-libs/libXmu
- x11-libs/libXt
- ) )
- )
- )
- )"
-
-DEPEND="${RDEPEND}
- virtual/pkgconfig
- gzip-el? ( app-arch/gzip )
- pax_kernel? ( sys-apps/attr )"
-
-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() {
- eapply "${FILESDIR}/${PN}-vcs-musl.patch"
-
- eapply_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
- #touch src/stamp-h.in || die
-}
-
-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 cairo)"
- myconf+=" $(use_with m17n-lib libotf)"
- myconf+=" $(use_with m17n-lib m17n-flt)"
- else
- myconf+=" --without-xft"
- myconf+=" --without-cairo"
- myconf+=" --without-libotf --without-m17n-flt"
- use cairo && ewarn \
- "USE flag \"cairo\" has no effect if \"xft\" is not set."
- use m17n-lib && ewarn \
- "USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
- fi
-
- local f line
- if use gtk; then
- einfo "Configuring to build with GIMP Toolkit (GTK+)"
- while read line; do ewarn "${line}"; done <<-EOF
- Your version of GTK+ will have problems with closing open
- displays. This is no problem if you just use one display, but
- if you use more than one and close one of them Emacs may crash.
- See <https://bugzilla.gnome.org/show_bug.cgi?id=85715>.
- If you intend to use more than one display, then it is strongly
- recommended that you compile Emacs with the Athena/Lucid or the
- Motif toolkit instead.
- EOF
- #if use xwidgets; then
- # myconf+=" --with-x-toolkit=gtk3 --with-xwidgets"
- #else
- myconf+=" --with-x-toolkit=$(usex gtk3 gtk3 gtk2)"
- myconf+=" --without-xwidgets"
- #fi
- 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
- #! use gtk && use xwidgets && ewarn \
- # "USE flag \"xwidgets\" has no effect if \"gtk\" is not set."
- 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 \
- --without-hesiod \
- --with-file-notification=$(usev inotify || usev gfile || echo no) \
- $(use_enable acl) \
- $(use_with dbus) \
- $(use_with dynamic-loading modules) \
- $(use_with gpm) \
- $(use_with kerberos) $(use_with kerberos kerberos5) \
- $(use_with libxml2 xml2) \
- $(use_with selinux) \
- $(use_with ssl gnutls) \
- $(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/{appdata,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 || die
- 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 CONTRIBUTE
-
- 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
- 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
-}
diff --git a/app-editors/emacs/emacs-25.3-r3.ebuild b/app-editors/emacs/emacs-25.3-r3.ebuild
deleted file mode 100644
index 8883244e..00000000
--- a/app-editors/emacs/emacs-25.3-r3.ebuild
+++ /dev/null
@@ -1,371 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit elisp-common flag-o-matic multilib readme.gentoo-r1
-
-DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
-HOMEPAGE="https://www.gnu.org/software/emacs/"
-SRC_URI="mirror://gnu/emacs/${P}.tar.xz"
-
-LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
-SLOT="25"
-KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86"
-IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gconf gfile gif gpm gsettings gtk +gtk3 gzip-el imagemagick +inotify jpeg kerberos libxml2 livecd m17n-lib motif pax_kernel png selinux sound source ssl svg tiff toolkit-scroll-bars wide-int X Xaw3d xft +xpm zlib"
-REQUIRED_USE="?? ( aqua X )"
-
-RDEPEND="sys-libs/ncurses:0=
- >=app-eselect/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 )
- gpm? ( sys-libs/gpm )
- !inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
- kerberos? ( virtual/krb5 )
- libxml2? ( >=dev-libs/libxml2-2.2.0 )
- selinux? ( sys-libs/libselinux )
- ssl? ( net-libs/gnutls:0= )
- zlib? ( sys-libs/zlib )
- X? (
- x11-libs/libICE
- x11-libs/libSM
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libXinerama
- x11-libs/libXrandr
- x11-libs/libxcb
- x11-misc/xbitmaps
- gconf? ( >=gnome-base/gconf-2.26.2 )
- gsettings? ( >=dev-libs/glib-2.28.6 )
- gif? ( media-libs/giflib:0= )
- 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:0= )
- xft? (
- media-libs/fontconfig
- media-libs/freetype
- x11-libs/libXft
- x11-libs/libXrender
- cairo? ( >=x11-libs/cairo-1.12.18 )
- 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
- x11-libs/libXpm
- x11-libs/libXmu
- x11-libs/libXt
- )
- !motif? (
- Xaw3d? (
- x11-libs/libXaw3d
- x11-libs/libXmu
- x11-libs/libXt
- )
- !Xaw3d? ( athena? (
- x11-libs/libXaw
- x11-libs/libXmu
- x11-libs/libXt
- ) )
- )
- )
- )"
-
-DEPEND="${RDEPEND}
- virtual/pkgconfig
- gzip-el? ( app-arch/gzip )
- pax_kernel? ( sys-apps/attr )"
-
-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() {
- eapply "${FILESDIR}/${PN}-vcs-musl.patch"
-
- eapply_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
- #touch src/stamp-h.in || die
-}
-
-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 cairo)"
- myconf+=" $(use_with m17n-lib libotf)"
- myconf+=" $(use_with m17n-lib m17n-flt)"
- else
- myconf+=" --without-xft"
- myconf+=" --without-cairo"
- myconf+=" --without-libotf --without-m17n-flt"
- use cairo && ewarn \
- "USE flag \"cairo\" has no effect if \"xft\" is not set."
- use m17n-lib && ewarn \
- "USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
- fi
-
- local f line
- if use gtk; then
- einfo "Configuring to build with GIMP Toolkit (GTK+)"
- while read line; do ewarn "${line}"; done <<-EOF
- Your version of GTK+ will have problems with closing open
- displays. This is no problem if you just use one display, but
- if you use more than one and close one of them Emacs may crash.
- See <https://bugzilla.gnome.org/show_bug.cgi?id=85715>.
- If you intend to use more than one display, then it is strongly
- recommended that you compile Emacs with the Athena/Lucid or the
- Motif toolkit instead.
- EOF
- #if use xwidgets; then
- # myconf+=" --with-x-toolkit=gtk3 --with-xwidgets"
- #else
- myconf+=" --with-x-toolkit=$(usex gtk3 gtk3 gtk2)"
- myconf+=" --without-xwidgets"
- #fi
- 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
- #! use gtk && use xwidgets && ewarn \
- # "USE flag \"xwidgets\" has no effect if \"gtk\" is not set."
- 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 \
- --without-hesiod \
- --with-file-notification=$(usev inotify || usev gfile || echo no) \
- $(use_enable acl) \
- $(use_with dbus) \
- $(use_with dynamic-loading modules) \
- $(use_with gpm) \
- $(use_with kerberos) $(use_with kerberos kerberos5) \
- $(use_with libxml2 xml2) \
- $(use_with selinux) \
- $(use_with ssl gnutls) \
- $(use_with wide-int) \
- $(use_with zlib) \
- ${myconf}
-}
-
-src_compile() {
- # Disable sandbox when dumping. For the unbelievers, see bug #131505
- emake RUN_TEMACS="env SANDBOX_ON=0 LD_PRELOAD= ./temacs"
-}
-
-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/{appdata,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 || die
- 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 CONTRIBUTE
-
- 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
- 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
-}
diff --git a/app-editors/emacs/files/emacs-24.3-alloc-invalid-frees.patch b/app-editors/emacs/files/emacs-24.3-alloc-invalid-frees.patch
deleted file mode 100644
index 1638e5fc..00000000
--- a/app-editors/emacs/files/emacs-24.3-alloc-invalid-frees.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From http://www.openwall.com/lists/musl/2015/02/03/1
-
---- emacs-24.3.orig/src/alloc.c
-+++ emacs-24.3/src/alloc.c
-@@ -47,6 +47,13 @@
-
- #include <verify.h>
-
-+static void *initial_brk;
-+__attribute__((__constructor__))
-+static void init()
-+{
-+ initial_brk = sbrk(0);
-+}
-+
- /* GC_CHECK_MARKED_OBJECTS means do sanity checks on allocated objects.
- Doable only if GC_MARK_STACK. */
- #if ! GC_MARK_STACK
-@@ -699,6 +706,14 @@
- {
- void *val;
-
-+ if (block && block < initial_brk) {
-+ size_t len = (char *)initial_brk - (char *)block;
-+ if (len > size) len = size;
-+ void *p = xmalloc(size);
-+ memcpy(p, block, len);
-+ return p;
-+ }
-+
- MALLOC_BLOCK_INPUT;
- /* We must call malloc explicitly when BLOCK is 0, since some
- reallocs don't do this. */
-@@ -720,6 +735,7 @@
- void
- xfree (void *block)
- {
-+ if (block < initial_brk) return;
- if (!block)
- return;
- MALLOC_BLOCK_INPUT;
-@@ -910,6 +926,7 @@
- static void
- lisp_free (void *block)
- {
-+ if (block < initial_brk) return;
- MALLOC_BLOCK_INPUT;
- free (block);
- #if GC_MARK_STACK && !defined GC_MALLOC_CHECK
-@@ -1117,6 +1134,8 @@
- {
- struct ablock *ablock = block;
- struct ablocks *abase = ABLOCK_ABASE (ablock);
-+
-+ if (block < initial_brk) return;
-
- MALLOC_BLOCK_INPUT;
- #if GC_MARK_STACK && !defined GC_MALLOC_CHECK
diff --git a/app-editors/emacs/files/emacs-24.3-stderr.patch b/app-editors/emacs/files/emacs-24.3-stderr.patch
deleted file mode 100644
index 8c7d552e..00000000
--- a/app-editors/emacs/files/emacs-24.3-stderr.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- emacs-24.3.orig/src/print.c
-+++ emacs-24.3/src/print.c
-@@ -733,7 +733,7 @@
- print_output_debug_flag = x;
- }
-
--#if defined (GNU_LINUX)
-+#if 0
-
- /* This functionality is not vitally important in general, so we rely on
- non-portable ability to use stderr as lvalue. */
diff --git a/app-editors/emacs/files/emacs-24.4-configure.patch b/app-editors/emacs/files/emacs-24.4-configure.patch
deleted file mode 100644
index 8c630091..00000000
--- a/app-editors/emacs/files/emacs-24.4-configure.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/configure.ac 2015-02-03 20:27:53.649248696 -0100
-+++ b/configure.ac 2015-02-03 20:29:40.708910266 -0100
-@@ -2004,6 +2004,7 @@
- ## darwin ld insists on the use of malloc routines in the System framework.
- darwin|sol2-10) system_malloc=yes ;;
- esac
-+system_malloc=yes
-
- GMALLOC_OBJ=
- if test "${system_malloc}" = "yes"; then
diff --git a/app-editors/emacs/files/emacs-24.4-lisp.patch b/app-editors/emacs/files/emacs-24.4-lisp.patch
deleted file mode 100644
index bc8a3f7f..00000000
--- a/app-editors/emacs/files/emacs-24.4-lisp.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/src/lisp.h 2015-02-03 20:42:39.233177373 -0100
-+++ b/src/lisp.h 2015-02-03 20:44:01.780145394 -0100
-@@ -270,6 +270,7 @@
- This can be used in #if, e.g., '#if VAL_MAX < UINTPTR_MAX' below. */
- #define VAL_MAX (EMACS_INT_MAX >> (GCTYPEBITS - 1))
-
-+#define USE_LSB_TAG 1
- /* Unless otherwise specified, use USE_LSB_TAG on systems where: */
- #ifndef USE_LSB_TAG
- /* 1. We know malloc returns a multiple of 8. */
diff --git a/app-editors/emacs/files/emacs-24.4-preload-hack.patch b/app-editors/emacs/files/emacs-24.4-preload-hack.patch
deleted file mode 100644
index 8bed0bd1..00000000
--- a/app-editors/emacs/files/emacs-24.4-preload-hack.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/Makefile.in 2014-05-26 16:50:55.000000000 -0100
-+++ b/src/Makefile.in 2015-02-03 20:25:11.915270649 -0100
-@@ -292,7 +292,7 @@
-
- GETLOADAVG_LIBS = @GETLOADAVG_LIBS@
-
--RUN_TEMACS = ./temacs
-+RUN_TEMACS = LD_PRELOAD=../preload.so ./temacs
-
- ## Invoke ../nt/addsection for MinGW, ":" elsewhere.
- TEMACS_POST_LINK = @TEMACS_POST_LINK@
diff --git a/app-editors/emacs/files/emacs-vcs-musl.patch b/app-editors/emacs/files/emacs-vcs-musl.patch
deleted file mode 100644
index 95a2c268..00000000
--- a/app-editors/emacs/files/emacs-vcs-musl.patch
+++ /dev/null
@@ -1,89 +0,0 @@
-http://www.openwall.com/lists/musl/2015/02/03/1
-
---- emacs-4188e3cc2bc69e75d4387b369e72e89fecc46a86/configure.ac
-+++ emacs/configure.ac
-@@ -2092,7 +2092,7 @@
-
- system_malloc=$emacs_cv_sanitize_address
-
--hybrid_malloc=
-+hybrid_malloc=yes
-
- case "$opsys" in
- ## darwin ld insists on the use of malloc routines in the System framework.
---- emacs-4188e3cc2bc69e75d4387b369e72e89fecc46a86/src/Makefile.in
-+++ emacs/src/Makefile.in
-@@ -373,6 +373,7 @@
- region-cache.o sound.o atimer.o \
- doprnt.o intervals.o textprop.o composite.o xml.o $(NOTIFY_OBJ) \
- profiler.o decompress.o \
-+ sheap.o \
- $(MSDOS_OBJ) $(MSDOS_X_OBJ) $(NS_OBJ) $(CYGWIN_OBJ) $(FONT_OBJ) \
- $(W32_OBJ) $(WINDOW_SYSTEM_OBJ) $(XGSELOBJ)
- obj = $(base_obj) $(NS_OBJC_OBJ)
---- emacs-4188e3cc2bc69e75d4387b369e72e89fecc46a86/src/gmalloc.c
-+++ emacs/src/gmalloc.c
-@@ -72,7 +72,7 @@
- #define free gfree
- #endif /* HYBRID_MALLOC */
-
--#ifdef CYGWIN
-+//#ifdef CYGWIN
- extern void *bss_sbrk (ptrdiff_t size);
- extern int bss_sbrk_did_unexec;
- extern char bss_sbrk_buffer[];
-@@ -80,7 +80,7 @@
- #define DUMPED bss_sbrk_did_unexec
- #define ALLOCATED_BEFORE_DUMPING(P) \
- ((P) < bss_sbrk_buffer_end && (P) >= (void *) bss_sbrk_buffer)
--#endif
-+//#endif
-
- #ifdef __cplusplus
- extern "C"
-@@ -1525,16 +1525,19 @@
- __default_morecore (ptrdiff_t increment)
- {
- void *result;
--#if defined (CYGWIN)
-+//#if defined (CYGWIN)
- if (!DUMPED)
- {
- return bss_sbrk (increment);
- }
--#endif
-+//#endif
-+#if 0
- result = (void *) __sbrk (increment);
- if (result == (void *) -1)
- return NULL;
- return result;
-+#endif
-+ return NULL;
- }
- /* Copyright (C) 1991, 92, 93, 94, 95, 96 Free Software Foundation, Inc.
-
---- emacs-4188e3cc2bc69e75d4387b369e72e89fecc46a86/src/print.c
-+++ emacs/src/print.c
-@@ -755,7 +755,7 @@
- print_output_debug_flag = x;
- }
-
--#if defined (GNU_LINUX)
-+#if defined (GNU_LINUX) && defined (__GLIBC__)
-
- /* This functionality is not vitally important in general, so we rely on
- non-portable ability to use stderr as lvalue. */
---- emacs-4188e3cc2bc69e75d4387b369e72e89fecc46a86/src/unexelf.c
-+++ emacs/src/unexelf.c
-@@ -632,6 +632,9 @@
- off_t new_file_size;
- void *new_break;
-
-+ extern int bss_sbrk_did_unexec;
-+ bss_sbrk_did_unexec = 1;
-+
- /* Pointers to the base of the image of the two files. */
- caddr_t old_base, new_base;
-
-
diff --git a/app-editors/emacs/files/preload.c b/app-editors/emacs/files/preload.c
deleted file mode 100644
index 65cdceff..00000000
--- a/app-editors/emacs/files/preload.c
+++ /dev/null
@@ -1,88 +0,0 @@
-// http://www.openwall.com/lists/musl/2015/02/03/1
-#include <pthread.h>
-#include <stdint.h>
-#include <stdlib.h>
-#include <string.h>
-#include <dlfcn.h>
-#include <unistd.h>
-#include <stdio.h>
-
-static void *(*real_malloc)(size_t);
-static void *initial_brk;
-
-static pthread_once_t once_control[1];
-static void once_func()
-{
- real_malloc = dlsym(RTLD_NEXT, "malloc");
- initial_brk = sbrk(0);
-}
-
-static int cmp(const void *a, const void *b)
-{
- void *aa = *(void **)a, *bb = *(void **)b;
- return aa < bb ? -1 : aa > bb ? 1 : 0;
-}
-
-void *malloc(size_t n)
-{
- size_t i, j, k;
- pthread_once(once_control, once_func);
- if (n < 100000 || n > (size_t)-1/2) {
- void *p;
- do p = real_malloc(n);
- while (p > sbrk(0) || (p && p < initial_brk));
- return p;
- }
- size_t cnt = n/16384;
- void **list = real_malloc(sizeof *list * cnt);
- if (!list) return 0;
- for (i=0; i<cnt; i++) list[i] = 0;
- for (i=0; i<cnt; i++) {
- list[i] = real_malloc(65536 - 2*sizeof(size_t));
- if (!list[i]) goto fail;
- if (i<cnt/4) continue;
- size_t base = 0;
- qsort(list, i+1, sizeof(void *), cmp);
- for (j=0; j<i; j++) {
- char *p = list[base];
- char *s = list[j];
- char *z = list[j+1];
- if (z-s > 65536) {
- base = j+1;
- continue;
- }
- if (z-p < n+64) {
- continue;
- }
- for (k=0; k<base; k++) free(list[k]);
- *(size_t *)(p-sizeof(size_t)) = z-p | 1;
- *(size_t *)(z-2*sizeof(size_t)) = z-p | 1;
- for (k=j+1; k<i+1; k++) free(list[k]);
- free(list);
- return p;
- }
- }
-fail:
- for (i=0; i<cnt; i++) free(list[i]);
- free(list);
- return 0;
-}
-
-void *calloc(size_t n, size_t m)
-{
- if ((size_t)-1/n <= m) n *= m;
- else n = (size_t)-1;
- void *p = malloc(n);
- if (p) memset(p, 0, n);
- return p;
-}
-
-void *realloc(void *p, size_t n)
-{
- void *q = malloc(n);
- if (!q) return 0;
- size_t l = *(size_t *)((char *)p - sizeof(size_t)) & -8;
- memcpy(q, p, l<n ? l : n);
- free(p);
- return q;
-}
diff --git a/app-editors/emacs/metadata.xml b/app-editors/emacs/metadata.xml
deleted file mode 100644
index d0265f5f..00000000
--- a/app-editors/emacs/metadata.xml
+++ /dev/null
@@ -1,52 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>gnu-emacs@gentoo.org</email>
- <name>Gentoo GNU Emacs project</name>
-</maintainer>
-<longdescription>
- GNU Emacs is an extensible, customizable text editor - and more. At its core
- is an interpreter for Emacs Lisp, a dialect of the Lisp programming language
- with extensions to support text editing. The features of GNU Emacs include:
- * Content-sensitive editing modes, including syntax coloring, for a variety
- of file types including plain text, source code, and HTML.
- * Complete built-in documentation, including a tutorial for new users.
- * Full Unicode support for nearly all human languages and their scripts.
- * Highly customizable, using Emacs Lisp code or a graphical interface.
- * A large number of extensions that add other functionality, including a
- project planner, mail and news reader, debugger interface, calendar, and
- more. Many of these extensions are distributed with GNU Emacs; others are
- available separately.
-</longdescription>
-<use>
- <flag name="athena">Enable the MIT Athena widget set
- (<pkg>x11-libs/libXaw</pkg>)</flag>
- <flag name="dynamic-loading">Enable loading of dynamic libraries at
- runtime</flag>
- <flag name="games">Support shared score files for games</flag>
- <flag name="gconf">Use <pkg>gnome-base/gconf</pkg> to read the system
- font name</flag>
- <flag name="gfile">Use gfile (<pkg>dev-libs/glib</pkg>) for file
- notification</flag>
- <flag name="gsettings">Use gsettings (<pkg>dev-libs/glib</pkg>) to read the
- system font name</flag>
- <flag name="gtk3">Prefer version 3 of the GIMP Toolkit to version 2
- (<pkg>x11-libs/gtk+</pkg>)</flag>
- <flag name="gzip-el">Compress bundled Emacs Lisp source</flag>
- <flag name="imagemagick">Use <pkg>media-gfx/imagemagick</pkg> for image
- processing</flag>
- <flag name="libxml2">Use <pkg>dev-libs/libxml2</pkg> to parse XML instead
- of the internal Lisp implementations</flag>
- <flag name="pax_kernel">Enable building under a PaX enabled kernel</flag>
- <flag name="source">Install C source files and make them available for
- find-function</flag>
- <flag name="toolkit-scroll-bars">Use the selected toolkit's scrollbars in
- preference to Emacs' own scrollbars</flag>
- <flag name="wide-int">Prefer wide Emacs integers (typically 62-bit).
- This option has an effect only on architectures where "long" and
- "long long" types have different size.</flag>
- <!--flag name='xwidgets'>Enable use of GTK widgets in Emacs buffers
- (requires GTK3)</flag-->
-</use>
-</pkgmetadata>