%define mainver 1.4.2 %define cvsver 20030528 %def_enable yahoo %def_disable sg_patch %def_enable mu_conference Name: jabber Version: %mainver Release: alt24 Epoch: 1 Summary: Jabber Instant Messaging System server License: JOSL/GPL Group: System/Servers URL: http://jabberd.jabberstudio.org/ %define conference_version 0.4.1 %define mu_conference_version 0.5.2 %define jud_version 0.4a %define yahoo_version 2.1.1 %define sg_version sg8 # Source for Custom-field JUD: # http://www.pipetree.com/jabber/jud/jud-%jud_version.tgz #PreReq: openssl Source: jabberd14-cvs%cvsver.tar.bz2 Source2: jabber.init Source3: jabber.cfg Source4: jabber.xml.bz2 Source5: pthsock_client.service.xml Source6: jadc2s.service.xml Source10: conference-%conference_version.tar.bz2 Source11: conference-configs.tar.bz2 Source13: jud-%jud_version.tar.bz2 Source14: jud-configs.tar.bz2 Source16: mu-conference-%mu_conference_version.tar.gz Source23: http://yahoo-transport.jabberstudio.org/yahoo-t-%yahoo_version.tar.bz2 Source27: jabber.logrotate Source28: ssl.tar.bz2 Patch0: jabber-configure-pth.patch Patch1: jabber-verbose-include-errors.patch Patch2: http://www.jabber.ru/projects/teo/patches/jud/jud-0.4-%sg_version.diff.gz Patch3: jabber-lower-priority-for-away.patch Patch4: jabber-jud-0.4a-robust-search.patch Patch5: jabber-jadc2s-buffer-overflow.patch Patch6: jabber-setlocale.patch Patch7: jabber-tcpoptions.patch BuildRequires: openssl-devel libpth-devel %if_enabled yahoo BuildRequires: glib-devel %endif %description Jabber is an Instant Messaging System, similar to ICQ or AIM, yet far different. It is open source, absolutely free, simple, fast, extensible, modularized, cross platform, and created with the future in mind. Jabber has been designed from the ground up to serve the needs of the end user, satisfy business demands, and maintain compatibility with other messaging systems. %description -l ru_RU.CP1251 Jabber - это сервер для системы обмена сообщениями Jabber. Jabber похож на ICQ или AIM, но разработан по-другому. Это абсолютно свободная, простая, быстрая, расширяемая, модульная, кроссплатформенная система с открытыми исходными кодами, спроектированная с учетом завтрашнего дня. Jabber был разработан для использования конечными пользователями, удовлетворяет потребностям бизнеса, поддерживает совместимость с другими системами обмена сообщениями. %package jadc2s Summary: Client connection service for Jabber server Group: System/Servers PreReq: %name = %mainver-%release %description jadc2s This package contains an external client connection service binary for the Jabber server. %package conference Version: %{mainver}_%conference_version Summary: Conferencing service for Jabber server Summary(ru_RU.CP1251): Сервис конференций для сервера Jabber Group: System/Servers PreReq: %name = %mainver-%release %description conference This package contains conference servicing for Jabber server. Read the documentation for install this service. %description -l ru_RU.CP1251 conference Этот пакет содержит сервис для организации конференций на сервере Jabber. Читайте документацию для установки этого сервиса. %if_enabled mu_conference %package mu-conference Version: %{mainver}_%mu_conference_version Summary: Multi user conferencing service for Jabber server Summary(ru_RU.CP1251): Сервис многопользовательских конференций для сервера Jabber Group: System/Servers PreReq: %name = %mainver-%release %description mu-conference This package contains multi user conference servicing for Jabber server. %description -l ru_RU.CP1251 mu-conference Этот пакет содержит сервис для организации многопользовательских конференций на сервере Jabber. %endif %package jud Version: %{mainver}_%jud_version Summary: Jabber User Directory service for Jabber server Summary(ru_RU.CP1251): Jabber User Directory сервис для сервера Jabber Group: System/Servers PreReq: %name = %mainver-%release %description jud This package contains service directory servicing for Jabber server. Read the documentation for install this service. %description -l ru_RU.CP1251 jud Этот пакет содержит сервис Jabber User Directory для сервера Jabber. Позволяет хранить информацию о пользователях, регистрироваться, искать данные о пользователях. Читайте документацию для установки этого сервиса. %package devel Summary: Header files for Jabber server Group: Development/C Requires: %name = %mainver-%release Requires: libpth-devel %description devel This package contains header files that are needed to develop Jabber server extensions. %if_enabled yahoo %package yahoo-t Version: %{mainver}_%yahoo_version Summary: Yahoo Transport for the Jabber server Summary(ru_RU.CP1251): Yahoo транспорт для сервера Jabber Group: System/Servers License: GPL Requires: %name Obsoletes: jabber-yahoo %description yahoo-t This package contains yahoo transport for Jabber server. Read the documentation for install this transport. %description -l ru_RU.CP1251 yahoo-t Этот пакет содержит yahoo транспорт для сервера Jabber. Читайте документацию для установки этого транспорта. %endif # enabled yahoo %prep %setup -q -n jabberd14-cvs%cvsver -a 10 -a 11 -a 13 -a 14 -a 16 -a 28 %patch0 -p1 -b .patch-confpth %patch1 -p1 -b .patch-inclerr %patch3 -p1 -b .patch-awpresence %patch5 -p0 -b .patch-buffer %patch6 -p0 -b .patch-setlocale %patch7 -p0 -b .patch-tcpopt %if_enabled sg_patch cd jud-%jud_version %patch2 -p1 -b .patch-sg cd .. %else %patch4 -p0 -b .patch-search %endif %if_enabled yahoo %setup -q -n jabberd14-cvs%cvsver -D -T -a 23 %endif %build %configure --enable-ssl perl -pi \ -e 's,-I%_includedir($|\s),,g;' \ -e 's,-L%_libdir($|\s),,g;' \ -e 's,^(CC?FLAGS)=,$1=-D_GNU_SOURCE ,;' \ platform-settings %make_build JHOME=%_libdir/jabber # jabber services cd jadc2s %configure --enable-poll --enable-ssl --enable-syslog %make_build cd .. cd conference-%conference_version %make_build cd .. %if_enabled mu_conference cd mu-conference-%mu_conference_version %make_build cd .. %endif cd jud-%jud_version %make_build cd .. %if_enabled yahoo cd yahoo-transport-2 %make_build cd .. %endif # Doesn't work for now #cd docs #%make_build #cd .. %install %__mkdir -p $RPM_BUILD_ROOT{%_logdir/jabber,%_sbindir,%_initdir,%_localstatedir/jabber,%_var/run/jabber} %__mkdir -p $RPM_BUILD_ROOT%_sysconfdir/{jabber,logrotate.d} %__mkdir -p $RPM_BUILD_ROOT%_libdir/jabber/{pthsock,dnsrv,xdb_file,jsm,dialback} # common dir for configs, included for transports/services %__mkdir -p $RPM_BUILD_ROOT%_sysconfdir/jabber/include install -m 755 jabberd/jabberd $RPM_BUILD_ROOT%_sbindir install -m 755 jadc2s/jadc2s $RPM_BUILD_ROOT%_sbindir install -m 755 pthsock/pthsock_client.so $RPM_BUILD_ROOT%_libdir/jabber/pthsock/pthsock_client.so install -m 755 dnsrv/dnsrv.so $RPM_BUILD_ROOT%_libdir/jabber/dnsrv/dnsrv.so install -m 755 xdb_file/xdb_file.so $RPM_BUILD_ROOT%_libdir/jabber/xdb_file/xdb_file.so install -m 755 jsm/jsm.so $RPM_BUILD_ROOT%_libdir/jabber/jsm/jsm.so install -m 755 dialback/dialback.so $RPM_BUILD_ROOT%_libdir/jabber/dialback/dialback.so install -m 644 jabber.xml $RPM_BUILD_ROOT%_sysconfdir/jabber/jabber.xml.default bzcat %SOURCE4 >$RPM_BUILD_ROOT%_sysconfdir/jabber/jabber.xml install -m 640 %SOURCE5 %SOURCE6 $RPM_BUILD_ROOT%_sysconfdir/jabber/include install -m 644 %SOURCE3 $RPM_BUILD_ROOT%_sysconfdir/jabber/jabber.cfg install -m 755 %SOURCE2 $RPM_BUILD_ROOT%_initdir/jabber install -m 644 %SOURCE27 $RPM_BUILD_ROOT%_sysconfdir/logrotate.d/jabber install -m 600 jadc2s/jadc2s.xml $RPM_BUILD_ROOT%_sysconfdir/jabber/jadc2s.xml # jabber services %__mkdir -p $RPM_BUILD_ROOT%_libdir/jabber/conference install -m 755 conference-%conference_version/conference.so $RPM_BUILD_ROOT%_libdir/jabber/conference install -m 640 conference-configs/* $RPM_BUILD_ROOT%_sysconfdir/jabber/include %if_enabled mu_conference %__mkdir -p $RPM_BUILD_ROOT%_libdir/jabber/mu-conference install -m 755 mu-conference-%mu_conference_version/src/mu-conference.so $RPM_BUILD_ROOT%_libdir/jabber/mu-conference install -m 640 mu-conference-%mu_conference_version/muc.xml $RPM_BUILD_ROOT%_sysconfdir/jabber/include %endif %__mkdir -p $RPM_BUILD_ROOT%_libdir/jabber/jud install -m 755 jud-%jud_version/jud.so $RPM_BUILD_ROOT%_libdir/jabber/jud install -m 640 jud-configs/* $RPM_BUILD_ROOT%_sysconfdir/jabber/include # includes install -d -m 755 $RPM_BUILD_ROOT%_includedir/jabber install -d -m 755 $RPM_BUILD_ROOT%_includedir/jabber/lib install -d -m 755 $RPM_BUILD_ROOT%_includedir/jabber/jsm install -m 644 jabberd/*.h $RPM_BUILD_ROOT%_includedir/jabber install -m 644 jabberd/lib/lib.h $RPM_BUILD_ROOT%_includedir/jabber/lib install -m 644 jabberd/lib/xmlparse.h $RPM_BUILD_ROOT%_includedir/jabber/lib install -m 644 jsm/*.h $RPM_BUILD_ROOT%_includedir/jabber/jsm %if_enabled yahoo %__mkdir -p $RPM_BUILD_ROOT%_libdir/jabber/yahoo-transport install -m 755 yahoo-transport-2/yahoo-transport.so $RPM_BUILD_ROOT%_libdir/jabber/yahoo-transport %endif %pre %_sbindir/groupadd -r -f jabber \ 2>/dev/null ||: %_sbindir/useradd -r -g jabber -c 'Jabber server' -d %_localstatedir/jabber \ -s /dev/null jabber 2>/dev/null ||: %post %post_service jabber %post jadc2s %post_service jabber %post conference %post_service jabber %if_enabled mu_conference %post mu-conference %post_service jabber %endif %post jud %post_service jabber %if_enabled yahoo %post yahoo-t %post_service jabber %endif %preun %preun_service jabber %triggerun -- %name < 1:1.4.2-alt11 %__chown -R jabber %_localstatedir/jabber %__chown -R jabber %_logdir/jabber %__chown -R jabber %_var/run/jabber %__chgrp -R jabber %_localstatedir/jabber %__chgrp -R jabber %_logdir/jabber %__chgrp -R jabber %_var/run/jabber %files %doc README TODO UPGRADE license-header.txt %doc pthsock/README* docs/*.txt docs/MISC %doc ssl %doc configs %dir %_sysconfdir/jabber %dir %_sysconfdir/jabber/include %attr(640,root,jabber) %config(noreplace) %_sysconfdir/jabber/jabber.xml %attr(640,root,jabber) %_sysconfdir/jabber/jabber.xml.default %attr(640,root,jabber) %config(noreplace) %_sysconfdir/jabber/include/pthsock_client.* %config(noreplace) %_sysconfdir/jabber/jabber.cfg %config %_initdir/jabber %config %_sysconfdir/logrotate.d/jabber %dir %_libdir/jabber %_libdir/jabber/pthsock %_libdir/jabber/dnsrv %_libdir/jabber/xdb_file %_libdir/jabber/jsm %_libdir/jabber/dialback %_sbindir/jabberd %attr(700,jabber,jabber) %dir %_localstatedir/jabber %attr(750,jabber,jabber) %dir %_logdir/jabber %attr(750,jabber,jabber) %dir %_var/run/jabber %files jadc2s %doc jadc2s/AUTHORS %doc jadc2s/README %doc jadc2s/PROTO %doc jadc2s/TODO %attr(640,root,jabber) %config(noreplace) %_sysconfdir/jabber/jadc2s.xml %attr(640,root,jabber) %config(noreplace) %_sysconfdir/jabber/include/jadc2s.* %_sbindir/jadc2s %files conference %doc conference-%conference_version/README %_libdir/jabber/conference %attr(640,root,jabber) %config(noreplace) %_sysconfdir/jabber/include/conference.* %if_enabled mu_conference %files mu-conference %doc mu-conference-%mu_conference_version/README %_libdir/jabber/mu-conference %attr(640,root,jabber) %config(noreplace) %_sysconfdir/jabber/include/muc.xml %endif %files jud %doc jud-%jud_version/README %doc jud-%jud_version/*.html %_libdir/jabber/jud %attr(640,root,jabber) %config(noreplace) %_sysconfdir/jabber/include/jud.* %files devel %_includedir/* %if_enabled yahoo %files yahoo-t %_libdir/jabber/yahoo-transport %endif %changelog * Thu Sep 25 2003 Max A Mazin 1:1.4.2-alt24 - Adding mu-conference service 0.5.2 * Thu Jun 12 2003 Mikhail Zabaluev 1:1.4.2-alt23 - Ported jabber init script to start_daemon/stop_daemon - Introduced -p commandline flag to specify pidfile from the init script - Dropped the icqv7 stuff from the init scripts * Sat Jun 07 2003 Mikhail Zabaluev 1:1.4.2-alt22 - CVS snapshot as of 2003-05-28 - jabber-devel depends on libpth-devel * Fri Apr 11 2003 Mikhail Zabaluev 1:1.4.2-alt21 - CVS snapshot as of 2003-04-01 - set LC_CTYPE locale to C [Patch6] - don't set TCP options to UDP sockets [Patch7] * Tue Mar 11 2003 Mikhail Zabaluev 1:1.4.2-alt20 - CVS snapshot as of 2003-02-27 - Patch5: fix a runaway strlen in jadc2s * Fri Feb 21 2003 Mikhail Zabaluev 1:1.4.2-alt19 - CVS snapshot as of 2003-02-21 - moved chmod/chgrp hacks to a trigger * Thu Feb 06 2003 Mikhail Zabaluev 1:1.4.2-alt18 - Patch4: make JUD tolerant to CDATA children of the search query * Tue Jan 28 2003 Mikhail Zabaluev 1:1.4.2-alt17 - Patch3: lower session priority when an 'available' presence shows availability status 'away', 'xa' or 'dnd' - Moved pid file once more to /var/run/jabber * Sun Jan 26 2003 Mikhail Zabaluev 1:1.4.2-alt16 - Updated from CVS as of 2003-01-07 - Taken the patched jud-0.4a from DJ Adams - Updated JUD sg patch to sg8, but switched it off (by default) for now - Updated configs - Fixed problems pointed out in bug #1540 (init script, install scripts) - Moved pid file to /var/lib/jabber * Mon Nov 25 2002 Mikhail Zabaluev 1:1.4.2-alt15 - Updated from CVS as of 2002-11-06 - Added jsm/jsm.h to jabber includes - Defined _GNU_SOURCE for selfish reasons * Fri Nov 01 2002 Mikhail Zabaluev 1:1.4.2-alt14 - Updated from CVS as of 2002-10-30 - yahoo-t 2.1.1 - JUD patch from TeopeTuK * Fri Oct 11 2002 Mikhail Zabaluev 1:1.4.2-alt13 - Updated from CVS as of 2002-10-10 * Tue Sep 24 2002 Mikhail Zabaluev 1:1.4.2-alt12 - Patch to build against CFLAGS-less libpth * Mon Sep 23 2002 Mikhail Zabaluev 1:1.4.2-alt11 - Simplified version back - jabber_version-component_version scheme for versioned components * Fri Sep 13 2002 Mikhail Zabaluev 1.4.2_20020912-alt1 - Better-looking version - Updated from CVS * Fri Sep 06 2002 Mikhail Zabaluev 1.4.2.cvs20020809-alt3 - Added yahoo transport back, with its own version * Fri Aug 30 2002 Mikhail Zabaluev 1.4.2.cvs20020809-alt2 - change ownership of residual files in jabber directories * Mon Aug 26 2002 Mikhail Zabaluev 1.4.2.cvs20020809-alt1 - switch to CVS trunk for jadc2s - cut off all transports and other separately-distributed sources, except those that really need the jabberd source tree. - added devel package to build some things thrown away as separate packages - revamped permissions, jabber user and group, configs are owned by root - major spec cleanup * Mon May 13 2002 Vyt 1.4.2-alt10 - fixed builreqs on xsltproc instead libxslt * Tue May 7 2002 Vyt 1.4.2-alt9 - Fixed + access mode to 600 for configs (may contains passwords) + gcc-c++ to buildreq for icqv7 + restart jabberd in post/preun icqv7 + export all variables in jabber.cfg + condrestart instead restart in logrotate config + prereq on su >= 0.60-alt3 ('-s' option in init script) + removed CVS dirs (thanks to LDV) - Added + jabber.xml.default from original sources + examples of configs from cvs + russian article about server to docs (build from source xml) - Updated + config jabber.xml + jabberd cvs-build (bugfixes), invisible fix for transports + icqv7-t version 0.2.9.5 (bugfixes), more stable that aim-t * Tue Feb 19 2002 Vyt 1.4.2-alt8 - added configurable build to spec - removed internal libpth, system libpth used - buildrequires update * Mon Feb 18 2002 Vyt 1.4.2-alt7 - jabber server version 1.4.2 - icqv7-transport version 0.2.9.3 (added unstable SMS-t, bufixes) - separated configs for conference (private, public) - init script fix (condrestart used in upgrade) - added libsigc++-devel to buildrequires - added script for ssl certs - added jabber-docs contains general documentation - added logrotate config - russian summary * Sat Jan 12 2002 Vyt 1.4.2-alt6 - icqv7-transport version 0.2.9.1 (fetching user info, direct connections and more) - fix icqv7-t configs * Tue Jan 8 2002 Vyt 1.4.2-alt5 - some fix in init script - aim-transport 0.9.24c with patch from Sergei Golovan for russian and offline messages (better when ICQv7) * Tue Jan 8 2002 Vyt 1.4.2-alt4 - rewrited init script - added icqv7-transport (optional charsets, for example - cp1251 for russian ICQ messages) - changes in jabber.xml * Fri Jan 4 2002 Vyt 1.4.2-alt3 - jabber 1.4.2-test version - spec cleanup - remove icq transport (see aim) - separate configs for conference and jud services - enabled ssl support (broken?) - some fix in jabber.cfg and jabber.xml * Fri Sep 14 2001 AEN 1.4.1-alt2 - plugins added - sync with MDK * Tue Apr 24 2001 AEN 1.4.1-alt1 - new version * Tue Feb 20 2001 Dmitry V. Levin 1.4-ipl0.5mdk - Specfile cleanup. - Rebuilt to get rid of wrong dependencies. * Sun Feb 4 2001 AEN - 1.4RC * Mon Jan 29 2001 AEN - autoreq noshell * Thu Jan 25 2001 AEN - 1.4pre2 * Mon Jan 15 2001 AEN - RE adaptation - 1.3 from cvs * Tue Oct 3 2000 Vincent Saugey 1.0.1-3mdk - Add build requires * Fri Sep 8 2000 Vincent Saugey 1.0.1-2mdk - Correct init script - change default config file * Thu Sep 7 2000 Vincent Saugey 1.0.1-1mdk - Up to 1.0.1 * Thu Aug 31 2000 Vincent Saugey 1.0-1mdk - Fisrt mdk release # end of file