3 %bcond_without db # don't build db storage and authreg backends
4 %bcond_without ldap # don't build ldap authreg backend
5 %bcond_without mysql # don't build MySQL storage and authreg backends
6 %bcond_without pgsql # don't build PostgreSQL storage and authreg backends
7 %bcond_without sqlite # don't build SQLite v3 storage backend
8 # allows limiting the number of offline messages stored per user (mysql storage)
9 # and allows offline storage (queuing) of subscription requests and/or messages
11 %bcond_with bxmpp # - patches c2s to allow connections from Flash clients which don't use proper XMPP
13 %define skip_post_check_so mod_.*.so.0.0.0 libstorage.so.0.0.0
15 %include /usr/lib/rpm/macros.perl
16 Summary: Jabber/XMPP server
17 Summary(pl.UTF-8): Serwer Jabber/XMPP
22 Group: Applications/Communications
23 Source0: https://github.com/jabberd2/jabberd2/releases/download/jabberd-%{version}/%{name}-%{version}.tar.xz
24 # Source0-md5: cfe1b7fb77ccc9905cc18aabded9a1de
26 Source2: %{name}.sysconfig
27 Patch0: %{name}-perlscript.patch
28 Patch1: %{name}-daemonize.patch
29 Patch2: %{name}-default_config.patch
30 Patch4: %{name}-delay_jobs.patch
31 Patch5: %{name}-binary_path.patch
32 Patch6: %{name}-reconnect.patch
33 Patch7: openssl11.diff
35 Patch22: http://www.marquard.net/jabber/patches/patch-flash-v2
36 URL: http://jabberd2.org/
37 BuildRequires: autoconf
38 BuildRequires: autoconf-archive
39 BuildRequires: automake
40 %{?with_db:BuildRequires: db-devel >= 4.1.24}
41 BuildRequires: expat-devel
42 BuildRequires: gettext-tools
43 BuildRequires: gsasl-devel >= 0.2.28
44 BuildRequires: libidn-devel >= 0.3.0
45 BuildRequires: libstdc++-devel
46 BuildRequires: libtool
47 %{?with_mysql:BuildRequires: mysql-devel}
48 %{?with_ldap:BuildRequires: openldap-devel}
49 BuildRequires: openssl-devel >= 0.9.6d
50 BuildRequires: pam-devel
51 %{?with_pgsql:BuildRequires: postgresql-devel}
52 BuildRequires: rpm-perlprov >= 3.0.3-16
53 BuildRequires: rpmbuild(macros) >= 1.268
54 %{?with_sqlite:BuildRequires: sqlite3-devel}
55 BuildRequires: udns-devel
56 Requires(post): sed >= 4.0
57 Requires(post): textutils
58 Requires(post,preun): /sbin/chkconfig
59 Requires: jabber-common
61 Suggests: cyrus-sasl-digest-md5
62 Suggests: cyrus-sasl-plain
64 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
67 Modern open source Jabber server, implementing latest XMPP protocol.
69 %description -l pl.UTF-8
70 Nowoczesny, wolnodostępny serwer Jabbera implementujący najnowszy
88 #http://j2.openaether.org/bugzilla/show_bug.cgi?id=17
95 --bindir="%{_libdir}/%{name}" \
96 --sysconfdir="%{_sysconfdir}/jabber" \
97 %{?with_db:--enable-db} \
98 %{?with_mysql:--enable-mysql} \
99 %{?with_pgsql:--enable-pgsql} \
104 %{?with_ldap:--enable-ldap} \
105 %{?with_sqlite:--enable-sqlite} \
106 %{?debug:--enable-debug} \
107 --disable-silent-rules
112 rm -rf $RPM_BUILD_ROOT
113 install -d $RPM_BUILD_ROOT{%{_sbindir},/var/lib/%{name}/{db,stats},/etc/{sysconfig,rc.d/init.d}}
114 install -d $RPM_BUILD_ROOT%{systemdunitdir}
117 DESTDIR=$RPM_BUILD_ROOT
119 mv $RPM_BUILD_ROOT%{_libdir}/jabberd/jabberd $RPM_BUILD_ROOT%{_sbindir}
120 mv $RPM_BUILD_ROOT/usr/lib/systemd/system/* $RPM_BUILD_ROOT%{systemdunitdir}/
121 %{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/jabber{,/templates}/*.dist
123 # drop Upstart configuration files
124 %{__rm} -f $RPM_BUILD_ROOT%{_sysconfdir}/jabber/*.conf
125 %{__rm} -f $RPM_BUILD_ROOT%{_prefix}/etc/init/*.conf
127 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
128 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
131 rm -rf $RPM_BUILD_ROOT
134 if [ -f %{_sysconfdir}/jabber/secret ] ; then
135 SECRET=`cat %{_sysconfdir}/jabber/secret`
136 if [ -n "$SECRET" ] ; then
137 echo "Updating component authentication secret in Jabberd config files..."
138 %{__sed} -i -e "s/>secret</>$SECRET</" %{_sysconfdir}/jabber/*.xml
142 /sbin/chkconfig --add jabberd
143 %service jabberd restart "Jabber server"
144 %systemd_post jabberd.service
147 echo "This j2 package has new functionality, please read AVATARS file."
151 if [ "$1" = "0" ]; then
152 %service jabberd stop
153 /sbin/chkconfig --del jabberd
155 %systemd_preun jabberd.service
161 %defattr(644,root,root,755)
162 %doc AUTHORS ChangeLog NEWS README TODO
163 %doc tools/{%{?with_mysql:db-*.mysql,}%{?with_pgsql:db-*.pgsql,}%{?with_sqlite:db-*.sqlite,}pipe-auth.pl}
164 %attr(640,root,jabber) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/jabber/*.cfg
165 %attr(640,root,jabber) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/jabber/*.xml
166 %dir %{_sysconfdir}/jabber/templates
167 %attr(640,root,jabber) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/jabber/templates/*.xml
168 %attr(755,root,root) %{_sbindir}/*
169 %dir %{_libdir}/jabberd
170 %attr(755,root,root) %{_libdir}/%{name}/*
171 %dir %attr(770,root,jabber) /var/lib/%{name}
172 %dir %attr(770,root,jabber) /var/lib/%{name}/db
173 %dir %attr(770,root,jabber) /var/lib/%{name}/stats
174 %attr(754,root,root) /etc/rc.d/init.d/%{name}
175 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}
177 %{systemdunitdir}/jabberd-c2s.service
178 %{systemdunitdir}/jabberd-router.service
179 %{systemdunitdir}/jabberd-s2s.service
180 %{systemdunitdir}/jabberd-sm.service
181 %{systemdunitdir}/jabberd.service