3 %bcond_with yesterday_snapshot # Build most current ekg2 snapshot
4 # (must use ./builder -n5 or plain rpmbuild)
5 %bcond_without aspell # build without spell-checking support with aspell
6 %bcond_without feed # don't build feed plugin
7 %bcond_without gadugadu # don't build gg plugin
8 %bcond_without gpg # don't build gpg plugin
9 %bcond_without gtk # don't build gtk plugin
10 %bcond_without jabber # don't build jabber plugin
11 %bcond_without gnutls # build jabber plugin without libgnutls
12 %bcond_without libgsm # don't build libgsm plugin
13 %bcond_without perl # don't build Perl plugin
14 %bcond_without python # don't build Python plugin
15 %bcond_without readline # don't build readline interface
16 %bcond_with sqlite # build logsqlite plugin based on sqlite (conflicts with sqlite3)
17 %bcond_without sqlite3 # don't build logsqlite plugin based on sqlite3
18 %bcond_without xosd # don't build xosd plugin
20 %if %{with yesterday_snapshot}
21 %define _snap %(date +%%Y%%m%%d -d yesterday)
22 %define _ver 0.0.%{_snap}
36 Summary: Multi-protocol instant messaging and chat client
37 Summary(pl.UTF-8): Wieloprotokołowy komunikator internetowy
43 Group: Applications/Communications
44 Source0: http://pl.ekg2.org/%{name}-%{_snap}.tar.gz
45 # Source0-md5: 8c64ab909687b9ac3798caa7736d7b2a
46 Patch0: %{name}-perl-install.patch
47 #Patch1: %{name}-no_scripts.patch
49 %{?with_aspell:BuildRequires: aspell-devel}
50 BuildRequires: autoconf
51 BuildRequires: automake
52 %if %{with feed} || %{with jabber}
53 BuildRequires: expat-devel
55 BuildRequires: gettext-devel
56 %{?with_gadugadu:BuildRequires: giflib-devel}
57 %{?with_gnutls:BuildRequires: gnutls-devel >= 1.2.5}
58 %{?with_gpg:BuildRequires: gpgme-devel}
59 BuildRequires: gpm-devel
60 %{?with_gtk:BuildRequires: gtk+2-devel}
61 %{?with_gadugadu:BuildRequires: libgadu-devel}
62 %{?with_libgsm:BuildRequires: libgsm-devel}
63 %{?with_gadugadu:BuildRequires: libjpeg-devel}
64 BuildRequires: libltdl-devel
65 BuildRequires: libtool
66 BuildRequires: ncurses-devel
67 BuildRequires: openssl-devel >= 0.9.7d
68 %{?with_perl:BuildRequires: perl-devel}
69 BuildRequires: pkgconfig
70 %{?with_python:BuildRequires: python-devel}
71 %{?with_readline:BuildRequires: readline-devel}
72 %{?with_perl:BuildRequires: rpm-perlprov}
73 %{?with_python:BuildRequires: rpm-pythonprov}
74 BuildRequires: sed >= 4.0
75 %{?with_sqlite:BuildRequires: sqlite-devel}
76 %{?with_sqlite3:BuildRequires: sqlite3-devel}
77 %{?with_xosd:BuildRequires: xosd-devel}
78 BuildRequires: zlib-devel
79 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
82 Multi-protocol instant messaging and chat client with many plugins.
84 %description -l pl.UTF-8
85 Wieloprotokołowy, otwarty komunikator internetowy z wieloma wtyczkami.
87 %if %{without yesterday_snapshot}
89 Summary: ekg2 header files
90 Summary(pl.UTF-8): Pliki nagłówkowe ekg2
91 Group: Development/Libraries
92 Requires: %{name} = %{epoch}:%{version}-%{release}
95 Header files for ekg2.
97 %description devel -l pl.UTF-8
98 Pliki nagłówkowe ekg2.
101 %if %{with yesterday_snapshot}
103 Summary: feed plugin for ekg2
104 Summary(pl.UTF-8): Wtyczka feed dla ekg2
105 Group: Applications/Communications
106 Requires: %{name} = %{epoch}:%{version}-%{release}
108 %description plugin-feed
109 feed plugin for ekg2.
111 %description plugin-feed -l pl.UTF-8
112 Wtyczka feed dla ekg2.
116 Summary: gpg plugin for ekg2
117 Summary(pl.UTF-8): Wtyczka gpg dla ekg2
118 Group: Applications/Communications
119 Requires: %{name} = %{epoch}:%{version}-%{release}
121 %description plugin-gpg
124 %description plugin-gpg -l pl.UTF-8
125 Wtyczka gpg dla ekg2.
128 Summary: gtk plugin for ekg2
129 Summary(pl.UTF-8): Wtyczka gtk dla ekg2
130 Group: Applications/Communications
131 Requires: %{name} = %{epoch}:%{version}-%{release}
134 %description plugin-gtk
137 %description plugin-gtk -l pl.UTF-8
138 Wtyczka gtk dla ekg2.
140 %package plugin-ioctld
141 Summary: Ioctld plugin for ekg2
142 Summary(pl.UTF-8): Wtyczka ioctld dla ekg2
143 Group: Applications/Communications
144 Requires: %{name} = %{epoch}:%{version}-%{release}
146 %description plugin-ioctld
147 Ioctld plugin for ekg2 (contains suid root binary!).
149 %description plugin-ioctld -l pl.UTF-8
150 Wtyczka ioctld dla ekg2 (zawiera program z ustawionym suid root!).
152 %if %{with yesterday_snapshot}
153 %package plugin-jogger
154 Summary: Jogger plugin for ekg2
155 Summary(pl.UTF-8): Wtyczka jogger dla ekg2
156 Group: Applications/Communications
157 Requires: %{name} = %{epoch}:%{version}-%{release}
159 %description plugin-jogger
160 Jogger plugin for ekg2.
162 %description plugin-jogger -l pl.UTF-8
163 Wtyczka jogger dla ekg2.
166 %package plugin-logsqlite
167 Summary: SQLite log plugin for ekg2
168 Summary(pl.UTF-8): Wtyczka logowania do SQLite dla ekg2
169 Group: Applications/Communications
170 Requires: %{name} = %{epoch}:%{version}-%{release}
177 %description plugin-logsqlite
178 SQLite log plugin for ekg2.
180 %description plugin-logsqlite -l pl.UTF-8
181 Wtyczka logowania do bazy SQLite dla ekg2.
183 %package plugin-protocol-gg
184 Summary: Gadu-gadu protocol plugin for ekg2
185 Summary(pl.UTF-8): Wtyczka protokołu Gadu-gadu dla ekg2
186 Group: Applications/Communications
187 Requires: %{name} = %{epoch}:%{version}-%{release}
189 %description plugin-protocol-gg
190 Gadu-gadu protocol plugin for ekg2.
192 %description plugin-protocol-gg -l pl.UTF-8
193 Wtyczka protokołu gadu-gadu dla ekg2.
195 %package plugin-protocol-gsm
196 Summary: GSM VoIP protocol plugin for ekg2
197 Summary(pl.UTF-8): Wtyczka protokołu GSM VoIP dla ekg2
198 Group: Applications/Communications
199 Requires: %{name} = %{epoch}:%{version}-%{release}
201 %description plugin-protocol-gsm
202 GSM VoIP protocol plugin for ekg2.
204 %description plugin-protocol-gsm -l pl.UTF-8
205 Wtyczka protokołu GSM VoIP dla ekg2.
207 %package plugin-protocol-irc
208 Summary: IRC protocol plugin for ekg2
209 Summary(pl.UTF-8): Wtyczka protokołu IRC dla ekg2
210 Group: Applications/Communications
211 Requires: %{name} = %{epoch}:%{version}-%{release}
213 %description plugin-protocol-irc
214 IRC protocol plugin for ekg2.
216 %description plugin-protocol-irc -l pl.UTF-8
217 Wtyczka protokołu IRC dla ekg2.
219 %package plugin-protocol-jabber
220 Summary: Jabber protocol plugin for ekg2
221 Summary(pl.UTF-8): Wtyczka protokołu Jabber dla ekg2
222 Group: Applications/Communications
223 Requires: %{name} = %{epoch}:%{version}-%{release}
225 %description plugin-protocol-jabber
226 Jabber protocol plugin for ekg2.
228 %description plugin-protocol-jabber -l pl.UTF-8
229 Wtyczka protokołu Jabber dla ekg2.
231 %if %{with yesterday_snapshot}
232 %package plugin-protocol-polchat
233 Summary: Polchat protocol plugin for ekg2
234 Summary(pl.UTF-8): Wtyczka protokołu polchat dla ekg2
235 Group: Applications/Communications
236 Requires: %{name} = %{epoch}:%{version}-%{release}
238 %description plugin-protocol-polchat
239 Polchat protocol plugin for ekg2.
241 %description plugin-protocol-polchat -l pl.UTF-8
242 Wtyczka protokołu polchat dla ekg2.
245 %package plugin-readline
246 Summary: readline interface
247 Summary(pl.UTF-8): Interfejs readline
248 Group: Applications/Communications
249 Requires: %{name} = %{epoch}:%{version}-%{release}
251 %description plugin-readline
254 %description plugin-readline -l pl.UTF-8
257 %package plugin-scripting-perl
258 Summary: Perl scripting plugin for ekg2
259 Summary(pl.UTF-8): Wtyczka języka Perl dla ekg2
260 Group: Applications/Communications
261 Requires: %{name} = %{epoch}:%{version}-%{release}
263 %description plugin-scripting-perl
264 Python scripting Perl for ekg2.
266 %description plugin-scripting-perl -l pl.UTF-8
267 Wtyczka skryptów Perla dla ekg2.
269 %package plugin-scripting-python
270 Summary: Python scripting plugin for ekg2
271 Summary(pl.UTF-8): Wtyczka języka Python dla ekg2
272 Group: Applications/Communications
273 Requires: %{name} = %{epoch}:%{version}-%{release}
275 %description plugin-scripting-python
276 Python scripting plugin for ekg2.
278 %description plugin-scripting-python -l pl.UTF-8
279 Wtyczka skryptów Pythona dla ekg2.
282 Summary: Encryption plugin for ekg2
283 Summary(pl.UTF-8): Wtyczka szyfrująca dla ekg2
284 Group: Applications/Communications
285 Requires: %{name} = %{epoch}:%{version}-%{release}
287 %description plugin-sim
288 Message encryption plugin for ekg2.
290 %description plugin-sim -l pl.UTF-8
291 Wtyczka szyfrująca wiadomości dla ekg2.
294 Summary: xosd plugin for ekg2
295 Summary(pl.UTF-8): Wtyczka xosd dla ekg2
296 Group: Applications/Communications
297 Requires: %{name} = %{epoch}:%{version}-%{release}
299 %description plugin-xosd
300 xosd plugin for ekg2.
302 %description plugin-xosd -l pl.UTF-8
303 Wtyczka xosd dla ekg2.
306 %setup -q -n %{name}-%{_snap}
309 sed -i -e 's/AC_LIBLTDL_CONVENIENCE/AC_LIBLTDL_INSTALLABLE/' configure.ac
310 sed -i -e '\#/opt/sqlite/lib#s#"$# /usr/lib64"#' m4/sqlite.m4
313 %{__libtoolize} --ltdl
324 # for hostent.h_addr (should be in CPPFLAGS, but it's overridden in plugins/jabber)
325 CFLAGS="%{rpmcflags} -D_GNU_SOURCE"
328 --with%{!?with_aspell:out}-aspell \
329 --with%{!?with_gadugadu:out}-libgadu \
330 %{!?with_gpg:--without-gpg} \
331 --with%{!?with_gtk:out}-gtk \
332 --with%{!?with_gnutls:out}-libgnutls \
333 %if %{with feed} || %{with jabber}
338 --with%{!?with_libgsm:out}-libgsm \
339 %{!?with_perl:--without-perl} \
340 --with%{!?with_python:out}-python \
341 --with%{!?with_readline:out}-readline \
342 --with%{!?with_sqlite:out}-sqlite \
343 --with%{!?with_sqlite3:out}-sqlite3 \
344 --with%{!?with_xosd:out}-xosd
349 rm -rf $RPM_BUILD_ROOT
350 install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/scripts
353 DESTDIR=$RPM_BUILD_ROOT
355 mv -f README README-main || true
357 rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/*.la
362 rm -rf $RPM_BUILD_ROOT
364 %files -f %{name}.lang
365 %defattr(644,root,root,755)
366 %doc NEWS* README-main docs/ekg2book* docs/README docs/TODO docs/*.txt
367 %attr(755,root,root) %{_bindir}/ekg2
368 %dir %{_libdir}/%{name}
369 %dir %{_libdir}/%{name}/plugins
370 %attr(755,root,root) %{_libdir}/%{name}/plugins/autoresponder.so
371 %{_datadir}/%{name}/plugins/autoresponder
372 %attr(755,root,root) %{_libdir}/%{name}/plugins/httprc_xajax.so
373 %attr(755,root,root) %{_libdir}/%{name}/plugins/logs.so
374 %attr(755,root,root) %{_libdir}/%{name}/plugins/mail.so
375 %{_datadir}/%{name}/plugins/mail
376 %attr(755,root,root) %{_libdir}/%{name}/plugins/ncurses.so
377 %attr(755,root,root) %{_libdir}/%{name}/plugins/pcm.so
378 %attr(755,root,root) %{_libdir}/%{name}/plugins/rc.so
379 %attr(755,root,root) %{_libdir}/%{name}/plugins/rot13.so
380 %attr(755,root,root) %{_libdir}/%{name}/plugins/sms.so
381 %attr(755,root,root) %{_libdir}/%{name}/plugins/xmsg.so
382 %{_datadir}/%{name}/plugins/xmsg
383 %dir %{_datadir}/%{name}
384 %dir %{_datadir}/%{name}/plugins
385 %{_datadir}/%{name}/*.txt
386 %{_datadir}/%{name}/plugins/httprc_xajax
387 %{_datadir}/%{name}/plugins/logs
388 %{_datadir}/%{name}/plugins/ncurses
389 %{_datadir}/%{name}/plugins/rc
390 %{_datadir}/%{name}/plugins/sms
391 %dir %{_datadir}/%{name}/scripts
392 %{_datadir}/%{name}/themes
394 %if %{without yesterday_snapshot}
396 %defattr(644,root,root,755)
397 %attr(755,root,root) %{_bindir}/ekg2-config
401 %if %{with yesterday_snapshot}
403 %defattr(644,root,root,755)
404 %attr(755,root,root) %{_libdir}/%{name}/plugins/feed.so
409 %defattr(644,root,root,755)
410 %attr(755,root,root) %{_libdir}/%{name}/plugins/gpg.so
415 %defattr(644,root,root,755)
416 %attr(755,root,root) %{_libdir}/%{name}/plugins/gtk.so
420 %defattr(644,root,root,755)
421 %attr(755,root,root) %{_libdir}/%{name}/plugins/ioctld.so
422 %{_datadir}/%{name}/plugins/ioctld
423 %attr(4755,root,root) %{_libexecdir}/ioctld
425 %if %{with yesterday_snapshot}
427 %defattr(644,root,root,755)
428 %attr(755,root,root) %{_libdir}/%{name}/plugins/jogger.so
431 %if %{with sqlite} || %{with sqlite3}
432 %files plugin-logsqlite
433 %defattr(644,root,root,755)
434 %attr(755,root,root) %{_libdir}/%{name}/plugins/logsqlite.so
435 %{_datadir}/%{name}/plugins/logsqlite
438 %files plugin-protocol-gg
439 %defattr(644,root,root,755)
440 %attr(755,root,root) %{_libdir}/%{name}/plugins/gg.so
441 %{_datadir}/%{name}/plugins/gg
444 %files plugin-protocol-gsm
445 %defattr(644,root,root,755)
446 %attr(755,root,root) %{_libdir}/%{name}/plugins/gsm.so
449 %files plugin-protocol-irc
450 %defattr(644,root,root,755)
451 %attr(755,root,root) %{_libdir}/%{name}/plugins/irc.so
452 %{_datadir}/%{name}/plugins/irc
455 %files plugin-protocol-jabber
456 %defattr(644,root,root,755)
457 %attr(755,root,root) %{_libdir}/%{name}/plugins/jabber.so
458 %{_datadir}/%{name}/plugins/jabber
461 %if %{with yesterday_snapshot}
462 %files plugin-protocol-polchat
463 %defattr(644,root,root,755)
464 %attr(755,root,root) %{_libdir}/%{name}/plugins/polchat.so
468 %files plugin-readline
469 %defattr(644,root,root,755)
470 %attr(755,root,root) %{_libdir}/%{name}/plugins/readline.so
471 %{_datadir}/%{name}/plugins/readline
475 %files plugin-scripting-perl
476 %defattr(644,root,root,755)
477 %attr(755,root,root) %{_libdir}/%{name}/plugins/perl.so
478 %{perl_vendorarch}/Ekg2.pm
479 %dir %{perl_vendorarch}/Ekg2
480 %{perl_vendorarch}/Ekg2/Irc.pm
481 %dir %{perl_vendorarch}/auto/Ekg2
482 %{perl_vendorarch}/auto/Ekg2/Ekg2.bs
483 %attr(755,root,root) %{perl_vendorarch}/auto/Ekg2/Ekg2.so
484 %dir %{perl_vendorarch}/auto/Ekg2/Irc
485 %{perl_vendorarch}/auto/Ekg2/Irc/Irc.bs
486 %attr(755,root,root) %{perl_vendorarch}/auto/Ekg2/Irc/Irc.so
487 %{_datadir}/%{name}/scripts/*.pl
491 %files plugin-scripting-python
492 %defattr(644,root,root,755)
493 %attr(755,root,root) %{_libdir}/%{name}/plugins/python.so
494 %{_datadir}/%{name}/scripts/*.py
498 %defattr(644,root,root,755)
499 %attr(755,root,root) %{_libdir}/%{name}/plugins/sim.so
500 %{_datadir}/%{name}/plugins/sim
504 %defattr(644,root,root,755)
505 %attr(755,root,root) %{_libdir}/%{name}/plugins/xosd.so
506 %{_datadir}/%{name}/plugins/xosd