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: metadata.xml ChangeLog emacs-23.3_rc1.ebuild
Date: Tue, 01 Mar 2011 07:16:18
Message-Id: 20110301071606.C747720054@flycatcher.gentoo.org
1 ulm 11/03/01 07:16:06
2
3 Modified: metadata.xml ChangeLog
4 Added: emacs-23.3_rc1.ebuild
5 Log:
6 Version bump. The sound USE flag is global now.
7
8 (Portage version: 2.1.9.41/cvs/Linux x86_64)
9
10 Revision Changes Path
11 1.7 app-editors/emacs/metadata.xml
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/emacs/metadata.xml?rev=1.7&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/emacs/metadata.xml?rev=1.7&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/emacs/metadata.xml?r1=1.6&r2=1.7
16
17 Index: metadata.xml
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/app-editors/emacs/metadata.xml,v
20 retrieving revision 1.6
21 retrieving revision 1.7
22 diff -u -r1.6 -r1.7
23 --- metadata.xml 8 May 2010 07:26:28 -0000 1.6
24 +++ metadata.xml 1 Mar 2011 07:16:06 -0000 1.7
25 @@ -26,7 +26,6 @@
26 <flag name='hesiod'>Enable support for <pkg>net-dns/hesiod</pkg></flag>
27 <flag name='leim'>Add support for Emacs input methods</flag>
28 <flag name='sendmail'>Build Emacs with MTA support</flag>
29 - <flag name='sound'>Enable sound</flag>
30 <flag name='toolkit-scroll-bars'>Use the selected toolkit's scrollbars in
31 preference to Emacs' own scrollbars</flag>
32 </use>
33
34
35
36 1.409 app-editors/emacs/ChangeLog
37
38 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/emacs/ChangeLog?rev=1.409&view=markup
39 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/emacs/ChangeLog?rev=1.409&content-type=text/plain
40 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/emacs/ChangeLog?r1=1.408&r2=1.409
41
42 Index: ChangeLog
43 ===================================================================
44 RCS file: /var/cvsroot/gentoo-x86/app-editors/emacs/ChangeLog,v
45 retrieving revision 1.408
46 retrieving revision 1.409
47 diff -u -r1.408 -r1.409
48 --- ChangeLog 2 Feb 2011 17:41:55 -0000 1.408
49 +++ ChangeLog 1 Mar 2011 07:16:06 -0000 1.409
50 @@ -1,6 +1,12 @@
51 # ChangeLog for app-editors/emacs
52 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
53 -# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs/ChangeLog,v 1.408 2011/02/02 17:41:55 ulm Exp $
54 +# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs/ChangeLog,v 1.409 2011/03/01 07:16:06 ulm Exp $
55 +
56 +*emacs-23.3_rc1 (01 Mar 2011)
57 +
58 + 01 Mar 2011; Ulrich Mueller <ulm@g.o> +emacs-23.3_rc1.ebuild,
59 + metadata.xml:
60 + Version bump. The sound USE flag is global now.
61
62 02 Feb 2011; Ulrich Mueller <ulm@g.o> emacs-22.3-r7.ebuild,
63 emacs-23.2-r3.ebuild:
64
65
66
67 1.1 app-editors/emacs/emacs-23.3_rc1.ebuild
68
69 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/emacs/emacs-23.3_rc1.ebuild?rev=1.1&view=markup
70 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/emacs/emacs-23.3_rc1.ebuild?rev=1.1&content-type=text/plain
71
72 Index: emacs-23.3_rc1.ebuild
73 ===================================================================
74 # Copyright 1999-2011 Gentoo Foundation
75 # Distributed under the terms of the GNU General Public License v2
76 # $Header: /var/cvsroot/gentoo-x86/app-editors/emacs/emacs-23.3_rc1.ebuild,v 1.1 2011/03/01 07:16:06 ulm Exp $
77
78 EAPI=4
79 WANT_AUTOMAKE="none"
80
81 inherit autotools elisp-common eutils flag-o-matic multilib
82
83 DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
84 HOMEPAGE="http://www.gnu.org/software/emacs/"
85 SRC_URI="ftp://alpha.gnu.org/gnu/emacs/pretest/${P/_/-}.tar.gz
86 mirror://gentoo/${P}-patches-1.tar.bz2"
87
88 LICENSE="GPL-3 FDL-1.3 BSD as-is MIT W3C unicode"
89 SLOT="23"
90 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
91 IUSE="alsa aqua dbus gconf gif gpm gtk gzip-el hesiod jpeg kerberos m17n-lib motif png sound source svg tiff toolkit-scroll-bars X Xaw3d xft +xpm"
92 REQUIRED_USE="aqua? ( !X )"
93 RESTRICT="strip"
94
95 RDEPEND="sys-libs/ncurses
96 >=app-admin/eselect-emacs-1.2
97 net-libs/liblockfile
98 hesiod? ( net-dns/hesiod )
99 kerberos? ( virtual/krb5 )
100 alsa? ( media-libs/alsa-lib )
101 gpm? ( sys-libs/gpm )
102 dbus? ( sys-apps/dbus )
103 X? (
104 x11-libs/libXmu
105 x11-libs/libXt
106 x11-misc/xbitmaps
107 gconf? ( >=gnome-base/gconf-2.26.2 )
108 gif? ( media-libs/giflib )
109 jpeg? ( virtual/jpeg )
110 png? ( media-libs/libpng )
111 svg? ( >=gnome-base/librsvg-2.0 )
112 tiff? ( media-libs/tiff )
113 xpm? ( x11-libs/libXpm )
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? ( x11-libs/gtk+:2 )
124 !gtk? (
125 Xaw3d? ( x11-libs/Xaw3d )
126 !Xaw3d? ( motif? ( >=x11-libs/openmotif-2.3:0 ) )
127 )
128 )"
129
130 DEPEND="${RDEPEND}
131 dev-util/pkgconfig
132 gzip-el? ( app-arch/gzip )"
133
134 RDEPEND="${RDEPEND}
135 >=app-emacs/emacs-common-gentoo-1[X?]"
136
137 EMACS_SUFFIX="emacs-${SLOT}"
138 SITEFILE="20${PN}-${SLOT}-gentoo.el"
139 # FULL_VERSION keeps the full version number, which is needed in
140 # order to determine some path information correctly for copy/move
141 # operations later on
142 FULL_VERSION="${PV%%_*}"
143 S="${WORKDIR}/emacs-${FULL_VERSION}"
144
145 src_prepare() {
146 EPATCH_SUFFIX=patch epatch
147
148 sed -i \
149 -e "s:/usr/lib/crtbegin.o:$(`tc-getCC` -print-file-name=crtbegin.o):g" \
150 -e "s:/usr/lib/crtend.o:$(`tc-getCC` -print-file-name=crtend.o):g" \
151 "${S}"/src/s/freebsd.h || die "unable to sed freebsd.h settings"
152
153 if ! use alsa; then
154 # ALSA is detected even if not requested by its USE flag.
155 # Suppress it by supplying pkg-config with a wrong library name.
156 sed -i -e "/ALSA_MODULES=/s/alsa/DiSaBlEaLsA/" configure.in \
157 || die "unable to sed configure.in"
158 fi
159 if ! use gzip-el; then
160 # Emacs' build system automatically detects the gzip binary and
161 # compresses el files. We don't want that so confuse it with a
162 # wrong binary name
163 sed -i -e "s/ gzip/ PrEvEnTcOmPrEsSiOn/" configure.in \
164 || die "unable to sed configure.in"
165 fi
166
167 eautoreconf
168 }
169
170 src_configure() {
171 ALLOWED_FLAGS=""
172 strip-flags
173 filter-flags -fstack-protector -fstack-protector-all #285778
174
175 if use sh; then
176 replace-flags -O[1-9] -O0 #262359
177 elif use ia64; then
178 replace-flags -O[2-9] -O1 #325373
179 else
180 replace-flags -O[3-9] -O2
181 fi
182
183 local myconf
184
185 if use alsa && ! use sound; then
186 echo
187 einfo "Although sound USE flag is disabled you chose to have alsa,"
188 einfo "so sound is switched on anyway."
189 echo
190 myconf="${myconf} --with-sound"
191 else
192 myconf="${myconf} $(use_with sound)"
193 fi
194
195 if use X; then
196 myconf="${myconf} --with-x --without-ns"
197 myconf="${myconf} $(use_with gconf)"
198 myconf="${myconf} $(use_with toolkit-scroll-bars)"
199 myconf="${myconf} $(use_with gif) $(use_with jpeg)"
200 myconf="${myconf} $(use_with png) $(use_with svg rsvg)"
201 myconf="${myconf} $(use_with tiff) $(use_with xpm)"
202 myconf="${myconf} $(use_with xft)"
203
204 if use xft; then
205 myconf="${myconf} $(use_with m17n-lib libotf)"
206 myconf="${myconf} $(use_with m17n-lib m17n-flt)"
207 else
208 myconf="${myconf} --without-libotf --without-m17n-flt"
209 use m17n-lib && ewarn \
210 "USE flag \"m17n-lib\" has no effect because xft is not set."
211 fi
212
213 # GTK+ is the default toolkit if USE=gtk is chosen with other
214 # possibilities. Emacs upstream thinks this should be standard
215 # policy on all distributions
216 if use gtk; then
217 einfo "Configuring to build with GIMP Toolkit (GTK+)"
218 myconf="${myconf} --with-x-toolkit=gtk"
219 elif use Xaw3d; then
220 einfo "Configuring to build with Xaw3d (Athena/Lucid) toolkit"
221 myconf="${myconf} --with-x-toolkit=athena"
222 elif use motif; then
223 einfo "Configuring to build with Motif toolkit"
224 myconf="${myconf} --with-x-toolkit=motif"
225 else
226 einfo "Configuring to build with no toolkit"
227 myconf="${myconf} --with-x-toolkit=no"
228 fi
229
230 local f tk=
231 for f in gtk Xaw3d motif; do
232 use ${f} || continue
233 [ "${tk}" ] \
234 && ewarn "USE flag \"${f}\" ignored (superseded by \"${tk}\")"
235 tk="${tk}${tk:+ }${f}"
236 done
237 elif use aqua; then
238 einfo "Configuring to build with Cocoa support"
239 myconf="${myconf} --with-ns --disable-ns-self-contained"
240 myconf="${myconf} --without-x"
241 else
242 myconf="${myconf} --without-x --without-ns"
243 fi
244
245 myconf="${myconf} $(use_with hesiod)"
246 myconf="${myconf} $(use_with kerberos) $(use_with kerberos kerberos5)"
247 myconf="${myconf} $(use_with gpm) $(use_with dbus)"
248
249 # According to configure, this option is only used for GNU/Linux
250 # (x86_64 and s390). For Gentoo Prefix we have to explicitly spell
251 # out the location because $(get_libdir) does not necessarily return
252 # something that matches the host OS's libdir naming (e.g. RHEL).
253 local crtdir=$($(tc-getCC) -print-file-name=crt1.o)
254 crtdir=${crtdir%/*}
255
256 econf \
257 --program-suffix=-${EMACS_SUFFIX} \
258 --infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
259 --with-crt-dir="${crtdir}" \
260 --with-gameuser="${GAMES_USER_DED:-games}" \
261 ${myconf}
262 }
263
264 src_compile() {
265 export SANDBOX_ON=0 # for the unbelievers, see Bug #131505
266 emake CC="$(tc-getCC)"
267 }
268
269 src_install () {
270 local i m
271
272 emake install DESTDIR="${D}"
273
274 rm "${ED}"/usr/bin/emacs-${FULL_VERSION}-${EMACS_SUFFIX} \
275 || die "removing duplicate emacs executable failed"
276 mv "${ED}"/usr/bin/emacs-${EMACS_SUFFIX} "${ED}"/usr/bin/${EMACS_SUFFIX} \
277 || die "moving Emacs executable failed"
278
279 # move man pages to the correct place
280 for m in "${ED}"/usr/share/man/man1/* ; do
281 mv "${m}" "${m%.1}-${EMACS_SUFFIX}.1" || die "mv man failed"
282 done
283
284 # move info dir to avoid collisions with the dir file generated by portage
285 mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} \
286 || die "moving info dir failed"
287 touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
288 docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
289
290 # avoid collision between slots, see bug #169033 e.g.
291 rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el
292 rm -rf "${ED}"/usr/share/{applications,icons}
293 rm "${ED}"/var/lib/games/emacs/{snake,tetris}-scores
294 keepdir /var/lib/games/emacs
295
296 local c=";;"
297 if use source; then
298 insinto /usr/share/emacs/${FULL_VERSION}/src
299 # This is not meant to install all the source -- just the
300 # C source you might find via find-function
301 doins src/*.[ch]
302 c=""
303 fi
304
305 sed 's/^X//' >"${T}/${SITEFILE}" <<-EOF
306 X
307 ;;; ${PN}-${SLOT} site-lisp configuration
308 X
309 (when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
310 X ${c}(setq find-function-C-source-directory
311 X ${c} "${EPREFIX}/usr/share/emacs/${FULL_VERSION}/src")
312 X (let ((path (getenv "INFOPATH"))
313 X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
314 X (re "\\\\\`${EPREFIX}/usr/share/info\\\\>"))
315 X (and path
316 X ;; move Emacs Info dir before anything else in /usr/share/info
317 X (let* ((p (cons nil (split-string path ":" t))) (q p))
318 X (while (and (cdr q) (not (string-match re (cadr q))))
319 X (setq q (cdr q)))
320 X (setcdr q (cons dir (delete dir (cdr q))))
321 X (setq Info-directory-list (prune-directory-list (cdr p)))))))
322 EOF
323 elisp-site-file-install "${T}/${SITEFILE}" || die
324
325 dodoc README BUGS
326
327 if use aqua; then
328 dodir /Applications/Gentoo
329 rm -rf "${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app
330 mv nextstep/Emacs.app \
331 "${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app || die
332 einfo "Emacs${EMACS_SUFFIX#emacs}.app is in ${EPREFIX}/Applications/Gentoo."
333 einfo "You may want to copy or symlink it into /Applications by yourself."
334 fi
335 }
336
337 pkg_preinst() {
338 # move Info dir file to correct name
339 local infodir=/usr/share/info/${EMACS_SUFFIX} f
340 if [ -f "${ED}"${infodir}/dir.orig ]; then
341 mv "${ED}"${infodir}/dir{.orig,} || die "moving info dir failed"
342 else
343 # this should not happen in EAPI 4
344 ewarn "Regenerating Info directory index in ${infodir} ..."
345 rm -f "${ED}"${infodir}/dir{,.*}
346 for f in "${ED}"${infodir}/*; do
347 if [[ ${f##*/} != *-[0-9]* && -e ${f} ]]; then
348 install-info --info-dir="${ED}"${infodir} "${f}" \
349 || die "install-info failed"
350 fi
351 done
352 fi
353 }
354
355 pkg_postinst() {
356 local f
357 for f in "${EROOT}"/var/lib/games/emacs/{snake,tetris}-scores; do
358 [ -e "${f}" ] || touch "${f}"
359 done
360 chown "${GAMES_USER_DED:-games}" "${EROOT}"/var/lib/games/emacs
361
362 elisp-site-regen
363 eselect emacs update ifunset
364
365 if use X; then
366 echo
367 elog "You need to install some fonts for Emacs."
368 elog "Installing media-fonts/font-adobe-{75,100}dpi on the X server's"
369 elog "machine would satisfy basic Emacs requirements under X11."
370 elog "See also http://www.gentoo.org/proj/en/lisp/emacs/xft.xml"
371 elog "for how to enable anti-aliased fonts."
372 fi
373
374 echo
375 elog "You can set the version to be started by /usr/bin/emacs through"
376 elog "the Emacs eselect module, which also redirects man and info pages."
377 elog "Therefore, several Emacs versions can be installed at the same time."
378 elog "\"man emacs.eselect\" for details."
379 echo
380 elog "If you upgrade from a previous major version of Emacs, then it is"
381 elog "strongly recommended that you use app-admin/emacs-updater to rebuild"
382 elog "all byte-compiled elisp files of the installed Emacs packages."
383 }
384
385 pkg_postrm() {
386 elisp-site-regen
387 eselect emacs update ifunset
388 }