Gentoo Archives: gentoo-commits

From: "Ulrich Mueller (ulm)" <ulm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in app-editors/emacs-vcs: emacs-vcs-25.0.50_pre20150731.ebuild ChangeLog emacs-vcs-25.0.50_pre20150331.ebuild
Date: Sat, 01 Aug 2015 12:45:59
Message-Id: 20150801124553.4C92D115@oystercatcher.gentoo.org
1 ulm 15/08/01 12:45:53
2
3 Modified: ChangeLog
4 Added: emacs-vcs-25.0.50_pre20150731.ebuild
5 Removed: emacs-vcs-25.0.50_pre20150331.ebuild
6 Log:
7 New snapshot. Remove old.
8
9 (Portage version: 2.2.20/cvs/Linux x86_64, signed Manifest commit with key 9433907D693FB5B8!)
10
11 Revision Changes Path
12 1.200 app-editors/emacs-vcs/ChangeLog
13
14 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/emacs-vcs/ChangeLog?rev=1.200&view=markup
15 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/emacs-vcs/ChangeLog?rev=1.200&content-type=text/plain
16 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/emacs-vcs/ChangeLog?r1=1.199&r2=1.200
17
18 Index: ChangeLog
19 ===================================================================
20 RCS file: /var/cvsroot/gentoo-x86/app-editors/emacs-vcs/ChangeLog,v
21 retrieving revision 1.199
22 retrieving revision 1.200
23 diff -u -r1.199 -r1.200
24 --- ChangeLog 28 Jul 2015 12:16:35 -0000 1.199
25 +++ ChangeLog 1 Aug 2015 12:45:53 -0000 1.200
26 @@ -1,6 +1,12 @@
27 # ChangeLog for app-editors/emacs-vcs
28 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
29 -# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs-vcs/ChangeLog,v 1.199 2015/07/28 12:16:35 ulm Exp $
30 +# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs-vcs/ChangeLog,v 1.200 2015/08/01 12:45:53 ulm Exp $
31 +
32 +*emacs-vcs-25.0.50_pre20150731 (01 Aug 2015)
33 +
34 + 01 Aug 2015; Ulrich Müller <ulm@g.o>
35 + -emacs-vcs-25.0.50_pre20150331.ebuild, +emacs-vcs-25.0.50_pre20150731.ebuild:
36 + New snapshot. Remove old.
37
38 28 Jul 2015; Ulrich Müller <ulm@g.o>
39 emacs-vcs-25.0.50_pre20150531.ebuild, emacs-vcs-25.0.50_pre20150630.ebuild,
40
41
42
43 1.1 app-editors/emacs-vcs/emacs-vcs-25.0.50_pre20150731.ebuild
44
45 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/emacs-vcs/emacs-vcs-25.0.50_pre20150731.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/emacs-vcs/emacs-vcs-25.0.50_pre20150731.ebuild?rev=1.1&content-type=text/plain
47
48 Index: emacs-vcs-25.0.50_pre20150731.ebuild
49 ===================================================================
50 # Copyright 1999-2015 Gentoo Foundation
51 # Distributed under the terms of the GNU General Public License v2
52 # $Header: /var/cvsroot/gentoo-x86/app-editors/emacs-vcs/emacs-vcs-25.0.50_pre20150731.ebuild,v 1.1 2015/08/01 12:45:53 ulm Exp $
53
54 EAPI=5
55
56 inherit autotools elisp-common eutils flag-o-matic multilib readme.gentoo
57
58 if [[ ${PV##*.} = 9999 ]]; then
59 inherit git-r3
60 EGIT_REPO_URI="git://git.sv.gnu.org/emacs.git"
61 EGIT_BRANCH="master"
62 EGIT_CHECKOUT_DIR="${WORKDIR}/emacs"
63 S="${EGIT_CHECKOUT_DIR}"
64 else
65 SRC_URI="http://dev.gentoo.org/~ulm/distfiles/emacs-${PV}.tar.xz
66 mirror://gnu-alpha/emacs/pretest/emacs-${PV}.tar.xz"
67 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
68 # FULL_VERSION keeps the full version number, which is needed in
69 # order to determine some path information correctly for copy/move
70 # operations later on
71 FULL_VERSION="${PV%%_*}"
72 #S="${WORKDIR}/emacs-${FULL_VERSION}"
73 S="${WORKDIR}/emacs"
74 fi
75
76 DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
77 HOMEPAGE="http://www.gnu.org/software/emacs/"
78
79 LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
80 SLOT="25"
81 IUSE="acl alsa aqua athena cairo dbus games gconf gfile gif gnutls gpm gsettings gtk +gtk3 gzip-el hesiod imagemagick +inotify jpeg kerberos libxml2 livecd m17n-lib motif pax_kernel png selinux sound source svg tiff toolkit-scroll-bars wide-int X Xaw3d xft +xpm zlib"
82 REQUIRED_USE="?? ( aqua X )"
83
84 RDEPEND="sys-libs/ncurses
85 >=app-eselect/eselect-emacs-1.16
86 >=app-emacs/emacs-common-gentoo-1.5[games?,X?]
87 net-libs/liblockfile
88 acl? ( virtual/acl )
89 alsa? ( media-libs/alsa-lib )
90 dbus? ( sys-apps/dbus )
91 gfile? ( >=dev-libs/glib-2.28.6 )
92 gnutls? ( net-libs/gnutls )
93 gpm? ( sys-libs/gpm )
94 hesiod? ( net-dns/hesiod )
95 kerberos? ( virtual/krb5 )
96 libxml2? ( >=dev-libs/libxml2-2.2.0 )
97 selinux? ( sys-libs/libselinux )
98 zlib? ( sys-libs/zlib )
99 X? (
100 x11-libs/libXmu
101 x11-libs/libXt
102 x11-misc/xbitmaps
103 gconf? ( >=gnome-base/gconf-2.26.2 )
104 gsettings? ( >=dev-libs/glib-2.28.6 )
105 gif? ( media-libs/giflib )
106 jpeg? ( virtual/jpeg:0= )
107 png? ( >=media-libs/libpng-1.4:0= )
108 svg? ( >=gnome-base/librsvg-2.0 )
109 tiff? ( media-libs/tiff:0 )
110 xpm? ( x11-libs/libXpm )
111 imagemagick? ( >=media-gfx/imagemagick-6.6.2 )
112 xft? (
113 media-libs/fontconfig
114 media-libs/freetype
115 x11-libs/libXft
116 cairo? ( >=x11-libs/cairo-1.12.18 )
117 m17n-lib? (
118 >=dev-libs/libotf-0.9.4
119 >=dev-libs/m17n-lib-1.5.1
120 )
121 )
122 gtk? (
123 gtk3? ( x11-libs/gtk+:3 )
124 !gtk3? ( x11-libs/gtk+:2 )
125 )
126 !gtk? (
127 motif? ( >=x11-libs/motif-2.3:0 )
128 !motif? (
129 Xaw3d? ( x11-libs/libXaw3d )
130 !Xaw3d? ( athena? ( x11-libs/libXaw ) )
131 )
132 )
133 )"
134
135 DEPEND="${RDEPEND}
136 virtual/pkgconfig
137 gzip-el? ( app-arch/gzip )
138 pax_kernel? (
139 sys-apps/attr
140 sys-apps/paxctl
141 )"
142
143 if [[ ${PV##*.} = 9999 ]]; then
144 DEPEND="${DEPEND}
145 sys-apps/texinfo"
146 fi
147
148 EMACS_SUFFIX="${PN/emacs/emacs-${SLOT}}"
149 SITEFILE="20${PN}-${SLOT}-gentoo.el"
150
151 src_prepare() {
152 if [[ ${PV##*.} = 9999 ]]; then
153 FULL_VERSION=$(sed -n 's/^AC_INIT([^,]*,[ \t]*\([^ \t,)]*\).*/\1/p' \
154 configure.ac)
155 [[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version"
156 einfo "Emacs branch: ${EGIT_BRANCH}"
157 einfo "Commit: ${EGIT_VERSION}"
158 einfo "Emacs version number: ${FULL_VERSION}"
159 [[ ${FULL_VERSION} =~ ^${PV%.*}(\..*)?$ ]] \
160 || die "Upstream version number changed to ${FULL_VERSION}"
161 fi
162
163 epatch_user
164
165 # Fix filename reference in redirected man page
166 sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 \
167 || die "unable to sed ctags.1"
168
169 AT_M4DIR=m4 eautoreconf
170 }
171
172 src_configure() {
173 strip-flags
174 filter-flags -pie #526948
175
176 if use sh; then
177 replace-flags "-O[1-9]" -O0 #262359
178 elif use ia64; then
179 replace-flags "-O[2-9]" -O1 #325373
180 else
181 replace-flags "-O[3-9]" -O2
182 fi
183
184 local myconf
185
186 if use alsa; then
187 use sound || ewarn \
188 "USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
189 myconf+=" --with-sound=alsa"
190 else
191 myconf+=" --with-sound=$(usex sound oss)"
192 fi
193
194 if use X; then
195 myconf+=" --with-x --without-ns"
196 myconf+=" $(use_with gconf)"
197 myconf+=" $(use_with gsettings)"
198 myconf+=" $(use_with toolkit-scroll-bars)"
199 myconf+=" $(use_with gif)"
200 myconf+=" $(use_with jpeg)"
201 myconf+=" $(use_with png)"
202 myconf+=" $(use_with svg rsvg)"
203 myconf+=" $(use_with tiff)"
204 myconf+=" $(use_with xpm)"
205 myconf+=" $(use_with imagemagick)"
206
207 if use xft; then
208 myconf+=" --with-xft"
209 myconf+=" $(use_with cairo)"
210 myconf+=" $(use_with m17n-lib libotf)"
211 myconf+=" $(use_with m17n-lib m17n-flt)"
212 else
213 myconf+=" --without-xft"
214 myconf+=" --without-cairo"
215 myconf+=" --without-libotf --without-m17n-flt"
216 use cairo && ewarn \
217 "USE flag \"cairo\" has no effect if \"xft\" is not set."
218 use m17n-lib && ewarn \
219 "USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
220 fi
221
222 local f
223 if use gtk; then
224 einfo "Configuring to build with GIMP Toolkit (GTK+)"
225 while read line; do ewarn "${line}"; done <<-EOF
226 Your version of GTK+ will have problems with closing open
227 displays. This is no problem if you just use one display, but
228 if you use more than one and close one of them Emacs may crash.
229 See <http://bugzilla.gnome.org/show_bug.cgi?id=85715>.
230 If you intend to use more than one display, then it is strongly
231 recommended that you compile Emacs with the Athena/Lucid or the
232 Motif toolkit instead.
233 EOF
234 myconf+=" --with-x-toolkit=$(usex gtk3 gtk3 gtk2)"
235 for f in motif Xaw3d athena; do
236 use ${f} && ewarn \
237 "USE flag \"${f}\" has no effect if \"gtk\" is set."
238 done
239 elif use motif; then
240 einfo "Configuring to build with Motif toolkit"
241 myconf+=" --with-x-toolkit=motif"
242 for f in Xaw3d athena; do
243 use ${f} && ewarn \
244 "USE flag \"${f}\" has no effect if \"motif\" is set."
245 done
246 elif use athena || use Xaw3d; then
247 einfo "Configuring to build with Athena/Lucid toolkit"
248 myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
249 else
250 einfo "Configuring to build with no toolkit"
251 myconf+=" --with-x-toolkit=no"
252 fi
253 elif use aqua; then
254 einfo "Configuring to build with Nextstep (Cocoa) support"
255 myconf+=" --with-ns --disable-ns-self-contained"
256 myconf+=" --without-x"
257 else
258 myconf+=" --without-x --without-ns"
259 fi
260
261 # Save version information in the Emacs binary. It will be available
262 # in variable "system-configuration-options".
263 myconf+=" GENTOO_PACKAGE=${CATEGORY}/${PF}"
264 if [[ ${PV##*.} = 9999 ]]; then
265 myconf+=" EGIT_BRANCH=${EGIT_BRANCH} EGIT_VERSION=${EGIT_VERSION}"
266 fi
267
268 econf \
269 --program-suffix="-${EMACS_SUFFIX}" \
270 --infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
271 --localstatedir="${EPREFIX}"/var \
272 --enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
273 --with-gameuser=":gamestat" \
274 --without-compress-install \
275 --with-file-notification=$(usev gfile || usev inotify || echo no) \
276 $(use_enable acl) \
277 $(use_with dbus) \
278 $(use_with gnutls) \
279 $(use_with gpm) \
280 $(use_with hesiod) \
281 $(use_with kerberos) $(use_with kerberos kerberos5) \
282 $(use_with libxml2 xml2) \
283 $(use_with selinux) \
284 $(use_with wide-int) \
285 $(use_with zlib) \
286 ${myconf}
287 }
288
289 src_compile() {
290 export SANDBOX_ON=0 # for the unbelievers, see Bug #131505
291 emake
292 }
293
294 src_install () {
295 emake DESTDIR="${D}" NO_BIN_LINK=t install
296
297 mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} \
298 || die "moving emacs executable failed"
299 mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 \
300 || die "moving emacs man page failed"
301
302 # move info dir to avoid collisions with the dir file generated by portage
303 mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} \
304 || die "moving info dir failed"
305 touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
306 docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
307
308 # avoid collision between slots, see bug #169033 e.g.
309 rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el
310 rm -rf "${ED}"/usr/share/{appdata,applications,icons}
311 rm -rf "${ED}"/var
312
313 # remove unused <version>/site-lisp dir
314 rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp
315
316 # remove COPYING file (except for etc/COPYING used by describe-copying)
317 rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING
318
319 if use gzip-el; then
320 # compress .el files when a corresponding .elc exists
321 find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
322 -name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
323 assert "gzip .el failed"
324 fi
325
326 local cdir
327 if use source; then
328 cdir="/usr/share/emacs/${FULL_VERSION}/src"
329 insinto "${cdir}"
330 # This is not meant to install all the source -- just the
331 # C source you might find via find-function
332 doins src/*.{c,h,m}
333 elif has installsources ${FEATURES}; then
334 cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
335 fi
336
337 sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF
338 X
339 ;;; ${PN}-${SLOT} site-lisp configuration
340 X
341 (when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
342 Y (setq find-function-C-source-directory
343 Y "${EPREFIX}${cdir}")
344 X (let ((path (getenv "INFOPATH"))
345 X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
346 X (re "\\\\\`${EPREFIX}/usr/share/info\\\\>"))
347 X (and path
348 X ;; move Emacs Info dir before anything else in /usr/share/info
349 X (let* ((p (cons nil (split-string path ":" t))) (q p))
350 X (while (and (cdr q) (not (string-match re (cadr q))))
351 X (setq q (cdr q)))
352 X (setcdr q (cons dir (delete dir (cdr q))))
353 X (setq Info-directory-list (prune-directory-list (cdr p)))))))
354 EOF
355 elisp-site-file-install "${T}/${SITEFILE}" || die
356
357 dodoc README BUGS CONTRIBUTE
358
359 if use aqua; then
360 dodir /Applications/Gentoo
361 rm -rf "${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app
362 mv nextstep/Emacs.app \
363 "${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app || die
364 fi
365
366 DOC_CONTENTS="You can set the version to be started by /usr/bin/emacs
367 through the Emacs eselect module, which also redirects man and info
368 pages. Therefore, several Emacs versions can be installed at the
369 same time. \"man emacs.eselect\" for details.
370 \\n\\nIf you upgrade from Emacs version 24.2 or earlier, then it is
371 strongly recommended that you use app-admin/emacs-updater to rebuild
372 all byte-compiled elisp files of the installed Emacs packages."
373 use X && DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
374 Installing media-fonts/font-adobe-{75,100}dpi on the X server's
375 machine would satisfy basic Emacs requirements under X11.
376 See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
377 for how to enable anti-aliased fonts."
378 use aqua && DOC_CONTENTS+="\\n\\nEmacs${EMACS_SUFFIX#emacs}.app is in
379 \"${EPREFIX}/Applications/Gentoo\". You may want to copy or symlink
380 it into /Applications by yourself."
381 readme.gentoo_create_doc
382 }
383
384 pkg_preinst() {
385 # move Info dir file to correct name
386 local infodir=/usr/share/info/${EMACS_SUFFIX} f
387 if [[ -f ${ED}${infodir}/dir.orig ]]; then
388 mv "${ED}"${infodir}/dir{.orig,} || die "moving info dir failed"
389 elif [[ -d "${ED}"${infodir} ]]; then
390 # this should not happen in EAPI 4
391 ewarn "Regenerating Info directory index in ${infodir} ..."
392 rm -f "${ED}"${infodir}/dir{,.*}
393 for f in "${ED}"${infodir}/*; do
394 if [[ ${f##*/} != *-[0-9]* && -e ${f} ]]; then
395 install-info --info-dir="${ED}"${infodir} "${f}" \
396 || die "install-info failed"
397 fi
398 done
399 fi
400 }
401
402 pkg_postinst() {
403 elisp-site-regen
404
405 local pvr
406 for pvr in ${REPLACING_VERSIONS}; do
407 [[ ${pvr%%[-_]*} = 24.[12] ]] && FORCE_PRINT_ELOG=1
408 done
409 readme.gentoo_print_elog
410
411 if use livecd; then
412 # force an update of the emacs symlink for the livecd/dvd,
413 # because some microemacs packages set it with USE=livecd
414 eselect emacs update
415 elif [[ $(readlink "${EROOT}"/usr/bin/emacs) = ${EMACS_SUFFIX} ]]; then
416 # refresh symlinks in case any installed files have changed
417 eselect emacs set ${EMACS_SUFFIX}
418 else
419 eselect emacs update ifunset
420 fi
421 }
422
423 pkg_postrm() {
424 elisp-site-regen
425 eselect emacs update ifunset
426 }