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