Gentoo Archives: gentoo-commits

From: Mats Lidell <matsl@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/emacs:master commit in: app-editors/xemacs/, app-editors/xemacs/files/
Date: Sat, 01 Feb 2014 00:57:29
Message-Id: 1391215576.251adb491075236da0d42f6faf9fb0ce0991eb54.matsl@gentoo
1 commit: 251adb491075236da0d42f6faf9fb0ce0991eb54
2 Author: Mats Lidell <matsl <AT> gentoo <DOT> org>
3 AuthorDate: Sat Feb 1 00:46:16 2014 +0000
4 Commit: Mats Lidell <matsl <AT> gentoo <DOT> org>
5 CommitDate: Sat Feb 1 00:46:16 2014 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/emacs.git;a=commit;h=251adb49
7
8 Add patch allowing ncurses to be build with tinfo library
9
10 Package-Manager: portage-2.2.7
11
12 ---
13 .../files/xemacs-21.5.34-ncurses-tinfo.patch | 13 ++
14 app-editors/xemacs/xemacs-21.5.34-r1.ebuild | 237 +++++++++++++++++++++
15 2 files changed, 250 insertions(+)
16
17 diff --git a/app-editors/xemacs/files/xemacs-21.5.34-ncurses-tinfo.patch b/app-editors/xemacs/files/xemacs-21.5.34-ncurses-tinfo.patch
18 new file mode 100644
19 index 0000000..a08eda3
20 --- /dev/null
21 +++ b/app-editors/xemacs/files/xemacs-21.5.34-ncurses-tinfo.patch
22 @@ -0,0 +1,13 @@
23 +diff -r 6355de501637 configure
24 +--- a/configure Thu Jan 23 15:03:16 2014 +0000
25 ++++ b/configure Fri Jan 31 23:55:12 2014 +0100
26 +@@ -19699,7 +19699,8 @@
27 + extra_objs="$extra_objs terminfo.o" && if test "$verbose" = "yes"; then
28 + echo " xemacs will be linked with \"terminfo.o\""
29 + fi
30 +- LIBS="-lncurses $LIBS" && if test "$verbose" = "yes"; then echo " Prepending \"-lncurses\" to \$LIBS"; fi
31 ++ ncurses_libs=$(pkg-config ncurses --libs)
32 ++ LIBS="$ncurses_libs $LIBS" && if test "$verbose" = "yes"; then echo " Prepending \"$ncurses_libs\" to \$LIBS"; fi
33 +
34 + if test "$ac_cv_header_ncurses_curses_h" != "yes" ; then
35 + save_c_switch_site="$c_switch_site"
36
37 diff --git a/app-editors/xemacs/xemacs-21.5.34-r1.ebuild b/app-editors/xemacs/xemacs-21.5.34-r1.ebuild
38 new file mode 100644
39 index 0000000..201145b
40 --- /dev/null
41 +++ b/app-editors/xemacs/xemacs-21.5.34-r1.ebuild
42 @@ -0,0 +1,237 @@
43 +# Copyright 1999-2014 Gentoo Foundation
44 +# Distributed under the terms of the GNU General Public License v2
45 +# $Header: /var/cvsroot/gentoo-x86/app-editors/xemacs/xemacs-21.5.31.ebuild,v 1.12 2012/10/24 18:58:39 ulm Exp $
46 +
47 +# Note: xemacs currently does not work with a hardened profile. If you
48 +# want to use xemacs on a hardened profile then compile with the
49 +# -nopie flag in CFLAGS or help fix bug #75028.
50 +
51 +EAPI=4
52 +
53 +export WANT_AUTOCONF="2.5"
54 +inherit eutils flag-o-matic multilib
55 +
56 +DESCRIPTION="highly customizable open source text editor and application development system"
57 +HOMEPAGE="http://www.xemacs.org/"
58 +SRC_URI="http://ftp.xemacs.org/xemacs-21.5/${P}.tar.gz
59 + http://www.malfunction.de/afterstep/files/NeXT_XEmacs.tar.gz"
60 +
61 +LICENSE="GPL-3"
62 +SLOT="0"
63 +KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd"
64 +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"
65 +
66 +X_DEPEND="x11-libs/libXt x11-libs/libXmu x11-libs/libXext x11-misc/xbitmaps"
67 +
68 +RDEPEND="
69 + berkdb? ( >=sys-libs/db-4 !!<sys-libs/db-4 )
70 + gdbm? ( >=sys-libs/gdbm-1.8.3[berkdb(+)] )
71 + >=sys-libs/zlib-1.1.4
72 + >=dev-libs/openssl-0.9.6
73 + >=media-libs/audiofile-0.2.3
74 + gpm? ( >=sys-libs/gpm-1.19.6 )
75 + postgres? ( dev-db/postgresql-base )
76 + ldap? ( net-nds/openldap )
77 + alsa? ( media-libs/alsa-lib )
78 + nas? ( media-libs/nas )
79 + X? ( $X_DEPEND !Xaw3d? ( !neXt? ( x11-libs/libXaw ) ) )
80 + dnd? ( x11-libs/dnd )
81 + motif? ( >=x11-libs/motif-2.3:0[xft=] )
82 + athena? ( x11-libs/libXaw )
83 + Xaw3d? ( x11-libs/libXaw3d )
84 + xft? ( media-libs/freetype:2 x11-libs/libXft x11-libs/libXrender >=media-libs/fontconfig-2.5.0 )
85 + neXt? ( x11-libs/neXtaw )
86 + xface? ( media-libs/compface )
87 + tiff? ( media-libs/tiff )
88 + png? ( >=media-libs/libpng-1.2 )
89 + jpeg? ( virtual/jpeg )
90 + canna? ( app-i18n/canna )
91 + freewnn? ( app-i18n/freewnn )
92 + >=sys-libs/ncurses-5.2"
93 +
94 +DEPEND="${RDEPEND}
95 + virtual/pkgconfig
96 + >=app-admin/eselect-emacs-1.2"
97 +
98 +PDEPEND="app-xemacs/xemacs-base
99 + mule? ( app-xemacs/mule-base )"
100 +
101 +src_unpack() {
102 + default_src_unpack
103 +
104 + use neXt && unpack NeXT_XEmacs.tar.gz
105 +}
106 +
107 +src_prepare() {
108 + use neXt && cp "${WORKDIR}"/NeXT.XEmacs/xemacs-icons/* "${S}"/etc/toolbar/
109 + find "${S}"/lisp -name '*.elc' -exec rm {} \; || die
110 + epatch "${FILESDIR}/${P}-ncurses-tinfo.patch"
111 +}
112 +
113 +src_configure() {
114 + local myconf=""
115 +
116 + if use X; then
117 +
118 + myconf="${myconf} --with-widgets=athena"
119 + myconf="${myconf} --with-dialogs=athena"
120 + myconf="${myconf} --with-menubars=lucid"
121 + myconf="${myconf} --with-scrollbars=lucid"
122 + if use motif ; then
123 + myconf="--with-widgets=motif"
124 + myconf="${myconf} --with-dialogs=motif"
125 + myconf="${myconf} --with-scrollbars=motif"
126 + myconf="${myconf} --with-menubars=lucid"
127 + fi
128 + if use athena or use Xaw3d ; then
129 + myconf="--with-scrollbars=athena"
130 + fi
131 +
132 + if use Xaw3d; then
133 + myconf="${myconf} --with-athena=3d"
134 + elif use neXt; then
135 + myconf="${myconf} --with-athena=next"
136 + else
137 + myconf="${myconf} --with-athena=xaw"
138 + fi
139 +
140 + use dnd && myconf="${myconf} --with-dragndrop --with-offix"
141 +
142 + myconf="${myconf} $(use_with tiff )"
143 + myconf="${myconf} $(use_with png )"
144 + myconf="${myconf} $(use_with jpeg )"
145 + myconf="${myconf} $(use_with xface )"
146 +
147 + use xft && myconf="${myconf} --with-xft=emacs,tabs,menubars,gauges" ||
148 + myconf="${myconf} --with-xft=no"
149 +
150 + else
151 + myconf="${myconf}
152 + --without-x
153 + --without-xpm
154 + --without-dragndrop
155 + --with-xft=no
156 + --with-gif=no"
157 + fi
158 +
159 + if use mule ; then
160 + myconf="${myconf} --with-mule"
161 +
162 + if use xim ; then
163 + if use motif ; then
164 + myconf="${myconf} --with-xim=motif"
165 + else
166 + myconf="${myconf} --with-xim=xlib"
167 + fi
168 + else
169 + myconf="${myconf} --with-xim=no"
170 + fi
171 +
172 + myconf="${myconf} $(use_with canna )"
173 + myconf="${myconf} $(use_with freewnn wnn )"
174 + fi
175 +
176 + # This determines the type of sounds we are playing
177 + local soundconf="native"
178 +
179 + # This determines how these sounds should be played
180 + use nas && soundconf="${soundconf},nas"
181 + use alsa && soundconf="${soundconf},alsa"
182 +
183 + myconf="${myconf} --with-sound=${soundconf}"
184 +
185 + if use gdbm || use berkdb ; then
186 + use gdbm && mydb="gdbm"
187 + use berkdb && mydb="${mydb},berkdb"
188 +
189 + myconf="${myconf} --with-database=${mydb}"
190 + else
191 + myconf="${myconf} --without-database"
192 + fi
193 +
194 + use debug && myconf="${myconf} --with-debug" ||
195 + myconf="${myconf} --with-optimization"
196 +
197 + econf ${myconf} \
198 + $(use_with gif ) \
199 + $(use_with gpm ) \
200 + $(use_with postgres postgresql ) \
201 + $(use_with ldap ) \
202 + $(use_with eolconv file-coding ) \
203 + $(use_with pop ) \
204 + --prefix=/usr \
205 + --with-ncurses \
206 + --with-msw=no \
207 + --with-mail-locking=flock \
208 + --with-site-lisp=yes \
209 + --with-site-modules=yes \
210 + --with-newgc \
211 + --enable-option-checking=no \
212 + --with-last-packages=/usr/lib/xemacs \
213 + || die "configuration failed"
214 +}
215 +
216 +src_install() {
217 + emake prefix="${D}"/usr \
218 + mandir="${D}"/usr/share/man/man1 \
219 + infodir="${D}"/usr/share/info \
220 + libdir="${D}"/usr/$(get_libdir) \
221 + datadir="${D}"/usr/share \
222 + install gzip-el || die
223 +
224 + # Rename some applications installed in bin so that it is clear
225 + # which application installed them and so that conflicting
226 + # packages (emacs) can't clobber the actual applications.
227 + # Addresses bug #62991.
228 + for i in b2m ctags etags ; do
229 + mv "${D}"/usr/bin/${i} "${D}"/usr/bin/${i}-xemacs || die "mv ${i} failed"
230 + done
231 +
232 + # rename man pages
233 + for i in ctags etags; do
234 + mv "${D}"/usr/share/man/man1/${i}{,-xemacs}.1 || die "mv ${i}.1 failed"
235 + done
236 +
237 + # install base packages directories
238 + dodir /usr/lib/xemacs/xemacs-packages/
239 + dodir /usr/lib/xemacs/site-packages/
240 + dodir /usr/lib/xemacs/site-modules/
241 + dodir /usr/lib/xemacs/site-lisp/
242 +
243 + if use mule;
244 + then
245 + dodir /usr/lib/xemacs/mule-packages
246 + fi
247 +
248 + # remove extraneous info files
249 + cd "${D}"/usr/share/info
250 + rm -f dir info.info texinfo* termcap* standards*
251 +
252 + cd "${S}"
253 + dodoc CHANGES-* ChangeLog INSTALL Installation PROBLEMS README*
254 +
255 + newicon "${S}"/etc/${PN}-icon.xpm ${PN}.xpm
256 +
257 + domenu "${FILESDIR}"/${PN}.desktop
258 +}
259 +
260 +pkg_postinst() {
261 + eselect emacs update ifunset
262 +
263 + einfo "*************************************************"
264 + einfo "If you are upgrading from XEmacs 21.4 you should note the following"
265 + einfo "incompatibilities:"
266 + einfo "- Mule-UCS is no longer supported due to proper UTF-8 support in XEmacs 21.5"
267 + einfo "- The X resource class has changed from Emacs to XEmacs,"
268 + einfo " settings in your .Xdefaults file should be updated accordingly."
269 +
270 + if use xft;
271 + then
272 + einfo "You have enabled Xft font support. Xft requires font names to be provided"
273 + einfo "in a different way, so you may need to adjust your .Xdefaults accordingly."
274 + fi
275 +}
276 +
277 +pkg_postrm() {
278 + eselect emacs update ifunset
279 +}