/[gentoo-x86]/app-editors/xemacs/xemacs-21.5.30.ebuild
Gentoo

Contents of /app-editors/xemacs/xemacs-21.5.30.ebuild

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.6 - (show annotations) (download)
Wed Oct 24 18:58:39 2012 UTC (2 years, 9 months ago) by ulm
Branch: MAIN
Changes since 1.5: +2 -2 lines
Update dependency after package move from x11-libs/openmotif to x11-libs/motif.

(Portage version: 2.1.11.30/cvs/Linux x86_64, signed Manifest commit with key E7BE08CA7DC6EA25)

1 # Copyright 1999-2012 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Header: /var/cvsroot/gentoo-x86/app-editors/xemacs/xemacs-21.5.30.ebuild,v 1.5 2012/09/05 08:48:48 jlec Exp $
4
5 # Note: xemacs currently does not work with a hardened profile. If you
6 # want to use xemacs on a hardened profile then compile with the
7 # -nopie flag in CFLAGS or help fix bug #75028.
8
9 EAPI="2"
10
11 export WANT_AUTOCONF="2.5"
12 inherit eutils flag-o-matic multilib
13
14 DESCRIPTION="highly customizable open source text editor and application development system"
15 HOMEPAGE="http://www.xemacs.org/"
16 SRC_URI="http://ftp.xemacs.org/xemacs-21.5/${P}.tar.gz
17 http://www.malfunction.de/afterstep/files/NeXT_XEmacs.tar.gz"
18
19 LICENSE="GPL-2"
20 SLOT="0"
21 KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
22 IUSE="alsa debug eolconv gif gpm pop postgres ldap xface nas dnd X jpeg tiff png mule motif freewnn canna xft xim athena neXt Xaw3d gdbm berkdb"
23
24 X_DEPEND="x11-libs/libXt x11-libs/libXmu x11-libs/libXext x11-misc/xbitmaps"
25
26 RDEPEND="
27 berkdb? ( sys-libs/db )
28 gdbm? ( >=sys-libs/gdbm-1.8.3 )
29 >=sys-libs/zlib-1.1.4
30 >=dev-libs/openssl-0.9.6
31 >=media-libs/audiofile-0.2.3
32 gpm? ( >=sys-libs/gpm-1.19.6 )
33 postgres? ( dev-db/postgresql-base )
34 ldap? ( net-nds/openldap )
35 alsa? ( media-libs/alsa-lib )
36 nas? ( media-libs/nas )
37 X? ( $X_DEPEND !Xaw3d? ( !neXt? ( x11-libs/libXaw ) ) )
38 dnd? ( x11-libs/dnd )
39 motif? ( >=x11-libs/motif-2.3:0[xft=] )
40 athena? ( x11-libs/libXaw )
41 Xaw3d? ( x11-libs/libXaw3d )
42 xft? ( media-libs/freetype x11-libs/libXft x11-libs/libXrender >=media-libs/fontconfig-2.5.0 )
43 neXt? ( x11-libs/neXtaw )
44 xface? ( media-libs/compface )
45 tiff? ( media-libs/tiff )
46 png? ( >=media-libs/libpng-1.2 )
47 jpeg? ( virtual/jpeg )
48 canna? ( app-i18n/canna )
49 freewnn? ( app-i18n/freewnn )
50 >=sys-libs/ncurses-5.2"
51
52 DEPEND="${RDEPEND}
53 >=app-admin/eselect-emacs-1.2"
54
55 PDEPEND="app-xemacs/xemacs-base
56 mule? ( app-xemacs/mule-base )"
57
58 src_unpack() {
59 default_src_unpack
60
61 use neXt && unpack NeXT_XEmacs.tar.gz
62 }
63
64 src_prepare() {
65 # Fix security issue in vcdiff script
66 epatch "${FILESDIR}"/${PN}-21.5.29-vcdiff.patch
67
68 # Fix problem caused by improper optimization with GCC 4.1.2 on x86
69 # (and possibly other arches, but only confirmed on x86). See
70 # http://tracker.xemacs.org/XEmacs/its/issue354 for the upstream
71 # bug.
72 epatch "${FILESDIR}"/${PN}-21.5.29-optimization-bug.patch
73
74 use neXt && cp "${WORKDIR}"/NeXT.XEmacs/xemacs-icons/* "${S}"/etc/toolbar/
75 }
76
77 src_configure() {
78 local myconf=""
79
80 if use X; then
81
82 myconf="${myconf} --with-widgets=athena"
83 myconf="${myconf} --with-dialogs=athena"
84 myconf="${myconf} --with-menubars=lucid"
85 myconf="${myconf} --with-scrollbars=lucid"
86 if use motif ; then
87 myconf="--with-widgets=motif"
88 myconf="${myconf} --with-dialogs=motif"
89 myconf="${myconf} --with-scrollbars=motif"
90 myconf="${myconf} --with-menubars=lucid"
91 fi
92 if use athena or use Xaw3d ; then
93 myconf="--with-scrollbars=athena"
94 fi
95
96 if use Xaw3d; then
97 myconf="${myconf} --with-athena=3d"
98 elif use neXt; then
99 myconf="${myconf} --with-athena=next"
100 else
101 myconf="${myconf} --with-athena=xaw"
102 fi
103
104 use dnd && myconf="${myconf} --with-dragndrop --with-offix"
105
106 myconf="${myconf} $(use_with tiff )"
107 myconf="${myconf} $(use_with png )"
108 myconf="${myconf} $(use_with jpeg )"
109 myconf="${myconf} $(use_with xface )"
110
111 use xft && myconf="${myconf} --with-xft=emacs,tabs,menubars,gauges" ||
112 myconf="${myconf} --with-xft=no"
113
114 else
115 myconf="${myconf}
116 --without-x
117 --without-xpm
118 --without-dragndrop
119 --with-xft=no
120 --with-gif=no"
121 fi
122
123 if use mule ; then
124 myconf="${myconf} --with-mule"
125
126 if use xim ; then
127 if use motif ; then
128 myconf="${myconf} --with-xim=motif"
129 else
130 myconf="${myconf} --with-xim=xlib"
131 fi
132 else
133 myconf="${myconf} --with-xim=no"
134 fi
135
136 myconf="${myconf} $(use_with canna )"
137 myconf="${myconf} $(use_with freewnn wnn )"
138 fi
139
140 # This determines the type of sounds we are playing
141 local soundconf="native"
142
143 # This determines how these sounds should be played
144 use nas && soundconf="${soundconf},nas"
145 use alsa && soundconf="${soundconf},alsa"
146
147 myconf="${myconf} --with-sound=${soundconf}"
148
149 if use gdbm || use berkdb ; then
150 use gdbm && mydb="gdbm"
151 use berkdb && mydb="${mydb},berkdb"
152
153 myconf="${myconf} --with-database=${mydb}"
154 else
155 myconf="${myconf} --without-database"
156 fi
157
158 use debug && myconf="${myconf} --with-optimization=no --with-debug" ||
159 myconf="${myconf} --with-optimization=yes"
160
161 econf ${myconf} \
162 $(use_with gif ) \
163 $(use_with gpm ) \
164 $(use_with postgres postgresql ) \
165 $(use_with ldap ) \
166 $(use_with eolconv file-coding ) \
167 $(use_with pop ) \
168 --prefix=/usr \
169 --with-ncurses \
170 --with-msw=no \
171 --with-mail-locking=flock \
172 --with-site-lisp=yes \
173 --with-site-modules=yes \
174 --with-newgc \
175 --enable-option-checking=no \
176 --with-last-packages=/usr/lib/xemacs \
177 || die "configuration failed"
178 }
179
180 src_install() {
181 emake prefix="${D}"/usr \
182 mandir="${D}"/usr/share/man/man1 \
183 infodir="${D}"/usr/share/info \
184 libdir="${D}"/usr/$(get_libdir) \
185 datadir="${D}"/usr/share \
186 install gzip-el || die
187
188 # Rename some applications installed in bin so that it is clear
189 # which application installed them and so that conflicting
190 # packages (emacs) can't clobber the actual applications.
191 # Addresses bug #62991.
192 for i in b2m ctags etags ; do
193 mv "${D}"/usr/bin/${i} "${D}"/usr/bin/${i}-xemacs || die "mv ${i} failed"
194 done
195
196 # rename man pages
197 for i in ctags etags; do
198 mv "${D}"/usr/share/man/man1/${i}{,-xemacs}.1 || die "mv ${i}.1 failed"
199 done
200
201 # install base packages directories
202 dodir /usr/lib/xemacs/xemacs-packages/
203 dodir /usr/lib/xemacs/site-packages/
204 dodir /usr/lib/xemacs/site-modules/
205 dodir /usr/lib/xemacs/site-lisp/
206
207 if use mule;
208 then
209 dodir /usr/lib/xemacs/mule-packages
210 fi
211
212 # remove extraneous info files
213 cd "${D}"/usr/share/info
214 rm -f dir info.info texinfo* termcap* standards*
215
216 cd "${S}"
217 dodoc CHANGES-* ChangeLog INSTALL Installation PROBLEMS README*
218
219 newicon "${S}"/etc/${PN}-icon.xpm ${PN}.xpm
220
221 domenu "${FILESDIR}"/${PN}.desktop
222 }
223
224 pkg_postinst() {
225 eselect emacs update ifunset
226
227 einfo "If you are upgrading from XEmacs 21.4 you should note the following"
228 einfo "incompatibilities:"
229 einfo "- Mule-UCS is no longer supported due to proper UTF-8 support in XEmacs 21.5"
230 einfo "- The X resource class has changed from Emacs to XEmacs,"
231 einfo " settings in your .Xdefaults file should be updated accordingly."
232
233 if use xft;
234 then
235 einfo "You have enabled Xft font support. Xft requires font names to be provided"
236 einfo "in a different way, so you may need to adjust your .Xdefaults accordingly."
237 fi
238 }
239
240 pkg_postrm() {
241 eselect emacs update ifunset
242 }

  ViewVC Help
Powered by ViewVC 1.1.20