Gentoo Archives: gentoo-commits

From: Felix Janda <felix.janda@××××××.de>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/musl:master commit in: app-editors/emacs/
Date: Sat, 03 Feb 2018 19:44:34
Message-Id: 1517686386.1778fe5e20241db72ebf34d8102a4aa66d4956e0.doughdemon@gentoo
1 commit: 1778fe5e20241db72ebf34d8102a4aa66d4956e0
2 Author: Felix Janda <felix.janda <AT> posteo <DOT> de>
3 AuthorDate: Sat Feb 3 19:33:06 2018 +0000
4 Commit: Felix Janda <felix.janda <AT> posteo <DOT> de>
5 CommitDate: Sat Feb 3 19:33:06 2018 +0000
6 URL: https://gitweb.gentoo.org/proj/musl.git/commit/?id=1778fe5e
7
8 app-editors/emacs clean old
9
10 app-editors/emacs/Manifest | 5 +-
11 app-editors/emacs/emacs-24.5-r3.ebuild | 354 --------------------------------
12 app-editors/emacs/emacs-25.2-r1.ebuild | 361 ---------------------------------
13 app-editors/emacs/emacs-25.2.ebuild | 358 --------------------------------
14 4 files changed, 1 insertion(+), 1077 deletions(-)
15
16 diff --git a/app-editors/emacs/Manifest b/app-editors/emacs/Manifest
17 index 199e79d..ffd77aa 100644
18 --- a/app-editors/emacs/Manifest
19 +++ b/app-editors/emacs/Manifest
20 @@ -1,6 +1,3 @@
21 -DIST emacs-24.5-patches-3.tar.xz 12500 SHA256 4927e037141c0c242d0d6d3aa7dfde140faae361aa556e6ded64b7ab26819f07 SHA512 9bddca3d4a67b57ca03c26fbca378def345592a95c40e868fc47fd9944ed0f750bc30f3a4d588a8a0b4c90daa6c9ed63b56182e8d2d87b4c8d849bf834ead1cc WHIRLPOOL c16cbfda1040b205ced4c1ed120aad6f65285fb315ce89dc936e6a357fbc8f9215fb178b696d2a914c53c6869384f0b1b56fcb6b84c5438f026101b4989de6c5
22 DIST emacs-24.5-patches-4.tar.xz 13632 SHA256 3b2d7c2034711d114494745780b6521150aa0c524966cbaceeb8d4d053dcbdd3 SHA512 569c3a55aaf1102c0bae4ab25ee06372763cd2de8a54e26b3eefd54e585cf90b53c8ffe1ca48eb4fd312a340380fd3f2fcdb584697814bf429129b48fa56ffb5 WHIRLPOOL 1855ac4178faafcc2d86141e023ff2626246c87e7ff2e7bfbaf9a989e9a48d2767acb9f7af99924cd7db04d34913a42764490831b7b45a34bcd131999180ff28
23 -DIST emacs-24.5.tar.xz 39759804 SHA256 dd47d71dd2a526cf6b47cb49af793ec2e26af69a0951cc40e43ae290eacfc34e SHA512 89dee4c3aadb6e505c523f84c65b5e40e5bf28a586cc8a4518a59581c22972f942bb6f3c772df0d5b2685c3e78247c545c6bb2576e981d1ef0f9298c18ad1677 WHIRLPOOL 3d9f8fb840f4c846246e642369f967ba0ec357c7cf718ed865523a3cd39605ba14b8c15fc9ae3f076c27e5b6e41fcb681d15f1c6ffc5934430c0a2bf47c233a3
24 -DIST emacs-25.2-patches-1.tar.xz 2104 SHA256 ea0ba1cf1fb06eb76907cc034acb440af1147bdc0fa849ba8185d016fe58e4ff SHA512 45c666ba6332c8fb60a925c6af9c0da113f46055159d931feddb99ce19b2a03e0101b3a4d671fe699cd5f33fd58a25791bfb8b16e20f463e5d304902ee24854a WHIRLPOOL 97c49266b7be18f028ae939dbdcfd3933637770506f108fcd9d08fa33c63f376fbb6fe520e42ec28adb6d4527c298173bffe596af774748946a3d8a130aa90f7
25 -DIST emacs-25.2.tar.xz 46900336 SHA256 59b55194c9979987c5e9f1a1a4ab5406714e80ffcfd415cc6b9222413bc073fa SHA512 2485d5ccd58ecc953cbd2458bdfa45e3c9a6ddfdb1b93c72b957a0da2460d4e42092905e039e8f5bac337ea1ecb9ac404b28702a363323ee5813b30032ebf00c WHIRLPOOL 98de8ad164cf65b21e5fbfdbd7fcee84da32e3de66715d2f03f3c4d03cfa68d49aff2124e5da331282bb5fd9c2b2fbac4ddfd0985e907d2354994c783dddd83f
26 +DIST emacs-24.5.tar.xz 39759804 BLAKE2B aec253528038686822d1f8ed9a52dff276789ef7744053fc9b6176fceba4d4d8684fe979cf97e756b3feaf734d2377baef81f5efaa5450930a4e94d9f3bca355 SHA512 89dee4c3aadb6e505c523f84c65b5e40e5bf28a586cc8a4518a59581c22972f942bb6f3c772df0d5b2685c3e78247c545c6bb2576e981d1ef0f9298c18ad1677
27 DIST emacs-25.3.tar.xz 42854740 SHA256 253ac5e7075e594549b83fd9ec116a9dc37294d415e2f21f8ee109829307c00b SHA512 1cce656451b6ca8502ebb229e88bd3ef48b7f9444a10eeac4ea43bd5491b2efacd641dfa35227a33362c3866493d3449cf1df81606563eef44bba0ed668e457f WHIRLPOOL 603ec6b203523a22556e48616b4a5ab227c32d3653ac4b713e6cb0357e3556964bc92a1818b417bbf9037cca7dac55935da9458dc3d29b3bb24d66157e74c8df
28
29 diff --git a/app-editors/emacs/emacs-24.5-r3.ebuild b/app-editors/emacs/emacs-24.5-r3.ebuild
30 deleted file mode 100644
31 index daba883..0000000
32 --- a/app-editors/emacs/emacs-24.5-r3.ebuild
33 +++ /dev/null
34 @@ -1,354 +0,0 @@
35 -# Copyright 1999-2017 Gentoo Foundation
36 -# Distributed under the terms of the GNU General Public License v2
37 -
38 -EAPI=6
39 -
40 -inherit autotools elisp-common eutils flag-o-matic multilib readme.gentoo-r1
41 -
42 -DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
43 -HOMEPAGE="https://www.gnu.org/software/emacs/"
44 -SRC_URI="mirror://gnu/emacs/${P}.tar.xz
45 - https://dev.gentoo.org/~ulm/emacs/${P}-patches-3.tar.xz"
46 -
47 -LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
48 -SLOT="24"
49 -KEYWORDS="amd64 arm ia64 ~mips ppc ~sh sparc x86"
50 -IUSE="acl alsa aqua athena dbus games gconf gfile gif gpm gsettings gtk +gtk3 gzip-el hesiod 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"
51 -REQUIRED_USE="?? ( aqua X )"
52 -
53 -RDEPEND="sys-libs/ncurses:0=
54 - >=app-eselect/eselect-emacs-1.16
55 - >=app-emacs/emacs-common-gentoo-1.5[games?,X?]
56 - net-libs/liblockfile
57 - acl? ( virtual/acl )
58 - alsa? ( media-libs/alsa-lib )
59 - dbus? ( sys-apps/dbus )
60 - gpm? ( sys-libs/gpm )
61 - hesiod? ( net-dns/hesiod )
62 - !inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
63 - kerberos? ( virtual/krb5 )
64 - libxml2? ( >=dev-libs/libxml2-2.2.0 )
65 - selinux? ( sys-libs/libselinux )
66 - ssl? ( net-libs/gnutls:0= )
67 - zlib? ( sys-libs/zlib )
68 - X? (
69 - x11-libs/libXmu
70 - x11-libs/libXt
71 - x11-misc/xbitmaps
72 - gconf? ( >=gnome-base/gconf-2.26.2 )
73 - gsettings? ( >=dev-libs/glib-2.28.6 )
74 - gif? ( media-libs/giflib:0= )
75 - jpeg? ( virtual/jpeg:0= )
76 - png? ( >=media-libs/libpng-1.4:0= )
77 - svg? ( >=gnome-base/librsvg-2.0 )
78 - tiff? ( media-libs/tiff:0 )
79 - xpm? ( x11-libs/libXpm )
80 - imagemagick? ( >=media-gfx/imagemagick-6.6.2:0= )
81 - xft? (
82 - media-libs/fontconfig
83 - media-libs/freetype
84 - x11-libs/libXft
85 - m17n-lib? (
86 - >=dev-libs/libotf-0.9.4
87 - >=dev-libs/m17n-lib-1.5.1
88 - )
89 - )
90 - gtk? (
91 - gtk3? ( x11-libs/gtk+:3 )
92 - !gtk3? ( x11-libs/gtk+:2 )
93 - )
94 - !gtk? (
95 - motif? ( >=x11-libs/motif-2.3:0 )
96 - !motif? (
97 - Xaw3d? ( x11-libs/libXaw3d )
98 - !Xaw3d? ( athena? ( x11-libs/libXaw ) )
99 - )
100 - )
101 - )"
102 -
103 -DEPEND="${RDEPEND}
104 - virtual/pkgconfig
105 - gzip-el? ( app-arch/gzip )
106 - pax_kernel? ( sys-apps/attr )"
107 -
108 -RDEPEND="${RDEPEND}
109 - !<app-editors/emacs-vcs-${PV}"
110 -
111 -EMACS_SUFFIX="${PN/emacs/emacs-${SLOT}}"
112 -SITEFILE="20${PN}-${SLOT}-gentoo.el"
113 -# FULL_VERSION keeps the full version number, which is needed in
114 -# order to determine some path information correctly for copy/move
115 -# operations later on
116 -FULL_VERSION="${PV%%_*}"
117 -S="${WORKDIR}/emacs-${FULL_VERSION}"
118 -
119 -src_prepare() {
120 - eapply ../patch
121 -
122 - eapply "${FILESDIR}/${PN}-24.3-stderr.patch"
123 - eapply "${FILESDIR}/${PN}-24.3-alloc-invalid-frees.patch"
124 - eapply "${FILESDIR}/${PN}-24.4-configure.patch"
125 - eapply "${FILESDIR}/${PN}-24.4-preload-hack.patch"
126 - eapply "${FILESDIR}/${PN}-24.4-lisp.patch"
127 -
128 - eapply_user
129 -
130 - # Fix filename reference in redirected man page
131 - sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 \
132 - || die "unable to sed ctags.1"
133 -
134 - AT_M4DIR=m4 eautoreconf
135 - touch src/stamp-h.in || die
136 -}
137 -
138 -src_configure() {
139 - strip-flags
140 - filter-flags -pie #526948
141 -
142 - if use sh; then
143 - replace-flags "-O[1-9]" -O0 #262359
144 - elif use ia64; then
145 - replace-flags "-O[2-9]" -O1 #325373
146 - else
147 - replace-flags "-O[3-9]" -O2
148 - fi
149 -
150 - local myconf
151 -
152 - if use alsa; then
153 - use sound || ewarn \
154 - "USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
155 - myconf+=" --with-sound=alsa"
156 - else
157 - myconf+=" --with-sound=$(usex sound oss)"
158 - fi
159 -
160 - if use X; then
161 - myconf+=" --with-x --without-ns"
162 - myconf+=" $(use_with gconf)"
163 - myconf+=" $(use_with gsettings)"
164 - myconf+=" $(use_with toolkit-scroll-bars)"
165 - myconf+=" $(use_with gif)"
166 - myconf+=" $(use_with jpeg)"
167 - myconf+=" $(use_with png)"
168 - myconf+=" $(use_with svg rsvg)"
169 - myconf+=" $(use_with tiff)"
170 - myconf+=" $(use_with xpm)"
171 - myconf+=" $(use_with imagemagick)"
172 -
173 - if use xft; then
174 - myconf+=" --with-xft"
175 - myconf+=" $(use_with m17n-lib libotf)"
176 - myconf+=" $(use_with m17n-lib m17n-flt)"
177 - else
178 - myconf+=" --without-xft"
179 - myconf+=" --without-libotf --without-m17n-flt"
180 - use m17n-lib && ewarn \
181 - "USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
182 - fi
183 -
184 - local f line
185 - if use gtk; then
186 - einfo "Configuring to build with GIMP Toolkit (GTK+)"
187 - while read line; do ewarn "${line}"; done <<-EOF
188 - Your version of GTK+ will have problems with closing open
189 - displays. This is no problem if you just use one display, but
190 - if you use more than one and close one of them Emacs may crash.
191 - See <https://bugzilla.gnome.org/show_bug.cgi?id=85715>.
192 - If you intend to use more than one display, then it is strongly
193 - recommended that you compile Emacs with the Athena/Lucid or the
194 - Motif toolkit instead.
195 - EOF
196 - myconf+=" --with-x-toolkit=$(usex gtk3 gtk3 gtk2)"
197 - for f in motif Xaw3d athena; do
198 - use ${f} && ewarn \
199 - "USE flag \"${f}\" has no effect if \"gtk\" is set."
200 - done
201 - elif use motif; then
202 - einfo "Configuring to build with Motif toolkit"
203 - myconf+=" --with-x-toolkit=motif"
204 - for f in Xaw3d athena; do
205 - use ${f} && ewarn \
206 - "USE flag \"${f}\" has no effect if \"motif\" is set."
207 - done
208 - elif use athena || use Xaw3d; then
209 - einfo "Configuring to build with Athena/Lucid toolkit"
210 - myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
211 - else
212 - einfo "Configuring to build with no toolkit"
213 - myconf+=" --with-x-toolkit=no"
214 - fi
215 - elif use aqua; then
216 - einfo "Configuring to build with Nextstep (Cocoa) support"
217 - myconf+=" --with-ns --disable-ns-self-contained"
218 - myconf+=" --without-x"
219 - else
220 - myconf+=" --without-x --without-ns"
221 - fi
222 -
223 - # Save version information in the Emacs binary. It will be available
224 - # in variable "system-configuration-options".
225 - myconf+=" GENTOO_PACKAGE=${CATEGORY}/${PF}"
226 -
227 - econf \
228 - --program-suffix="-${EMACS_SUFFIX}" \
229 - --infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
230 - --localstatedir="${EPREFIX}"/var \
231 - --enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
232 - --with-gameuser=":gamestat" \
233 - --without-compress-install \
234 - --with-file-notification=$(usev inotify || usev gfile || echo no) \
235 - $(use_enable acl) \
236 - $(use_with dbus) \
237 - $(use_with gpm) \
238 - $(use_with hesiod) \
239 - $(use_with kerberos) $(use_with kerberos kerberos5) \
240 - $(use_with libxml2 xml2) \
241 - $(use_with selinux) \
242 - $(use_with ssl gnutls) \
243 - $(use_with wide-int) \
244 - $(use_with zlib) \
245 - ${myconf}
246 -}
247 -
248 -src_compile() {
249 - # compile preload hack
250 - $(tc-getCC) -shared -fPIC -o preload.so "${FILESDIR}/preload.c" || die
251 -
252 - export SANDBOX_ON=0 # for the unbelievers, see Bug #131505
253 - emake
254 -}
255 -
256 -src_install () {
257 - emake DESTDIR="${D}" NO_BIN_LINK=t install
258 -
259 - mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} \
260 - || die "moving emacs executable failed"
261 - mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 \
262 - || die "moving emacs man page failed"
263 -
264 - # move info dir to avoid collisions with the dir file generated by portage
265 - mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} \
266 - || die "moving info dir failed"
267 - touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
268 - docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
269 -
270 - # avoid collision between slots, see bug #169033 e.g.
271 - rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el
272 - rm -rf "${ED}"/usr/share/{applications,icons}
273 - rm -rf "${ED}"/var
274 -
275 - # remove unused <version>/site-lisp dir
276 - rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp
277 -
278 - # remove COPYING file (except for etc/COPYING used by describe-copying)
279 - rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING
280 -
281 - if use gzip-el; then
282 - # compress .el files when a corresponding .elc exists
283 - find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
284 - -name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
285 - assert "gzip .el failed"
286 - fi
287 -
288 - local cdir
289 - if use source; then
290 - cdir="/usr/share/emacs/${FULL_VERSION}/src"
291 - insinto "${cdir}"
292 - # This is not meant to install all the source -- just the
293 - # C source you might find via find-function
294 - doins src/*.{c,h,m}
295 - elif has installsources ${FEATURES}; then
296 - cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
297 - fi
298 -
299 - sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF
300 - X
301 - ;;; ${PN}-${SLOT} site-lisp configuration
302 - X
303 - (when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
304 - Y (setq find-function-C-source-directory
305 - Y "${EPREFIX}${cdir}")
306 - X (let ((path (getenv "INFOPATH"))
307 - X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
308 - X (re "\\\\\`${EPREFIX}/usr/share/info\\\\>"))
309 - X (and path
310 - X ;; move Emacs Info dir before anything else in /usr/share/info
311 - X (let* ((p (cons nil (split-string path ":" t))) (q p))
312 - X (while (and (cdr q) (not (string-match re (cadr q))))
313 - X (setq q (cdr q)))
314 - X (setcdr q (cons dir (delete dir (cdr q))))
315 - X (setq Info-directory-list (prune-directory-list (cdr p)))))))
316 - EOF
317 - elisp-site-file-install "${T}/${SITEFILE}" || die
318 -
319 - dodoc README BUGS
320 -
321 - if use aqua; then
322 - dodir /Applications/Gentoo
323 - rm -rf "${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app
324 - mv nextstep/Emacs.app \
325 - "${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app || die
326 - fi
327 -
328 - DOC_CONTENTS="You can set the version to be started by /usr/bin/emacs
329 - through the Emacs eselect module, which also redirects man and info
330 - pages. Therefore, several Emacs versions can be installed at the
331 - same time. \"man emacs.eselect\" for details.
332 - \\n\\nIf you upgrade from Emacs version 24.2 or earlier, then it is
333 - strongly recommended that you use app-admin/emacs-updater to rebuild
334 - all byte-compiled elisp files of the installed Emacs packages."
335 - use X && DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
336 - Installing media-fonts/font-adobe-{75,100}dpi on the X server's
337 - machine would satisfy basic Emacs requirements under X11.
338 - See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
339 - for how to enable anti-aliased fonts."
340 - use aqua && DOC_CONTENTS+="\\n\\nEmacs${EMACS_SUFFIX#emacs}.app is in
341 - \"${EPREFIX}/Applications/Gentoo\". You may want to copy or symlink
342 - it into /Applications by yourself."
343 - readme.gentoo_create_doc
344 -}
345 -
346 -pkg_preinst() {
347 - # move Info dir file to correct name
348 - local infodir=/usr/share/info/${EMACS_SUFFIX} f
349 - if [[ -f ${ED}${infodir}/dir.orig ]]; then
350 - mv "${ED}"${infodir}/dir{.orig,} || die "moving info dir failed"
351 - elif [[ -d "${ED}"${infodir} ]]; then
352 - # this should not happen in EAPI 4
353 - ewarn "Regenerating Info directory index in ${infodir} ..."
354 - rm -f "${ED}"${infodir}/dir{,.*}
355 - for f in "${ED}"${infodir}/*; do
356 - if [[ ${f##*/} != *-[0-9]* && -e ${f} ]]; then
357 - install-info --info-dir="${ED}"${infodir} "${f}" \
358 - || die "install-info failed"
359 - fi
360 - done
361 - fi
362 -}
363 -
364 -pkg_postinst() {
365 - elisp-site-regen
366 -
367 - local pvr
368 - for pvr in ${REPLACING_VERSIONS}; do
369 - [[ ${pvr%%[-_]*} = 24.[12] ]] && FORCE_PRINT_ELOG=1
370 - done
371 - readme.gentoo_print_elog
372 -
373 - if use livecd; then
374 - # force an update of the emacs symlink for the livecd/dvd,
375 - # because some microemacs packages set it with USE=livecd
376 - eselect emacs update
377 - elif [[ $(readlink "${EROOT}"/usr/bin/emacs) = ${EMACS_SUFFIX} ]]; then
378 - # refresh symlinks in case any installed files have changed
379 - eselect emacs set ${EMACS_SUFFIX}
380 - else
381 - eselect emacs update ifunset
382 - fi
383 -}
384 -
385 -pkg_postrm() {
386 - elisp-site-regen
387 - eselect emacs update ifunset
388 -}
389
390 diff --git a/app-editors/emacs/emacs-25.2-r1.ebuild b/app-editors/emacs/emacs-25.2-r1.ebuild
391 deleted file mode 100644
392 index 15a462c..0000000
393 --- a/app-editors/emacs/emacs-25.2-r1.ebuild
394 +++ /dev/null
395 @@ -1,361 +0,0 @@
396 -# Copyright 1999-2017 Gentoo Foundation
397 -# Distributed under the terms of the GNU General Public License v2
398 -
399 -EAPI=6
400 -
401 -inherit elisp-common flag-o-matic multilib readme.gentoo-r1
402 -
403 -DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
404 -HOMEPAGE="https://www.gnu.org/software/emacs/"
405 -SRC_URI="mirror://gnu/emacs/${P}.tar.xz
406 - https://dev.gentoo.org/~ulm/emacs/${P}-patches-1.tar.xz"
407 -
408 -LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
409 -SLOT="25"
410 -KEYWORDS="~amd64 arm ia64 ~mips ~ppc ~sh ~sparc ~x86"
411 -IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gconf gfile gif gpm gsettings gtk +gtk3 gzip-el hesiod 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 xwidgets zlib"
412 -REQUIRED_USE="?? ( aqua X )"
413 -
414 -RDEPEND="sys-libs/ncurses:0=
415 - >=app-eselect/eselect-emacs-1.16
416 - >=app-emacs/emacs-common-gentoo-1.5[games?,X?]
417 - net-libs/liblockfile
418 - acl? ( virtual/acl )
419 - alsa? ( media-libs/alsa-lib )
420 - dbus? ( sys-apps/dbus )
421 - gpm? ( sys-libs/gpm )
422 - hesiod? ( net-dns/hesiod )
423 - !inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
424 - kerberos? ( virtual/krb5 )
425 - libxml2? ( >=dev-libs/libxml2-2.2.0 )
426 - selinux? ( sys-libs/libselinux )
427 - ssl? ( net-libs/gnutls:0= )
428 - zlib? ( sys-libs/zlib )
429 - X? (
430 - x11-libs/libXmu
431 - x11-libs/libXt
432 - x11-misc/xbitmaps
433 - gconf? ( >=gnome-base/gconf-2.26.2 )
434 - gsettings? ( >=dev-libs/glib-2.28.6 )
435 - gif? ( media-libs/giflib:0= )
436 - jpeg? ( virtual/jpeg:0= )
437 - png? ( >=media-libs/libpng-1.4:0= )
438 - svg? ( >=gnome-base/librsvg-2.0 )
439 - tiff? ( media-libs/tiff:0 )
440 - xpm? ( x11-libs/libXpm )
441 - imagemagick? ( >=media-gfx/imagemagick-6.6.2:0= )
442 - xft? (
443 - media-libs/fontconfig
444 - media-libs/freetype
445 - x11-libs/libXft
446 - cairo? ( >=x11-libs/cairo-1.12.18 )
447 - m17n-lib? (
448 - >=dev-libs/libotf-0.9.4
449 - >=dev-libs/m17n-lib-1.5.1
450 - )
451 - )
452 - gtk? (
453 - xwidgets? (
454 - x11-libs/gtk+:3
455 - net-libs/webkit-gtk:3=
456 - )
457 - !xwidgets? (
458 - gtk3? ( x11-libs/gtk+:3 )
459 - !gtk3? ( x11-libs/gtk+:2 )
460 - )
461 - )
462 - !gtk? (
463 - motif? ( >=x11-libs/motif-2.3:0 )
464 - !motif? (
465 - Xaw3d? ( x11-libs/libXaw3d )
466 - !Xaw3d? ( athena? ( x11-libs/libXaw ) )
467 - )
468 - )
469 - )"
470 -
471 -DEPEND="${RDEPEND}
472 - virtual/pkgconfig
473 - gzip-el? ( app-arch/gzip )
474 - pax_kernel? ( sys-apps/attr )"
475 -
476 -RDEPEND="${RDEPEND}
477 - !<app-editors/emacs-vcs-${PV}"
478 -
479 -EMACS_SUFFIX="${PN/emacs/emacs-${SLOT}}"
480 -SITEFILE="20${PN}-${SLOT}-gentoo.el"
481 -# FULL_VERSION keeps the full version number, which is needed in
482 -# order to determine some path information correctly for copy/move
483 -# operations later on
484 -FULL_VERSION="${PV%%_*}"
485 -S="${WORKDIR}/emacs-${FULL_VERSION}"
486 -
487 -src_prepare() {
488 - eapply ../patch
489 -
490 - eapply "${FILESDIR}/${PN}-vcs-musl.patch"
491 -
492 - eapply_user
493 -
494 - # Fix filename reference in redirected man page
495 - sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 \
496 - || die "unable to sed ctags.1"
497 -
498 - #AT_M4DIR=m4 eautoreconf
499 - #touch src/stamp-h.in || die
500 -}
501 -
502 -src_configure() {
503 - strip-flags
504 - filter-flags -pie #526948
505 -
506 - if use sh; then
507 - replace-flags "-O[1-9]" -O0 #262359
508 - elif use ia64; then
509 - replace-flags "-O[2-9]" -O1 #325373
510 - else
511 - replace-flags "-O[3-9]" -O2
512 - fi
513 -
514 - local myconf
515 -
516 - if use alsa; then
517 - use sound || ewarn \
518 - "USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
519 - myconf+=" --with-sound=alsa"
520 - else
521 - myconf+=" --with-sound=$(usex sound oss)"
522 - fi
523 -
524 - if use X; then
525 - myconf+=" --with-x --without-ns"
526 - myconf+=" $(use_with gconf)"
527 - myconf+=" $(use_with gsettings)"
528 - myconf+=" $(use_with toolkit-scroll-bars)"
529 - myconf+=" $(use_with gif)"
530 - myconf+=" $(use_with jpeg)"
531 - myconf+=" $(use_with png)"
532 - myconf+=" $(use_with svg rsvg)"
533 - myconf+=" $(use_with tiff)"
534 - myconf+=" $(use_with xpm)"
535 - myconf+=" $(use_with imagemagick)"
536 -
537 - if use xft; then
538 - myconf+=" --with-xft"
539 - myconf+=" $(use_with cairo)"
540 - myconf+=" $(use_with m17n-lib libotf)"
541 - myconf+=" $(use_with m17n-lib m17n-flt)"
542 - else
543 - myconf+=" --without-xft"
544 - myconf+=" --without-cairo"
545 - myconf+=" --without-libotf --without-m17n-flt"
546 - use cairo && ewarn \
547 - "USE flag \"cairo\" has no effect if \"xft\" is not set."
548 - use m17n-lib && ewarn \
549 - "USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
550 - fi
551 -
552 - local f line
553 - if use gtk; then
554 - einfo "Configuring to build with GIMP Toolkit (GTK+)"
555 - while read line; do ewarn "${line}"; done <<-EOF
556 - Your version of GTK+ will have problems with closing open
557 - displays. This is no problem if you just use one display, but
558 - if you use more than one and close one of them Emacs may crash.
559 - See <https://bugzilla.gnome.org/show_bug.cgi?id=85715>.
560 - If you intend to use more than one display, then it is strongly
561 - recommended that you compile Emacs with the Athena/Lucid or the
562 - Motif toolkit instead.
563 - EOF
564 - if use xwidgets; then
565 - myconf+=" --with-x-toolkit=gtk3 --with-xwidgets"
566 - else
567 - myconf+=" --with-x-toolkit=$(usex gtk3 gtk3 gtk2)"
568 - myconf+=" --without-xwidgets"
569 - fi
570 - for f in motif Xaw3d athena; do
571 - use ${f} && ewarn \
572 - "USE flag \"${f}\" has no effect if \"gtk\" is set."
573 - done
574 - elif use motif; then
575 - einfo "Configuring to build with Motif toolkit"
576 - myconf+=" --with-x-toolkit=motif"
577 - for f in Xaw3d athena; do
578 - use ${f} && ewarn \
579 - "USE flag \"${f}\" has no effect if \"motif\" is set."
580 - done
581 - elif use athena || use Xaw3d; then
582 - einfo "Configuring to build with Athena/Lucid toolkit"
583 - myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
584 - else
585 - einfo "Configuring to build with no toolkit"
586 - myconf+=" --with-x-toolkit=no"
587 - fi
588 - ! use gtk && use xwidgets && ewarn \
589 - "USE flag \"xwidgets\" has no effect if \"gtk\" is not set."
590 - elif use aqua; then
591 - einfo "Configuring to build with Nextstep (Cocoa) support"
592 - myconf+=" --with-ns --disable-ns-self-contained"
593 - myconf+=" --without-x"
594 - else
595 - myconf+=" --without-x --without-ns"
596 - fi
597 -
598 - # Save version information in the Emacs binary. It will be available
599 - # in variable "system-configuration-options".
600 - myconf+=" GENTOO_PACKAGE=${CATEGORY}/${PF}"
601 -
602 - econf \
603 - --program-suffix="-${EMACS_SUFFIX}" \
604 - --infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
605 - --localstatedir="${EPREFIX}"/var \
606 - --enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
607 - --with-gameuser=":gamestat" \
608 - --without-compress-install \
609 - --with-file-notification=$(usev inotify || usev gfile || echo no) \
610 - $(use_enable acl) \
611 - $(use_with dbus) \
612 - $(use_with dynamic-loading modules) \
613 - $(use_with gpm) \
614 - $(use_with hesiod) \
615 - $(use_with kerberos) $(use_with kerberos kerberos5) \
616 - $(use_with libxml2 xml2) \
617 - $(use_with selinux) \
618 - $(use_with ssl gnutls) \
619 - $(use_with wide-int) \
620 - $(use_with zlib) \
621 - ${myconf}
622 -}
623 -
624 -src_compile() {
625 - export SANDBOX_ON=0 # for the unbelievers, see Bug #131505
626 - emake
627 -}
628 -
629 -src_install () {
630 - emake DESTDIR="${D}" NO_BIN_LINK=t install
631 -
632 - mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} \
633 - || die "moving emacs executable failed"
634 - mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 \
635 - || die "moving emacs man page failed"
636 -
637 - # move info dir to avoid collisions with the dir file generated by portage
638 - mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} \
639 - || die "moving info dir failed"
640 - touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
641 - docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
642 -
643 - # avoid collision between slots, see bug #169033 e.g.
644 - rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el
645 - rm -rf "${ED}"/usr/share/{appdata,applications,icons}
646 - rm -rf "${ED}"/var
647 -
648 - # remove unused <version>/site-lisp dir
649 - rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp
650 -
651 - # remove COPYING file (except for etc/COPYING used by describe-copying)
652 - rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING
653 -
654 - if use gzip-el; then
655 - # compress .el files when a corresponding .elc exists
656 - find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
657 - -name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
658 - assert "gzip .el failed"
659 - fi
660 -
661 - local cdir
662 - if use source; then
663 - cdir="/usr/share/emacs/${FULL_VERSION}/src"
664 - insinto "${cdir}"
665 - # This is not meant to install all the source -- just the
666 - # C source you might find via find-function
667 - doins src/*.{c,h,m}
668 - elif has installsources ${FEATURES}; then
669 - cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
670 - fi
671 -
672 - sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF
673 - X
674 - ;;; ${PN}-${SLOT} site-lisp configuration
675 - X
676 - (when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
677 - Y (setq find-function-C-source-directory
678 - Y "${EPREFIX}${cdir}")
679 - X (let ((path (getenv "INFOPATH"))
680 - X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
681 - X (re "\\\\\`${EPREFIX}/usr/share/info\\\\>"))
682 - X (and path
683 - X ;; move Emacs Info dir before anything else in /usr/share/info
684 - X (let* ((p (cons nil (split-string path ":" t))) (q p))
685 - X (while (and (cdr q) (not (string-match re (cadr q))))
686 - X (setq q (cdr q)))
687 - X (setcdr q (cons dir (delete dir (cdr q))))
688 - X (setq Info-directory-list (prune-directory-list (cdr p)))))))
689 - EOF
690 - elisp-site-file-install "${T}/${SITEFILE}" || die
691 -
692 - dodoc README BUGS CONTRIBUTE
693 -
694 - if use aqua; then
695 - dodir /Applications/Gentoo
696 - rm -rf "${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app
697 - mv nextstep/Emacs.app \
698 - "${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app || die
699 - fi
700 -
701 - DOC_CONTENTS="You can set the version to be started by /usr/bin/emacs
702 - through the Emacs eselect module, which also redirects man and info
703 - pages. Therefore, several Emacs versions can be installed at the
704 - same time. \"man emacs.eselect\" for details.
705 - \\n\\nIf you upgrade from Emacs version 24.2 or earlier, then it is
706 - strongly recommended that you use app-admin/emacs-updater to rebuild
707 - all byte-compiled elisp files of the installed Emacs packages."
708 - use X && DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
709 - Installing media-fonts/font-adobe-{75,100}dpi on the X server's
710 - machine would satisfy basic Emacs requirements under X11.
711 - See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
712 - for how to enable anti-aliased fonts."
713 - use aqua && DOC_CONTENTS+="\\n\\nEmacs${EMACS_SUFFIX#emacs}.app is in
714 - \"${EPREFIX}/Applications/Gentoo\". You may want to copy or symlink
715 - it into /Applications by yourself."
716 - readme.gentoo_create_doc
717 -}
718 -
719 -pkg_preinst() {
720 - # move Info dir file to correct name
721 - local infodir=/usr/share/info/${EMACS_SUFFIX} f
722 - if [[ -f ${ED}${infodir}/dir.orig ]]; then
723 - mv "${ED}"${infodir}/dir{.orig,} || die "moving info dir failed"
724 - elif [[ -d "${ED}"${infodir} ]]; then
725 - # this should not happen in EAPI 4
726 - ewarn "Regenerating Info directory index in ${infodir} ..."
727 - rm -f "${ED}"${infodir}/dir{,.*}
728 - for f in "${ED}"${infodir}/*; do
729 - if [[ ${f##*/} != *-[0-9]* && -e ${f} ]]; then
730 - install-info --info-dir="${ED}"${infodir} "${f}" \
731 - || die "install-info failed"
732 - fi
733 - done
734 - fi
735 -}
736 -
737 -pkg_postinst() {
738 - elisp-site-regen
739 - readme.gentoo_print_elog
740 -
741 - if use livecd; then
742 - # force an update of the emacs symlink for the livecd/dvd,
743 - # because some microemacs packages set it with USE=livecd
744 - eselect emacs update
745 - elif [[ $(readlink "${EROOT}"/usr/bin/emacs) = ${EMACS_SUFFIX} ]]; then
746 - # refresh symlinks in case any installed files have changed
747 - eselect emacs set ${EMACS_SUFFIX}
748 - else
749 - eselect emacs update ifunset
750 - fi
751 -}
752 -
753 -pkg_postrm() {
754 - elisp-site-regen
755 - eselect emacs update ifunset
756 -}
757
758 diff --git a/app-editors/emacs/emacs-25.2.ebuild b/app-editors/emacs/emacs-25.2.ebuild
759 deleted file mode 100644
760 index 641782e..0000000
761 --- a/app-editors/emacs/emacs-25.2.ebuild
762 +++ /dev/null
763 @@ -1,358 +0,0 @@
764 -# Copyright 1999-2017 Gentoo Foundation
765 -# Distributed under the terms of the GNU General Public License v2
766 -
767 -EAPI=6
768 -
769 -inherit elisp-common flag-o-matic multilib readme.gentoo-r1
770 -
771 -DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
772 -HOMEPAGE="https://www.gnu.org/software/emacs/"
773 -SRC_URI="mirror://gnu/emacs/${P}.tar.xz"
774 -
775 -LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
776 -SLOT="25"
777 -KEYWORDS="amd64 arm ia64 ~mips ppc ~sh sparc x86"
778 -IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gconf gfile gif gpm gsettings gtk +gtk3 gzip-el hesiod 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 xwidgets zlib"
779 -REQUIRED_USE="?? ( aqua X )"
780 -
781 -RDEPEND="sys-libs/ncurses:0=
782 - >=app-eselect/eselect-emacs-1.16
783 - >=app-emacs/emacs-common-gentoo-1.5[games?,X?]
784 - net-libs/liblockfile
785 - acl? ( virtual/acl )
786 - alsa? ( media-libs/alsa-lib )
787 - dbus? ( sys-apps/dbus )
788 - gpm? ( sys-libs/gpm )
789 - hesiod? ( net-dns/hesiod )
790 - !inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
791 - kerberos? ( virtual/krb5 )
792 - libxml2? ( >=dev-libs/libxml2-2.2.0 )
793 - selinux? ( sys-libs/libselinux )
794 - ssl? ( net-libs/gnutls:0= )
795 - zlib? ( sys-libs/zlib )
796 - X? (
797 - x11-libs/libXmu
798 - x11-libs/libXt
799 - x11-misc/xbitmaps
800 - gconf? ( >=gnome-base/gconf-2.26.2 )
801 - gsettings? ( >=dev-libs/glib-2.28.6 )
802 - gif? ( media-libs/giflib:0= )
803 - jpeg? ( virtual/jpeg:0= )
804 - png? ( >=media-libs/libpng-1.4:0= )
805 - svg? ( >=gnome-base/librsvg-2.0 )
806 - tiff? ( media-libs/tiff:0 )
807 - xpm? ( x11-libs/libXpm )
808 - imagemagick? ( >=media-gfx/imagemagick-6.6.2:0= )
809 - xft? (
810 - media-libs/fontconfig
811 - media-libs/freetype
812 - x11-libs/libXft
813 - cairo? ( >=x11-libs/cairo-1.12.18 )
814 - m17n-lib? (
815 - >=dev-libs/libotf-0.9.4
816 - >=dev-libs/m17n-lib-1.5.1
817 - )
818 - )
819 - gtk? (
820 - xwidgets? (
821 - x11-libs/gtk+:3
822 - net-libs/webkit-gtk:3=
823 - )
824 - !xwidgets? (
825 - gtk3? ( x11-libs/gtk+:3 )
826 - !gtk3? ( x11-libs/gtk+:2 )
827 - )
828 - )
829 - !gtk? (
830 - motif? ( >=x11-libs/motif-2.3:0 )
831 - !motif? (
832 - Xaw3d? ( x11-libs/libXaw3d )
833 - !Xaw3d? ( athena? ( x11-libs/libXaw ) )
834 - )
835 - )
836 - )"
837 -
838 -DEPEND="${RDEPEND}
839 - virtual/pkgconfig
840 - gzip-el? ( app-arch/gzip )
841 - pax_kernel? ( sys-apps/attr )"
842 -
843 -RDEPEND="${RDEPEND}
844 - !<app-editors/emacs-vcs-${PV}"
845 -
846 -EMACS_SUFFIX="${PN/emacs/emacs-${SLOT}}"
847 -SITEFILE="20${PN}-${SLOT}-gentoo.el"
848 -# FULL_VERSION keeps the full version number, which is needed in
849 -# order to determine some path information correctly for copy/move
850 -# operations later on
851 -FULL_VERSION="${PV%%_*}"
852 -S="${WORKDIR}/emacs-${FULL_VERSION}"
853 -
854 -src_prepare() {
855 - eapply "${FILESDIR}/${PN}-vcs-musl.patch"
856 -
857 - eapply_user
858 -
859 - # Fix filename reference in redirected man page
860 - sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 \
861 - || die "unable to sed ctags.1"
862 -
863 - #AT_M4DIR=m4 eautoreconf
864 - #touch src/stamp-h.in || die
865 -}
866 -
867 -src_configure() {
868 - strip-flags
869 - filter-flags -pie #526948
870 -
871 - if use sh; then
872 - replace-flags "-O[1-9]" -O0 #262359
873 - elif use ia64; then
874 - replace-flags "-O[2-9]" -O1 #325373
875 - else
876 - replace-flags "-O[3-9]" -O2
877 - fi
878 -
879 - local myconf
880 -
881 - if use alsa; then
882 - use sound || ewarn \
883 - "USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
884 - myconf+=" --with-sound=alsa"
885 - else
886 - myconf+=" --with-sound=$(usex sound oss)"
887 - fi
888 -
889 - if use X; then
890 - myconf+=" --with-x --without-ns"
891 - myconf+=" $(use_with gconf)"
892 - myconf+=" $(use_with gsettings)"
893 - myconf+=" $(use_with toolkit-scroll-bars)"
894 - myconf+=" $(use_with gif)"
895 - myconf+=" $(use_with jpeg)"
896 - myconf+=" $(use_with png)"
897 - myconf+=" $(use_with svg rsvg)"
898 - myconf+=" $(use_with tiff)"
899 - myconf+=" $(use_with xpm)"
900 - myconf+=" $(use_with imagemagick)"
901 -
902 - if use xft; then
903 - myconf+=" --with-xft"
904 - myconf+=" $(use_with cairo)"
905 - myconf+=" $(use_with m17n-lib libotf)"
906 - myconf+=" $(use_with m17n-lib m17n-flt)"
907 - else
908 - myconf+=" --without-xft"
909 - myconf+=" --without-cairo"
910 - myconf+=" --without-libotf --without-m17n-flt"
911 - use cairo && ewarn \
912 - "USE flag \"cairo\" has no effect if \"xft\" is not set."
913 - use m17n-lib && ewarn \
914 - "USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
915 - fi
916 -
917 - local f line
918 - if use gtk; then
919 - einfo "Configuring to build with GIMP Toolkit (GTK+)"
920 - while read line; do ewarn "${line}"; done <<-EOF
921 - Your version of GTK+ will have problems with closing open
922 - displays. This is no problem if you just use one display, but
923 - if you use more than one and close one of them Emacs may crash.
924 - See <https://bugzilla.gnome.org/show_bug.cgi?id=85715>.
925 - If you intend to use more than one display, then it is strongly
926 - recommended that you compile Emacs with the Athena/Lucid or the
927 - Motif toolkit instead.
928 - EOF
929 - if use xwidgets; then
930 - myconf+=" --with-x-toolkit=gtk3 --with-xwidgets"
931 - else
932 - myconf+=" --with-x-toolkit=$(usex gtk3 gtk3 gtk2)"
933 - myconf+=" --without-xwidgets"
934 - fi
935 - for f in motif Xaw3d athena; do
936 - use ${f} && ewarn \
937 - "USE flag \"${f}\" has no effect if \"gtk\" is set."
938 - done
939 - elif use motif; then
940 - einfo "Configuring to build with Motif toolkit"
941 - myconf+=" --with-x-toolkit=motif"
942 - for f in Xaw3d athena; do
943 - use ${f} && ewarn \
944 - "USE flag \"${f}\" has no effect if \"motif\" is set."
945 - done
946 - elif use athena || use Xaw3d; then
947 - einfo "Configuring to build with Athena/Lucid toolkit"
948 - myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
949 - else
950 - einfo "Configuring to build with no toolkit"
951 - myconf+=" --with-x-toolkit=no"
952 - fi
953 - ! use gtk && use xwidgets && ewarn \
954 - "USE flag \"xwidgets\" has no effect if \"gtk\" is not set."
955 - elif use aqua; then
956 - einfo "Configuring to build with Nextstep (Cocoa) support"
957 - myconf+=" --with-ns --disable-ns-self-contained"
958 - myconf+=" --without-x"
959 - else
960 - myconf+=" --without-x --without-ns"
961 - fi
962 -
963 - # Save version information in the Emacs binary. It will be available
964 - # in variable "system-configuration-options".
965 - myconf+=" GENTOO_PACKAGE=${CATEGORY}/${PF}"
966 -
967 - econf \
968 - --program-suffix="-${EMACS_SUFFIX}" \
969 - --infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
970 - --localstatedir="${EPREFIX}"/var \
971 - --enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
972 - --with-gameuser=":gamestat" \
973 - --without-compress-install \
974 - --with-file-notification=$(usev inotify || usev gfile || echo no) \
975 - $(use_enable acl) \
976 - $(use_with dbus) \
977 - $(use_with dynamic-loading modules) \
978 - $(use_with gpm) \
979 - $(use_with hesiod) \
980 - $(use_with kerberos) $(use_with kerberos kerberos5) \
981 - $(use_with libxml2 xml2) \
982 - $(use_with selinux) \
983 - $(use_with ssl gnutls) \
984 - $(use_with wide-int) \
985 - $(use_with zlib) \
986 - ${myconf}
987 -}
988 -
989 -src_compile() {
990 - export SANDBOX_ON=0 # for the unbelievers, see Bug #131505
991 - emake
992 -}
993 -
994 -src_install () {
995 - emake DESTDIR="${D}" NO_BIN_LINK=t install
996 -
997 - mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} \
998 - || die "moving emacs executable failed"
999 - mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 \
1000 - || die "moving emacs man page failed"
1001 -
1002 - # move info dir to avoid collisions with the dir file generated by portage
1003 - mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} \
1004 - || die "moving info dir failed"
1005 - touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
1006 - docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
1007 -
1008 - # avoid collision between slots, see bug #169033 e.g.
1009 - rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el
1010 - rm -rf "${ED}"/usr/share/{appdata,applications,icons}
1011 - rm -rf "${ED}"/var
1012 -
1013 - # remove unused <version>/site-lisp dir
1014 - rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp
1015 -
1016 - # remove COPYING file (except for etc/COPYING used by describe-copying)
1017 - rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING
1018 -
1019 - if use gzip-el; then
1020 - # compress .el files when a corresponding .elc exists
1021 - find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
1022 - -name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
1023 - assert "gzip .el failed"
1024 - fi
1025 -
1026 - local cdir
1027 - if use source; then
1028 - cdir="/usr/share/emacs/${FULL_VERSION}/src"
1029 - insinto "${cdir}"
1030 - # This is not meant to install all the source -- just the
1031 - # C source you might find via find-function
1032 - doins src/*.{c,h,m}
1033 - elif has installsources ${FEATURES}; then
1034 - cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
1035 - fi
1036 -
1037 - sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF
1038 - X
1039 - ;;; ${PN}-${SLOT} site-lisp configuration
1040 - X
1041 - (when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
1042 - Y (setq find-function-C-source-directory
1043 - Y "${EPREFIX}${cdir}")
1044 - X (let ((path (getenv "INFOPATH"))
1045 - X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
1046 - X (re "\\\\\`${EPREFIX}/usr/share/info\\\\>"))
1047 - X (and path
1048 - X ;; move Emacs Info dir before anything else in /usr/share/info
1049 - X (let* ((p (cons nil (split-string path ":" t))) (q p))
1050 - X (while (and (cdr q) (not (string-match re (cadr q))))
1051 - X (setq q (cdr q)))
1052 - X (setcdr q (cons dir (delete dir (cdr q))))
1053 - X (setq Info-directory-list (prune-directory-list (cdr p)))))))
1054 - EOF
1055 - elisp-site-file-install "${T}/${SITEFILE}" || die
1056 -
1057 - dodoc README BUGS CONTRIBUTE
1058 -
1059 - if use aqua; then
1060 - dodir /Applications/Gentoo
1061 - rm -rf "${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app
1062 - mv nextstep/Emacs.app \
1063 - "${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app || die
1064 - fi
1065 -
1066 - DOC_CONTENTS="You can set the version to be started by /usr/bin/emacs
1067 - through the Emacs eselect module, which also redirects man and info
1068 - pages. Therefore, several Emacs versions can be installed at the
1069 - same time. \"man emacs.eselect\" for details.
1070 - \\n\\nIf you upgrade from Emacs version 24.2 or earlier, then it is
1071 - strongly recommended that you use app-admin/emacs-updater to rebuild
1072 - all byte-compiled elisp files of the installed Emacs packages."
1073 - use X && DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
1074 - Installing media-fonts/font-adobe-{75,100}dpi on the X server's
1075 - machine would satisfy basic Emacs requirements under X11.
1076 - See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
1077 - for how to enable anti-aliased fonts."
1078 - use aqua && DOC_CONTENTS+="\\n\\nEmacs${EMACS_SUFFIX#emacs}.app is in
1079 - \"${EPREFIX}/Applications/Gentoo\". You may want to copy or symlink
1080 - it into /Applications by yourself."
1081 - readme.gentoo_create_doc
1082 -}
1083 -
1084 -pkg_preinst() {
1085 - # move Info dir file to correct name
1086 - local infodir=/usr/share/info/${EMACS_SUFFIX} f
1087 - if [[ -f ${ED}${infodir}/dir.orig ]]; then
1088 - mv "${ED}"${infodir}/dir{.orig,} || die "moving info dir failed"
1089 - elif [[ -d "${ED}"${infodir} ]]; then
1090 - # this should not happen in EAPI 4
1091 - ewarn "Regenerating Info directory index in ${infodir} ..."
1092 - rm -f "${ED}"${infodir}/dir{,.*}
1093 - for f in "${ED}"${infodir}/*; do
1094 - if [[ ${f##*/} != *-[0-9]* && -e ${f} ]]; then
1095 - install-info --info-dir="${ED}"${infodir} "${f}" \
1096 - || die "install-info failed"
1097 - fi
1098 - done
1099 - fi
1100 -}
1101 -
1102 -pkg_postinst() {
1103 - elisp-site-regen
1104 - readme.gentoo_print_elog
1105 -
1106 - if use livecd; then
1107 - # force an update of the emacs symlink for the livecd/dvd,
1108 - # because some microemacs packages set it with USE=livecd
1109 - eselect emacs update
1110 - elif [[ $(readlink "${EROOT}"/usr/bin/emacs) = ${EMACS_SUFFIX} ]]; then
1111 - # refresh symlinks in case any installed files have changed
1112 - eselect emacs set ${EMACS_SUFFIX}
1113 - else
1114 - eselect emacs update ifunset
1115 - fi
1116 -}
1117 -
1118 -pkg_postrm() {
1119 - elisp-site-regen
1120 - eselect emacs update ifunset
1121 -}