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-cvs: emacs-cvs-23.0.9999.ebuild ChangeLog emacs-cvs-23.0.60_pre20081226.ebuild
Date: Fri, 26 Dec 2008 12:48:36
Message-Id: E1LGC7C-0001yg-5E@stork.gentoo.org
1 ulm 08/12/26 12:48:30
2
3 Modified: emacs-cvs-23.0.9999.ebuild ChangeLog
4 Added: emacs-cvs-23.0.60_pre20081226.ebuild
5 Log:
6 Snapshot with precompiled elisp files.
7 (Portage version: 2.2_rc19/cvs/Linux 2.6.27-gentoo-r4 i686)
8
9 Revision Changes Path
10 1.16 app-editors/emacs-cvs/emacs-cvs-23.0.9999.ebuild
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs-cvs/emacs-cvs-23.0.9999.ebuild?rev=1.16&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs-cvs/emacs-cvs-23.0.9999.ebuild?rev=1.16&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs-cvs/emacs-cvs-23.0.9999.ebuild?r1=1.15&r2=1.16
15
16 Index: emacs-cvs-23.0.9999.ebuild
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/app-editors/emacs-cvs/emacs-cvs-23.0.9999.ebuild,v
19 retrieving revision 1.15
20 retrieving revision 1.16
21 diff -u -r1.15 -r1.16
22 --- emacs-cvs-23.0.9999.ebuild 29 Nov 2008 12:19:25 -0000 1.15
23 +++ emacs-cvs-23.0.9999.ebuild 26 Dec 2008 12:48:30 -0000 1.16
24 @@ -1,6 +1,6 @@
25 # Copyright 1999-2008 Gentoo Foundation
26 # Distributed under the terms of the GNU General Public License v2
27 -# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs-cvs/emacs-cvs-23.0.9999.ebuild,v 1.15 2008/11/29 12:19:25 ulm Exp $
28 +# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs-cvs/emacs-cvs-23.0.9999.ebuild,v 1.16 2008/12/26 12:48:30 ulm Exp $
29
30 ECVS_AUTH="pserver"
31 ECVS_SERVER="cvs.savannah.gnu.org:/sources/emacs"
32 @@ -20,7 +20,6 @@
33 LICENSE="GPL-3 FDL-1.3 BSD as-is X11 W3C"
34 SLOT="23"
35 KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~sparc-fbsd ~x86 ~x86-fbsd"
36 -
37 IUSE="alsa dbus gif gpm gtk gzip-el hesiod jpeg kerberos m17n-lib motif png spell sound source svg tiff toolkit-scroll-bars X Xaw3d xft xpm"
38 RESTRICT="strip"
39
40
41
42
43 1.227 app-editors/emacs-cvs/ChangeLog
44
45 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs-cvs/ChangeLog?rev=1.227&view=markup
46 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs-cvs/ChangeLog?rev=1.227&content-type=text/plain
47 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs-cvs/ChangeLog?r1=1.226&r2=1.227
48
49 Index: ChangeLog
50 ===================================================================
51 RCS file: /var/cvsroot/gentoo-x86/app-editors/emacs-cvs/ChangeLog,v
52 retrieving revision 1.226
53 retrieving revision 1.227
54 diff -u -r1.226 -r1.227
55 --- ChangeLog 17 Dec 2008 09:42:19 -0000 1.226
56 +++ ChangeLog 26 Dec 2008 12:48:30 -0000 1.227
57 @@ -1,6 +1,12 @@
58 # ChangeLog for app-editors/emacs-cvs
59 # Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
60 -# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs-cvs/ChangeLog,v 1.226 2008/12/17 09:42:19 ulm Exp $
61 +# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs-cvs/ChangeLog,v 1.227 2008/12/26 12:48:30 ulm Exp $
62 +
63 +*emacs-cvs-23.0.60_pre20081226 (26 Dec 2008)
64 +
65 + 26 Dec 2008; Ulrich Mueller <ulm@g.o>
66 + +emacs-cvs-23.0.60_pre20081226.ebuild:
67 + Snapshot with precompiled elisp files, to ease testing on embedded archs.
68
69 17 Dec 2008; Ulrich Mueller <ulm@g.o>
70 files/emacs-cvs-freebsd-sparc-1.patch:
71
72
73
74 1.1 app-editors/emacs-cvs/emacs-cvs-23.0.60_pre20081226.ebuild
75
76 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs-cvs/emacs-cvs-23.0.60_pre20081226.ebuild?rev=1.1&view=markup
77 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs-cvs/emacs-cvs-23.0.60_pre20081226.ebuild?rev=1.1&content-type=text/plain
78
79 Index: emacs-cvs-23.0.60_pre20081226.ebuild
80 ===================================================================
81 # Copyright 1999-2008 Gentoo Foundation
82 # Distributed under the terms of the GNU General Public License v2
83 # $Header: /var/cvsroot/gentoo-x86/app-editors/emacs-cvs/emacs-cvs-23.0.60_pre20081226.ebuild,v 1.1 2008/12/26 12:48:30 ulm Exp $
84
85 WANT_AUTOCONF="latest"
86 WANT_AUTOMAKE="latest"
87
88 inherit autotools elisp-common eutils flag-o-matic
89
90 DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
91 HOMEPAGE="http://www.gnu.org/software/emacs/"
92 SRC_URI="mirror://gentoo/emacs-${PV}.tar.gz
93 http://dev.gentoo.org/~ulm/distfiles/emacs-${PV}.tar.gz"
94
95 LICENSE="GPL-3 FDL-1.3 BSD as-is X11 W3C"
96 SLOT="23"
97 KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~sparc-fbsd ~x86 ~x86-fbsd"
98 IUSE="alsa dbus gif gpm gtk gzip-el hesiod jpeg kerberos m17n-lib motif png spell sound source svg tiff toolkit-scroll-bars X Xaw3d xft xpm"
99 RESTRICT="strip"
100
101 RDEPEND="sys-libs/ncurses
102 >=app-admin/eselect-emacs-1.2
103 net-libs/liblockfile
104 hesiod? ( net-dns/hesiod )
105 kerberos? ( virtual/krb5 )
106 spell? ( || ( app-text/ispell app-text/aspell ) )
107 alsa? ( media-libs/alsa-lib )
108 gpm? ( sys-libs/gpm )
109 dbus? ( sys-apps/dbus )
110 X? (
111 x11-libs/libXmu
112 x11-libs/libXt
113 x11-misc/xbitmaps
114 x11-misc/emacs-desktop
115 gif? ( media-libs/giflib )
116 jpeg? ( media-libs/jpeg )
117 png? ( media-libs/libpng )
118 svg? ( >=gnome-base/librsvg-2.0 )
119 tiff? ( media-libs/tiff )
120 xpm? ( x11-libs/libXpm )
121 xft? (
122 media-libs/fontconfig
123 media-libs/freetype
124 virtual/xft
125 m17n-lib? (
126 >=dev-libs/libotf-0.9.4
127 >=dev-libs/m17n-lib-1.5.1
128 )
129 )
130 gtk? ( =x11-libs/gtk+-2* )
131 !gtk? (
132 Xaw3d? ( x11-libs/Xaw3d )
133 !Xaw3d? ( motif? ( x11-libs/openmotif ) )
134 )
135 )"
136
137 DEPEND="${RDEPEND}
138 dev-util/pkgconfig
139 gzip-el? ( app-arch/gzip )"
140
141 # FULL_VERSION keeps the full version number, which is needed in order to
142 # determine some path information correctly for copy/move operations later on
143 FULL_VERSION="${PV%_*}"
144 EMACS_SUFFIX="emacs-${SLOT}"
145 S="${WORKDIR}/emacs-${FULL_VERSION}"
146 SITEFILE="20${PN}-${SLOT}-gentoo.el"
147
148 src_unpack() {
149 unpack ${A}
150 cd "${S}"
151
152 epatch "${FILESDIR}/${PN}-freebsd-sparc-1.patch"
153
154 sed -i -e "s:/usr/lib/crtbegin.o:$(`tc-getCC` -print-file-name=crtbegin.o):g" \
155 -e "s:/usr/lib/crtend.o:$(`tc-getCC` -print-file-name=crtend.o):g" \
156 "${S}"/src/s/freebsd.h || die "unable to sed freebsd.h settings"
157
158 if ! use alsa; then
159 # ALSA is detected even if not requested by its USE flag.
160 # Suppress it by supplying pkg-config with a wrong library name.
161 sed -i -e "/ALSA_MODULES=/s/alsa/DiSaBlEaLsA/" configure.in \
162 || die "unable to sed configure.in"
163 fi
164 if ! use gzip-el; then
165 # Emacs' build system automatically detects the gzip binary and
166 # compresses el files. We don't want that so confuse it with a
167 # wrong binary name
168 sed -i -e "s/ gzip/ PrEvEnTcOmPrEsSiOn/" configure.in \
169 || die "unable to sed configure.in"
170 fi
171
172 eautoreconf
173 }
174
175 src_compile() {
176 export SANDBOX_ON=0 # for the unbelievers, see Bug #131505
177 ALLOWED_FLAGS=""
178 strip-flags
179 #unset LDFLAGS
180 replace-flags -O[3-9] -O2
181
182 local myconf
183
184 if use alsa && ! use sound; then
185 echo
186 einfo "Although sound USE flag is disabled you chose to have alsa,"
187 einfo "so sound is switched on anyway."
188 echo
189 myconf="${myconf} --with-sound"
190 else
191 myconf="${myconf} $(use_with sound)"
192 fi
193
194 if use X; then
195 myconf="${myconf} --with-x"
196 myconf="${myconf} $(use_with toolkit-scroll-bars)"
197 myconf="${myconf} $(use_with gif) $(use_with jpeg)"
198 myconf="${myconf} $(use_with png) $(use_with svg rsvg)"
199 myconf="${myconf} $(use_with tiff) $(use_with xpm)"
200 myconf="${myconf} $(use_with xft freetype) $(use_with xft)"
201
202 if use xft; then
203 myconf="${myconf} $(use_with m17n-lib libotf)"
204 myconf="${myconf} $(use_with m17n-lib m17n-flt)"
205 else
206 myconf="${myconf} --without-libotf --without-m17n-flt"
207 use m17n-lib && einfo \
208 "USE flag \"m17n-lib\" has no effect because xft is not set."
209 fi
210
211 # GTK+ is the default toolkit if USE=gtk is chosen with other
212 # possibilities. Emacs upstream thinks this should be standard
213 # policy on all distributions
214 if use gtk; then
215 einfo "Configuring to build with GIMP Toolkit (GTK+)"
216 myconf="${myconf} --with-x-toolkit=gtk"
217 elif use Xaw3d; then
218 einfo "Configuring to build with Xaw3d (Athena) toolkit"
219 myconf="${myconf} --with-x-toolkit=athena"
220 elif use motif; then
221 einfo "Configuring to build with Motif toolkit"
222 myconf="${myconf} --with-x-toolkit=motif"
223 else
224 einfo "Configuring to build with no toolkit"
225 myconf="${myconf} --with-x-toolkit=no"
226 fi
227
228 local f tk=
229 for f in gtk Xaw3d motif; do
230 use ${f} || continue
231 [ "${tk}" ] \
232 && ewarn "USE flag \"${f}\" ignored (superseded by \"${tk}\")"
233 tk="${tk}${tk:+ }${f}"
234 done
235 else
236 myconf="${myconf} --without-x"
237 fi
238
239 myconf="${myconf} $(use_with hesiod)"
240 myconf="${myconf} $(use_with kerberos) $(use_with kerberos kerberos5)"
241 myconf="${myconf} $(use_with gpm) $(use_with dbus)"
242
243 econf \
244 --program-suffix=-${EMACS_SUFFIX} \
245 --infodir=/usr/share/info/${EMACS_SUFFIX} \
246 ${myconf} || die "econf emacs failed"
247
248 #emake CC="$(tc-getCC)" bootstrap || die "make bootstrap failed"
249 ## cleanup, otherwise emacs will be dumped again in src_install
250 #(cd src; emake versionclean)
251 emake CC="$(tc-getCC)" || die "emake failed"
252 }
253
254 src_install () {
255 local i m
256
257 emake install DESTDIR="${D}" || die "make install failed"
258
259 rm "${D}"/usr/bin/emacs-${FULL_VERSION}-${EMACS_SUFFIX} \
260 || die "removing duplicate emacs executable failed"
261 mv "${D}"/usr/bin/emacs-${EMACS_SUFFIX} "${D}"/usr/bin/${EMACS_SUFFIX} \
262 || die "moving Emacs executable failed"
263
264 # move info documentation to the correct place
265 for i in "${D}"/usr/share/info/${EMACS_SUFFIX}/*; do
266 mv "${i}" "${i}.info" || die "mv info failed"
267 done
268
269 # move man pages to the correct place
270 for m in "${D}"/usr/share/man/man1/* ; do
271 mv "${m}" "${m%.1}-${EMACS_SUFFIX}.1" || die "mv man failed"
272 done
273
274 # avoid collision between slots, see bug #169033 e.g.
275 rm "${D}"/usr/share/emacs/site-lisp/subdirs.el
276 rm -rf "${D}"/usr/share/{applications,icons}
277 rm "${D}"/var/lib/games/emacs/{snake,tetris}-scores
278 keepdir /usr/share/emacs/site-lisp
279 keepdir /var/lib/games/emacs
280
281 local c=";;"
282 if use source; then
283 insinto /usr/share/emacs/${FULL_VERSION}/src
284 # This is not meant to install all the source -- just the
285 # C source you might find via find-function
286 doins src/*.[ch]
287 c=""
288 fi
289
290 sed 's/^X//' >"${SITEFILE}" <<-EOF
291 X
292 ;;; ${PN}-${SLOT} site-lisp configuration
293 X
294 (when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
295 X ${c}(setq find-function-C-source-directory
296 X ${c} "/usr/share/emacs/${FULL_VERSION}/src")
297 X (let ((path (getenv "INFOPATH"))
298 X (dir "/usr/share/info/${EMACS_SUFFIX}"))
299 X (and path
300 X ;; move Emacs Info dir to beginning of list
301 X (setq Info-directory-list
302 X (cons dir (delete dir (split-string path ":" t)))))))
303 EOF
304 elisp-site-file-install "${SITEFILE}" || die
305
306 dodoc README BUGS || die "dodoc failed"
307 }
308
309 emacs-infodir-rebuild() {
310 # Depending on the Portage version, the Info dir file is compressed
311 # or removed. It is only rebuilt by Portage if our directory is in
312 # INFOPATH, which is not guaranteed. So we rebuild it ourselves.
313
314 local infodir=/usr/share/info/${EMACS_SUFFIX} f
315 [ -d "${ROOT}"${infodir} ] || return # may occur with FEATURES=noinfo
316 einfo "Regenerating Info directory index in ${infodir} ..."
317 rm -f "${ROOT}"${infodir}/dir{,.*}
318 for f in "${ROOT}"${infodir}/*.info*; do
319 [[ ${f##*/} != *[0-9].info* && -e ${f} ]] \
320 && install-info --info-dir="${ROOT}"${infodir} "${f}" &>/dev/null
321 done
322 rmdir "${ROOT}"${infodir} 2>/dev/null # remove dir if it is empty
323 echo
324 }
325
326 pkg_postinst() {
327 [ -f "${ROOT}"/usr/share/emacs/site-lisp/subdirs.el ] \
328 || cp "${ROOT}"/usr/share/emacs{/${FULL_VERSION},}/site-lisp/subdirs.el
329
330 local f
331 for f in "${ROOT}"/var/lib/games/emacs/{snake,tetris}-scores; do
332 [ -e "${f}" ] || touch "${f}"
333 done
334
335 elisp-site-regen
336 emacs-infodir-rebuild
337 eselect emacs update ifunset
338
339 echo
340 elog "You can set the version to be started by /usr/bin/emacs through"
341 elog "the Emacs eselect module, which also redirects man and info pages."
342 elog "You can therefore test emacs-cvs along with the stable release."
343 elog "\"man emacs.eselect\" for details."
344 }
345
346 pkg_postrm() {
347 elisp-site-regen
348 emacs-infodir-rebuild
349 eselect emacs update ifunset
350 }