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