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.2.ebuild emacs-23.1-r3.ebuild
Date: Sat, 08 May 2010 07:26:35
Message-Id: 20100508072628.94F6A2950A@corvid.gentoo.org
1 ulm 10/05/08 07:26:28
2
3 Modified: metadata.xml ChangeLog emacs-23.1-r3.ebuild
4 Added: emacs-23.2.ebuild
5 Log:
6 Version bump. New gconf USE flag.
7 (Portage version: 2.2_rc67/cvs/Linux i686)
8
9 Revision Changes Path
10 1.6 app-editors/emacs/metadata.xml
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs/metadata.xml?rev=1.6&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs/metadata.xml?rev=1.6&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs/metadata.xml?r1=1.5&r2=1.6
15
16 Index: metadata.xml
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/app-editors/emacs/metadata.xml,v
19 retrieving revision 1.5
20 retrieving revision 1.6
21 diff -u -r1.5 -r1.6
22 --- metadata.xml 23 Jan 2009 16:53:41 -0000 1.5
23 +++ metadata.xml 8 May 2010 07:26:28 -0000 1.6
24 @@ -20,6 +20,8 @@
25 available separately.
26 </longdescription>
27 <use>
28 + <flag name='gconf'>Use <pkg>gnome-base/gconf</pkg> to read the system
29 + font name</flag>
30 <flag name='gzip-el'>Compress bundled Emacs Lisp source</flag>
31 <flag name='hesiod'>Enable support for <pkg>net-dns/hesiod</pkg></flag>
32 <flag name='leim'>Add support for Emacs input methods</flag>
33
34
35
36 1.377 app-editors/emacs/ChangeLog
37
38 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs/ChangeLog?rev=1.377&view=markup
39 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs/ChangeLog?rev=1.377&content-type=text/plain
40 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs/ChangeLog?r1=1.376&r2=1.377
41
42 Index: ChangeLog
43 ===================================================================
44 RCS file: /var/cvsroot/gentoo-x86/app-editors/emacs/ChangeLog,v
45 retrieving revision 1.376
46 retrieving revision 1.377
47 diff -u -r1.376 -r1.377
48 --- ChangeLog 7 May 2010 05:57:00 -0000 1.376
49 +++ ChangeLog 8 May 2010 07:26:28 -0000 1.377
50 @@ -1,6 +1,13 @@
51 # ChangeLog for app-editors/emacs
52 # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
53 -# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs/ChangeLog,v 1.376 2010/05/07 05:57:00 jer Exp $
54 +# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs/ChangeLog,v 1.377 2010/05/08 07:26:28 ulm Exp $
55 +
56 +*emacs-23.2 (08 May 2010)
57 +
58 + 08 May 2010; Ulrich Mueller <ulm@g.o> +emacs-23.2.ebuild,
59 + metadata.xml:
60 + Version bump, based on emacs-vcs-23.1.97.ebuild. New gconf USE flag.
61 + Initial patchset includes patch for crt* start files dir from bug 306831.
62
63 07 May 2010; Jeroen Roovers <jer@g.o> emacs-21.4-r20.ebuild,
64 emacs-22.3-r4.ebuild, emacs-23.1-r3.ebuild:
65
66
67
68 1.8 app-editors/emacs/emacs-23.1-r3.ebuild
69
70 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs/emacs-23.1-r3.ebuild?rev=1.8&view=markup
71 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs/emacs-23.1-r3.ebuild?rev=1.8&content-type=text/plain
72 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs/emacs-23.1-r3.ebuild?r1=1.7&r2=1.8
73
74 Index: emacs-23.1-r3.ebuild
75 ===================================================================
76 RCS file: /var/cvsroot/gentoo-x86/app-editors/emacs/emacs-23.1-r3.ebuild,v
77 retrieving revision 1.7
78 retrieving revision 1.8
79 diff -u -r1.7 -r1.8
80 --- emacs-23.1-r3.ebuild 7 May 2010 05:57:00 -0000 1.7
81 +++ emacs-23.1-r3.ebuild 8 May 2010 07:26:28 -0000 1.8
82 @@ -1,6 +1,6 @@
83 # Copyright 1999-2010 Gentoo Foundation
84 # Distributed under the terms of the GNU General Public License v2
85 -# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs/emacs-23.1-r3.ebuild,v 1.7 2010/05/07 05:57:00 jer Exp $
86 +# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs/emacs-23.1-r3.ebuild,v 1.8 2010/05/08 07:26:28 ulm Exp $
87
88 EAPI=2
89
90 @@ -34,9 +34,7 @@
91 IUSE="alsa dbus gif gpm gtk gzip-el hesiod jpeg kerberos m17n-lib motif png sound source svg tiff toolkit-scroll-bars X Xaw3d xft +xpm"
92 RESTRICT="strip"
93
94 -RDEPEND="!=app-editors/emacs-vcs-23.0*
95 - !=app-editors/emacs-vcs-23.1.9999
96 - sys-libs/ncurses
97 +RDEPEND="sys-libs/ncurses
98 >=app-admin/eselect-emacs-1.2
99 net-libs/liblockfile
100 hesiod? ( net-dns/hesiod )
101 @@ -75,6 +73,7 @@
102 gzip-el? ( app-arch/gzip )"
103
104 RDEPEND="${RDEPEND}
105 + !<app-editors/emacs-vcs-${PV}
106 >=app-emacs/emacs-common-gentoo-1[X?]"
107
108 EMACS_SUFFIX="emacs-${SLOT}"
109
110
111
112 1.1 app-editors/emacs/emacs-23.2.ebuild
113
114 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs/emacs-23.2.ebuild?rev=1.1&view=markup
115 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs/emacs-23.2.ebuild?rev=1.1&content-type=text/plain
116
117 Index: emacs-23.2.ebuild
118 ===================================================================
119 # Copyright 1999-2010 Gentoo Foundation
120 # Distributed under the terms of the GNU General Public License v2
121 # $Header: /var/cvsroot/gentoo-x86/app-editors/emacs/emacs-23.2.ebuild,v 1.1 2010/05/08 07:26:28 ulm Exp $
122
123 EAPI=2
124
125 inherit autotools elisp-common eutils flag-o-matic
126
127 if [ "${PV##*.}" = "9999" ]; then
128 inherit bzr
129 EMACS_BRANCH="emacs-23"
130 EBZR_REPO_URI="http://bzr.savannah.gnu.org/r/emacs/${EMACS_BRANCH}/"
131 EBZR_CACHE_DIR="emacs-${EMACS_BRANCH#emacs-}"
132 SRC_URI=""
133 else
134 SRC_URI="mirror://gnu/emacs/${P}.tar.bz2
135 mirror://gentoo/${P}-patches-1.tar.bz2"
136 # FULL_VERSION keeps the full version number, which is needed in
137 # order to determine some path information correctly for copy/move
138 # operations later on
139 FULL_VERSION="${PV%%_*}"
140 S="${WORKDIR}/emacs-${FULL_VERSION}"
141 fi
142
143 DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
144 HOMEPAGE="http://www.gnu.org/software/emacs/"
145
146 LICENSE="GPL-3 FDL-1.3 BSD as-is MIT W3C unicode"
147 SLOT="23"
148 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd"
149 IUSE="alsa 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"
150 RESTRICT="strip"
151
152 RDEPEND="sys-libs/ncurses
153 >=app-admin/eselect-emacs-1.2
154 net-libs/liblockfile
155 hesiod? ( net-dns/hesiod )
156 kerberos? ( virtual/krb5 )
157 alsa? ( media-libs/alsa-lib )
158 gpm? ( sys-libs/gpm )
159 dbus? ( sys-apps/dbus )
160 X? (
161 x11-libs/libXmu
162 x11-libs/libXt
163 x11-misc/xbitmaps
164 gconf? ( >=gnome-base/gconf-2.26.2 )
165 gif? ( media-libs/giflib )
166 jpeg? ( media-libs/jpeg:0 )
167 png? ( media-libs/libpng )
168 svg? ( >=gnome-base/librsvg-2.0 )
169 tiff? ( media-libs/tiff )
170 xpm? ( x11-libs/libXpm )
171 xft? (
172 media-libs/fontconfig
173 media-libs/freetype
174 x11-libs/libXft
175 m17n-lib? (
176 >=dev-libs/libotf-0.9.4
177 >=dev-libs/m17n-lib-1.5.1
178 )
179 )
180 gtk? ( x11-libs/gtk+:2 )
181 !gtk? (
182 Xaw3d? ( x11-libs/Xaw3d )
183 !Xaw3d? ( motif? ( x11-libs/openmotif ) )
184 )
185 )"
186
187 DEPEND="${RDEPEND}
188 dev-util/pkgconfig
189 gzip-el? ( app-arch/gzip )"
190
191 RDEPEND="${RDEPEND}
192 !<app-editors/emacs-vcs-${PV}
193 >=app-emacs/emacs-common-gentoo-1[X?]"
194
195 EMACS_SUFFIX="emacs-${SLOT}"
196 SITEFILE="20${PN}-${SLOT}-gentoo.el"
197
198 src_prepare() {
199 if [ "${PV##*.}" = "9999" ]; then
200 FULL_VERSION=$(grep 'defconst[ ]*emacs-version' lisp/version.el \
201 | sed -e 's/^[^"]*"\([^"]*\)".*$/\1/')
202 [ "${FULL_VERSION}" ] || die "Cannot determine current Emacs version"
203 echo
204 einfo "Emacs branch: ${EMACS_BRANCH}"
205 einfo "Emacs version number: ${FULL_VERSION}"
206 [ "${FULL_VERSION%.*}" = ${PV%.*} ] \
207 || die "Upstream version number changed to ${FULL_VERSION}"
208 echo
209 else
210 EPATCH_SUFFIX=patch epatch
211 fi
212
213 sed -i -e "s:/usr/lib/crtbegin.o:$(`tc-getCC` -print-file-name=crtbegin.o):g" \
214 -e "s:/usr/lib/crtend.o:$(`tc-getCC` -print-file-name=crtend.o):g" \
215 "${S}"/src/s/freebsd.h || die "unable to sed freebsd.h settings"
216
217 if ! use alsa; then
218 # ALSA is detected even if not requested by its USE flag.
219 # Suppress it by supplying pkg-config with a wrong library name.
220 sed -i -e "/ALSA_MODULES=/s/alsa/DiSaBlEaLsA/" configure.in \
221 || die "unable to sed configure.in"
222 fi
223 if ! use gzip-el; then
224 # Emacs' build system automatically detects the gzip binary and
225 # compresses el files. We don't want that so confuse it with a
226 # wrong binary name
227 sed -i -e "s/ gzip/ PrEvEnTcOmPrEsSiOn/" configure.in \
228 || die "unable to sed configure.in"
229 fi
230
231 eautoreconf
232 }
233
234 src_configure() {
235 ALLOWED_FLAGS=""
236 strip-flags
237 #unset LDFLAGS
238 if use sh; then
239 replace-flags -O[1-9] -O0 #262359
240 else
241 replace-flags -O[3-9] -O2
242 fi
243
244 local myconf
245
246 if use alsa && ! use sound; then
247 echo
248 einfo "Although sound USE flag is disabled you chose to have alsa,"
249 einfo "so sound is switched on anyway."
250 echo
251 myconf="${myconf} --with-sound"
252 else
253 myconf="${myconf} $(use_with sound)"
254 fi
255
256 if use X; then
257 myconf="${myconf} --with-x"
258 myconf="${myconf} $(use_with gconf)"
259 myconf="${myconf} $(use_with toolkit-scroll-bars)"
260 myconf="${myconf} $(use_with gif) $(use_with jpeg)"
261 myconf="${myconf} $(use_with png) $(use_with svg rsvg)"
262 myconf="${myconf} $(use_with tiff) $(use_with xpm)"
263 myconf="${myconf} $(use_with xft)"
264
265 if use xft; then
266 myconf="${myconf} $(use_with m17n-lib libotf)"
267 myconf="${myconf} $(use_with m17n-lib m17n-flt)"
268 else
269 myconf="${myconf} --without-libotf --without-m17n-flt"
270 use m17n-lib && ewarn \
271 "USE flag \"m17n-lib\" has no effect because xft is not set."
272 fi
273
274 # GTK+ is the default toolkit if USE=gtk is chosen with other
275 # possibilities. Emacs upstream thinks this should be standard
276 # policy on all distributions
277 if use gtk; then
278 einfo "Configuring to build with GIMP Toolkit (GTK+)"
279 myconf="${myconf} --with-x-toolkit=gtk"
280 elif use Xaw3d; then
281 einfo "Configuring to build with Xaw3d (Athena/Lucid) toolkit"
282 myconf="${myconf} --with-x-toolkit=athena"
283 elif use motif; then
284 einfo "Configuring to build with Motif toolkit"
285 myconf="${myconf} --with-x-toolkit=motif"
286 else
287 einfo "Configuring to build with no toolkit"
288 myconf="${myconf} --with-x-toolkit=no"
289 fi
290
291 local f tk=
292 for f in gtk Xaw3d motif; do
293 use ${f} || continue
294 [ "${tk}" ] \
295 && ewarn "USE flag \"${f}\" ignored (superseded by \"${tk}\")"
296 tk="${tk}${tk:+ }${f}"
297 done
298 else
299 myconf="${myconf} --without-x"
300 fi
301
302 myconf="${myconf} $(use_with hesiod)"
303 myconf="${myconf} $(use_with kerberos) $(use_with kerberos kerberos5)"
304 myconf="${myconf} $(use_with gpm) $(use_with dbus)"
305
306 econf \
307 --program-suffix=-${EMACS_SUFFIX} \
308 --infodir=/usr/share/info/${EMACS_SUFFIX} \
309 ${myconf} || die "econf emacs failed"
310 }
311
312 src_compile() {
313 export SANDBOX_ON=0 # for the unbelievers, see Bug #131505
314 if [ "${PV##*.}" = "9999" ]; then
315 emake CC="$(tc-getCC)" bootstrap || die "make bootstrap failed"
316 # cleanup, otherwise emacs will be dumped again in src_install
317 (cd src; emake versionclean)
318 fi
319 emake CC="$(tc-getCC)" || die "emake failed"
320 }
321
322 src_install () {
323 local i m
324
325 emake install DESTDIR="${D}" || die "make install failed"
326
327 rm "${D}"/usr/bin/emacs-${FULL_VERSION}-${EMACS_SUFFIX} \
328 || die "removing duplicate emacs executable failed"
329 mv "${D}"/usr/bin/emacs-${EMACS_SUFFIX} "${D}"/usr/bin/${EMACS_SUFFIX} \
330 || die "moving Emacs executable failed"
331
332 # move info documentation to the correct place
333 for i in "${D}"/usr/share/info/${EMACS_SUFFIX}/*; do
334 mv "${i}" "${i}.info" || die "mv info failed"
335 done
336
337 # move man pages to the correct place
338 for m in "${D}"/usr/share/man/man1/* ; do
339 mv "${m}" "${m%.1}-${EMACS_SUFFIX}.1" || die "mv man failed"
340 done
341
342 # avoid collision between slots, see bug #169033 e.g.
343 rm "${D}"/usr/share/emacs/site-lisp/subdirs.el
344 rm -rf "${D}"/usr/share/{applications,icons}
345 rm "${D}"/var/lib/games/emacs/{snake,tetris}-scores
346 keepdir /var/lib/games/emacs
347
348 local c=";;"
349 if use source; then
350 insinto /usr/share/emacs/${FULL_VERSION}/src
351 # This is not meant to install all the source -- just the
352 # C source you might find via find-function
353 doins src/*.[ch]
354 c=""
355 fi
356
357 sed 's/^X//' >"${T}/${SITEFILE}" <<-EOF
358 X
359 ;;; ${PN}-${SLOT} site-lisp configuration
360 X
361 (when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
362 X ${c}(setq find-function-C-source-directory
363 X ${c} "/usr/share/emacs/${FULL_VERSION}/src")
364 X (let ((path (getenv "INFOPATH"))
365 X (dir "/usr/share/info/${EMACS_SUFFIX}")
366 X (re "\\\\\`/usr/share/info\\\\>"))
367 X (and path
368 X ;; move Emacs Info dir before anything else in /usr/share/info
369 X (let* ((p (cons nil (split-string path ":" t))) (q p))
370 X (while (and (cdr q) (not (string-match re (cadr q))))
371 X (setq q (cdr q)))
372 X (setcdr q (cons dir (delete dir (cdr q))))
373 X (setq Info-directory-list (prune-directory-list (cdr p)))))))
374 EOF
375 elisp-site-file-install "${T}/${SITEFILE}" || die
376
377 dodoc README BUGS || die "dodoc failed"
378 }
379
380 emacs-infodir-rebuild() {
381 # Depending on the Portage version, the Info dir file is compressed
382 # or removed. It is only rebuilt by Portage if our directory is in
383 # INFOPATH, which is not guaranteed. So we rebuild it ourselves.
384
385 local infodir=/usr/share/info/${EMACS_SUFFIX} f
386 [ -d "${ROOT}"${infodir} ] || return # may occur with FEATURES=noinfo
387 einfo "Regenerating Info directory index in ${infodir} ..."
388 rm -f "${ROOT}"${infodir}/dir{,.*}
389 for f in "${ROOT}"${infodir}/*.info*; do
390 [[ ${f##*/} != *[0-9].info* && -e ${f} ]] \
391 && install-info --info-dir="${ROOT}"${infodir} "${f}" &>/dev/null
392 done
393 rmdir "${ROOT}"${infodir} 2>/dev/null # remove dir if it is empty
394 }
395
396 pkg_postinst() {
397 local f
398 for f in "${ROOT}"/var/lib/games/emacs/{snake,tetris}-scores; do
399 [ -e "${f}" ] || touch "${f}"
400 done
401 chown games:games "${ROOT}"/var/lib/games/emacs
402
403 elisp-site-regen
404 emacs-infodir-rebuild
405 eselect emacs update ifunset
406
407 if use X; then
408 echo
409 elog "You need to install some fonts for Emacs."
410 elog "Installing media-fonts/font-adobe-{75,100}dpi on the X server's"
411 elog "machine would satisfy basic Emacs requirements under X11."
412 elog "See also http://www.gentoo.org/proj/en/lisp/emacs/xft.xml"
413 elog "for how to enable anti-aliased fonts."
414 fi
415
416 echo
417 elog "You can set the version to be started by /usr/bin/emacs through"
418 elog "the Emacs eselect module, which also redirects man and info pages."
419 elog "Therefore, several Emacs versions can be installed at the same time."
420 elog "\"man emacs.eselect\" for details."
421 echo
422 elog "If you upgrade from a previous major version of Emacs, then it is"
423 elog "strongly recommended that you use app-admin/emacs-updater to rebuild"
424 elog "all byte-compiled elisp files of the installed Emacs packages."
425 }
426
427 pkg_postrm() {
428 elisp-site-regen
429 emacs-infodir-rebuild
430 eselect emacs update ifunset
431 }