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