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: ChangeLog emacs-22.2.ebuild
Date: Wed, 26 Mar 2008 14:37:01
Message-Id: E1JeWkM-000492-EU@stork.gentoo.org
1 ulm 08/03/26 14:36:58
2
3 Modified: ChangeLog
4 Added: emacs-22.2.ebuild
5 Log:
6 Version bump.
7 (Portage version: 2.1.4.4)
8
9 Revision Changes Path
10 1.233 app-editors/emacs/ChangeLog
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs/ChangeLog?rev=1.233&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs/ChangeLog?rev=1.233&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs/ChangeLog?r1=1.232&r2=1.233
15
16 Index: ChangeLog
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/app-editors/emacs/ChangeLog,v
19 retrieving revision 1.232
20 retrieving revision 1.233
21 diff -u -r1.232 -r1.233
22 --- ChangeLog 2 Feb 2008 21:08:12 -0000 1.232
23 +++ ChangeLog 26 Mar 2008 14:36:57 -0000 1.233
24 @@ -1,6 +1,11 @@
25 # ChangeLog for app-editors/emacs
26 # Copyright 2002-2008 Gentoo Foundation; Distributed under the GPL v2
27 -# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs/ChangeLog,v 1.232 2008/02/02 21:08:12 ulm Exp $
28 +# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs/ChangeLog,v 1.233 2008/03/26 14:36:57 ulm Exp $
29 +
30 +*emacs-22.2 (26 Mar 2008)
31 +
32 + 26 Mar 2008; Ulrich Mueller <ulm@g.o> +emacs-22.2.ebuild:
33 + Version bump.
34
35 02 Feb 2008; Ulrich Mueller <ulm@g.o> emacs-18.59-r4.ebuild,
36 emacs-21.4-r14.ebuild, emacs-22.1-r3.ebuild:
37
38
39
40 1.1 app-editors/emacs/emacs-22.2.ebuild
41
42 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs/emacs-22.2.ebuild?rev=1.1&view=markup
43 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/emacs/emacs-22.2.ebuild?rev=1.1&content-type=text/plain
44
45 Index: emacs-22.2.ebuild
46 ===================================================================
47 # Copyright 1999-2008 Gentoo Foundation
48 # Distributed under the terms of the GNU General Public License v2
49 # $Header: /var/cvsroot/gentoo-x86/app-editors/emacs/emacs-22.2.ebuild,v 1.1 2008/03/26 14:36:57 ulm Exp $
50
51 inherit autotools elisp-common eutils flag-o-matic
52
53 DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
54 HOMEPAGE="http://www.gnu.org/software/emacs/"
55 SRC_URI="mirror://gnu/emacs/${P}.tar.gz"
56
57 LICENSE="GPL-3 FDL-1.2 BSD"
58 SLOT="22"
59 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd"
60 IUSE="alsa gif gtk gzip-el hesiod jpeg kerberos motif png spell sound source tiff toolkit-scroll-bars X Xaw3d xpm"
61 RESTRICT="strip"
62
63 RDEPEND="!<app-editors/emacs-cvs-22.1
64 sys-libs/ncurses
65 >=app-admin/eselect-emacs-1.2
66 net-libs/liblockfile
67 hesiod? ( net-dns/hesiod )
68 kerberos? ( virtual/krb5 )
69 spell? ( || ( app-text/ispell app-text/aspell ) )
70 alsa? ( media-libs/alsa-lib )
71 X? (
72 x11-libs/libXmu
73 x11-libs/libXt
74 x11-misc/xbitmaps
75 x11-misc/emacs-desktop
76 gif? ( media-libs/giflib )
77 jpeg? ( media-libs/jpeg )
78 tiff? ( media-libs/tiff )
79 png? ( media-libs/libpng )
80 xpm? ( x11-libs/libXpm )
81 gtk? ( =x11-libs/gtk+-2* )
82 !gtk? (
83 Xaw3d? ( x11-libs/Xaw3d )
84 !Xaw3d? (
85 motif? ( virtual/motif )
86 )
87 )
88 )"
89
90 DEPEND="${RDEPEND}
91 alsa? ( dev-util/pkgconfig )
92 X? ( gtk? ( dev-util/pkgconfig ) )
93 gzip-el? ( app-arch/gzip )"
94
95 # FULL_VERSION keeps the full version number, which is needed in order to
96 # determine some path information correctly for copy/move operations later on
97 FULL_VERSION="${PV}"
98
99 src_unpack() {
100 unpack ${A}
101 cd "${S}"
102
103 epatch "${FILESDIR}/emacs-22.1-Xaw3d-headers.patch"
104 epatch "${FILESDIR}/emacs-22.1-freebsd-sparc.patch"
105
106 sed -i -e "s:/usr/lib/crtbegin.o:$(`tc-getCC` -print-file-name=crtbegin.o):g" \
107 -e "s:/usr/lib/crtend.o:$(`tc-getCC` -print-file-name=crtend.o):g" \
108 "${S}"/src/s/freebsd.h || die "unable to sed freebsd.h settings"
109
110 if ! use alsa; then
111 # ALSA is detected even if not requested by its USE flag.
112 # Suppress it by supplying pkg-config with a wrong library name.
113 sed -i -e "/ALSA_MODULES=/s/alsa/DiSaBlEaLsA/" configure.in \
114 || die "unable to sed configure.in"
115 fi
116 if ! use gzip-el; then
117 # Emacs' build system automatically detects the gzip binary and
118 # compresses el files. We don't want that so confuse it with a
119 # wrong binary name
120 sed -i -e "s/ gzip/ PrEvEnTcOmPrEsSiOn/" configure.in \
121 || die "unable to sed configure.in"
122 fi
123
124 eautoreconf
125 }
126
127 src_compile() {
128 export SANDBOX_ON=0 # for the unbelievers, see Bug #131505
129 ALLOWED_FLAGS=""
130 strip-flags
131 #unset LDFLAGS
132 if use hppa; then # bug #193703
133 replace-flags -O[2-9] -O
134 else
135 replace-flags -O[3-9] -O2
136 fi
137 sed -i -e "s/-lungif/-lgif/g" configure* src/Makefile* || die
138
139 local myconf
140
141 if use alsa && ! use sound; then
142 echo
143 einfo "Although sound USE flag is disabled you chose to have alsa,"
144 einfo "so sound is switched on anyway."
145 echo
146 myconf="${myconf} --with-sound"
147 else
148 myconf="${myconf} $(use_with sound)"
149 fi
150
151 if use X; then
152 myconf="${myconf} --with-x"
153 myconf="${myconf} $(use_with toolkit-scroll-bars)"
154 myconf="${myconf} $(use_with jpeg) $(use_with tiff)"
155 myconf="${myconf} $(use_with gif) $(use_with png)"
156 myconf="${myconf} $(use_with xpm)"
157
158 # GTK+ is the default toolkit if USE=gtk is chosen with other
159 # possibilities. Emacs upstream thinks this should be standard
160 # policy on all distributions
161 if use gtk; then
162 einfo "Configuring to build with GTK+ support"
163 myconf="${myconf} --with-x-toolkit=gtk"
164 elif use Xaw3d; then
165 einfo "Configuring to build with Xaw3d (athena) support"
166 myconf="${myconf} --with-x-toolkit=athena"
167 myconf="${myconf} --without-gtk"
168 elif use motif; then
169 einfo "Configuring to build with motif toolkit support"
170 myconf="${myconf} --with-x-toolkit=motif"
171 myconf="${myconf} --without-gtk"
172 else
173 einfo "Configuring to build with no toolkit"
174 myconf="${myconf} --with-x-toolkit=no"
175 myconf="${myconf} --without-gtk"
176 fi
177 else
178 myconf="${myconf} --without-x"
179 fi
180
181 myconf="${myconf} $(use_with hesiod)"
182 myconf="${myconf} $(use_with kerberos) $(use_with kerberos kerberos5)"
183
184 econf \
185 --program-suffix=-emacs-${SLOT} \
186 --infodir=/usr/share/info/emacs-${SLOT} \
187 --without-carbon \
188 ${myconf} || die "econf emacs failed"
189
190 emake CC="$(tc-getCC)" || die "emake failed"
191
192 einfo "Recompiling patched lisp files..."
193 (cd lisp; emake recompile) || die "emake recompile failed"
194 (cd src; emake versionclean)
195 emake CC="$(tc-getCC)" || die "emake failed"
196 }
197
198 src_install () {
199 local i m
200
201 emake install DESTDIR="${D}" || die "make install failed"
202
203 rm "${D}"/usr/bin/emacs-${FULL_VERSION}-emacs-${SLOT} \
204 || die "removing duplicate emacs executable failed"
205 mv "${D}"/usr/bin/emacs-emacs-${SLOT} "${D}"/usr/bin/emacs-${SLOT} \
206 || die "moving Emacs executable failed"
207
208 # move info documentation to the correct place
209 einfo "Fixing info documentation ..."
210 for i in "${D}"/usr/share/info/emacs-${SLOT}/*; do
211 mv "${i}" "${i}.info" || die "mv info failed"
212 done
213
214 # move man pages to the correct place
215 einfo "Fixing manpages ..."
216 for m in "${D}"/usr/share/man/man1/* ; do
217 mv "${m}" "${m%.1}-emacs-${SLOT}.1" || die "mv man failed"
218 done
219
220 # avoid collision between slots, see bug #169033 e.g.
221 rm "${D}"/usr/share/emacs/site-lisp/subdirs.el
222 rm "${D}"/var/lib/games/emacs/{snake,tetris}-scores
223 keepdir /var/lib/games/emacs/
224
225 if use source; then
226 insinto /usr/share/emacs/${FULL_VERSION}/src
227 # This is not meant to install all the source -- just the
228 # C source you might find via find-function
229 doins src/*.[ch]
230 sed 's/^X//' >10${PN}-${SLOT}-gentoo.el <<-EOF
231
232 ;;; ${PN}-${SLOT} site-lisp configuration
233
234 (if (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
235 X (setq find-function-C-source-directory
236 X "/usr/share/emacs/${FULL_VERSION}/src"))
237 EOF
238 elisp-site-file-install 10${PN}-${SLOT}-gentoo.el
239 fi
240
241 dodoc AUTHORS BUGS CONTRIBUTE README || die "dodoc failed"
242 }
243
244 emacs-infodir-rebuild() {
245 # Depending on the Portage version, the Info dir file is compressed
246 # or removed. It is only rebuilt by Portage if our directory is in
247 # INFOPATH, which is not guaranteed. So we rebuild it ourselves.
248
249 local infodir=/usr/share/info/emacs-${SLOT} f
250 einfo "Regenerating Info directory index in ${infodir} ..."
251 rm -f "${ROOT}"${infodir}/dir{,.*}
252 for f in "${ROOT}"${infodir}/*.info*; do
253 [[ ${f##*/} == *[0-9].info* ]] \
254 || install-info --info-dir="${ROOT}"${infodir} "${f}" &>/dev/null
255 done
256 rmdir "${ROOT}"${infodir} 2>/dev/null # remove dir if it is empty
257 echo
258 }
259
260 pkg_postinst() {
261 [ -f "${ROOT}"/usr/share/emacs/site-lisp/subdirs.el ] \
262 || cp "${ROOT}"/usr/share/emacs{/${FULL_VERSION},}/site-lisp/subdirs.el
263
264 local f
265 for f in "${ROOT}"/var/lib/games/emacs/{snake,tetris}-scores; do
266 [ -e "${f}" ] || touch "${f}"
267 done
268
269 elisp-site-regen
270 emacs-infodir-rebuild
271
272 if [[ $(readlink "${ROOT}"/usr/bin/emacs) == emacs.emacs-${SLOT}* ]]; then
273 # transition from pre-eselect revision
274 eselect emacs set emacs-${SLOT}
275 else
276 eselect emacs update ifunset
277 fi
278
279 if use X; then
280 elog "You need to install some fonts for Emacs. Under monolithic"
281 elog "XFree86/Xorg you typically had such fonts installed by default."
282 elog "With modular Xorg, you will have to perform this step yourself."
283 elog "Installing media-fonts/font-adobe-{75,100}dpi on the X server's"
284 elog "machine would satisfy basic Emacs requirements under X11."
285 fi
286
287 echo
288 elog "You can set the version to be started by /usr/bin/emacs through"
289 elog "the Emacs eselect module, which also redirects man and info pages."
290 elog "Therefore, several Emacs versions can be installed at the same time."
291 elog "\"man emacs.eselect\" for details."
292 }
293
294 pkg_postrm() {
295 elisp-site-regen
296 emacs-infodir-rebuild
297 eselect emacs update ifunset
298 }
299
300
301
302 --
303 gentoo-commits@l.g.o mailing list