jabberd/jabberd.spec

285 lines
8.2 KiB
RPMSpec

%define jabber_groupid 65438
%define jabber_userid 65438
Name: jabberd
Version: 2.3.2
Release: 3mamba
Summary: JabberD XMPP Server
Group: System/Servers
Vendor: openmamba
Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: http://jabberd2.org/
Source: https://github.com/jabberd2/jabberd2/releases/download/jabberd-%{version}/jabberd-%{version}.tar.xz
License: GPL
## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel
BuildRequires: libaudit-devel
BuildRequires: libexpat-devel
BuildRequires: libgsasl-devel
BuildRequires: libidn-devel
BuildRequires: libmysql-devel
BuildRequires: libntlm-devel
BuildRequires: libopenldap-devel
BuildRequires: libopenssl-devel
BuildRequires: libpam-devel
BuildRequires: libsasl2-devel
BuildRequires: libsqlite-devel
BuildRequires: libstdc++6-devel
BuildRequires: libudns-devel
BuildRequires: libz-devel
## AUTOBUILDREQ-END
Requires: lib%{name} = %{?epoch:%epoch:}%{version}-%{release}
%systemd_requires
BuildRoot: %{_tmppath}/%{name}-%{version}-root
%description
JabberD XMPP Server.
%package -n lib%{name}
Group: System/Libraries
Summary: Shared libraries for %{name}
%description -n lib%{name}
This package contains shared libraries for %{name}.
%package ldap
Group: System/Libraries
Summary: LDAP storage support for %{name}
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
%description ldap
LDAP storage support for %{name}.
%package mysql
Group: System/Libraries
Summary: MySQL storage support for %{name}
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
%description mysql
MySQL storage support for %{name}.
%debug_package
%prep
%setup -q
%build
%configure \
--sysconfdir=%{_sysconfdir}/jabberd \
--enable-sqlite \
--enable-mysql \
--enable-ldap \
--enable-pam \
--enable-pipe \
--enable-anon \
--enable-fs
# --enable-postgresql \
%make \
systemddir=%{_unitdir} \
initdir=%{_sysconfdir}/jabberd/init
%install
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%makeinstall \
systemddir=%{_unitdir} \
initdir=%{_sysconfdir}/jabberd/init
%clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%pre
if [ $1 -ge 1 ]; then
groupadd jabber -g %{jabber_groupid} 2>/dev/null
useradd -u %{jabber_userid} -c 'Jabber service' -d /dev/null -g jabber \
-s /bin/false jabber 2>/dev/null
fi
exit 0
%post
%systemd_post jabberd-c2s
%systemd_post jabberd-router
%systemd_post jabberd-s2s
%systemd_post jabberd-sm
%systemd_post jabberd
:
%preun
%systemd_preun jabberd-c2s
%systemd_preun jabberd-router
%systemd_preun jabberd-s2s
%systemd_preun jabberd-sm
%systemd_preun jabberd
if [ $1 -eq 0 ]; then
userdel jabber 2>/dev/null
groupdel jabber 2>/dev/null
fi
:
%postun
%systemd_postun_with_restart jabberd-c2s
%systemd_postun_with_restart jabberd-router
%systemd_postun_with_restart jabberd-s2s
%systemd_postun_with_restart jabberd-sm
%systemd_postun_with_restart jabberd
:
%post -n lib%{name} -p /sbin/ldconfig
%postun -n lib%{name} -p /sbin/ldconfig
%files
%defattr(-,root,root)
%dir %{_sysconfdir}/jabberd/c2s.xml
%config(noreplace) %{_sysconfdir}/jabberd/c2s.xml
%config(noreplace) %{_sysconfdir}/jabberd/jabberd.cfg
%config(noreplace) %{_sysconfdir}/jabberd/templates/roster.xml.dist
%config(noreplace) %{_sysconfdir}/jabberd/router-filter.xml
%config(noreplace) %{_sysconfdir}/jabberd/router-users.xml
%config(noreplace) %{_sysconfdir}/jabberd/router.xml
%config(noreplace) %{_sysconfdir}/jabberd/s2s.xml
%config(noreplace) %{_sysconfdir}/jabberd/sm.xml
%config(noreplace) %{_sysconfdir}/jabberd/templates/roster.xml
%{_sysconfdir}/jabberd/*.dist
%dir %{_sysconfdir}/jabberd/init
%config(noreplace) %{_sysconfdir}/jabberd/init/jabberd-c2s.conf
%config(noreplace) %{_sysconfdir}/jabberd/init/jabberd-router.conf
%config(noreplace) %{_sysconfdir}/jabberd/init/jabberd-s2s.conf
%config(noreplace) %{_sysconfdir}/jabberd/init/jabberd-sm.conf
%{_bindir}/c2s
%{_bindir}/jabberd
%{_bindir}/router
%{_bindir}/s2s
%{_bindir}/sm
%{_unitdir}/jabberd-c2s.service
%{_unitdir}/jabberd-router.service
%{_unitdir}/jabberd-s2s.service
%{_unitdir}/jabberd-sm.service
%{_unitdir}/jabberd.service
%{_mandir}/man8/c2s.8*
%{_mandir}/man8/jabberd.8*
%{_mandir}/man8/router.8*
%{_mandir}/man8/s2s.8*
%{_mandir}/man8/sm.8*
%doc tools/db-setup.sqlite tools/db-update.sqlite
%files -n lib%{name}
%defattr(-,root,root)
%dir %{_libdir}/jabberd
%{_libdir}/jabberd/authreg_anon.la
%{_libdir}/jabberd/authreg_anon.so
%{_libdir}/jabberd/authreg_pam.la
%{_libdir}/jabberd/authreg_pam.so
%{_libdir}/jabberd/authreg_pipe.la
%{_libdir}/jabberd/authreg_pipe.so
%{_libdir}/jabberd/authreg_sqlite.la
%{_libdir}/jabberd/authreg_sqlite.so
%{_libdir}/jabberd/storage_fs.la
%{_libdir}/jabberd/storage_fs.so
%{_libdir}/jabberd/storage_sqlite.la
%{_libdir}/jabberd/storage_sqlite.so
%{_libdir}/jabberd/libstorage.la
%{_libdir}/jabberd/libstorage.so
%{_libdir}/jabberd/libstorage.so.*
%{_libdir}/jabberd/mod_active.la
%{_libdir}/jabberd/mod_active.so
%{_libdir}/jabberd/mod_active.so.*
%{_libdir}/jabberd/mod_amp.la
%{_libdir}/jabberd/mod_amp.so
%{_libdir}/jabberd/mod_amp.so.*
%{_libdir}/jabberd/mod_announce.la
%{_libdir}/jabberd/mod_announce.so
%{_libdir}/jabberd/mod_announce.so.*
%{_libdir}/jabberd/mod_deliver.la
%{_libdir}/jabberd/mod_deliver.so
%{_libdir}/jabberd/mod_deliver.so.*
%{_libdir}/jabberd/mod_disco.la
%{_libdir}/jabberd/mod_disco.so
%{_libdir}/jabberd/mod_disco.so.*
%{_libdir}/jabberd/mod_echo.la
%{_libdir}/jabberd/mod_echo.so
%{_libdir}/jabberd/mod_echo.so.*
%{_libdir}/jabberd/mod_help.la
%{_libdir}/jabberd/mod_help.so
%{_libdir}/jabberd/mod_help.so.*
%{_libdir}/jabberd/mod_iq-last.la
%{_libdir}/jabberd/mod_iq-last.so
%{_libdir}/jabberd/mod_iq-last.so.*
%{_libdir}/jabberd/mod_iq-ping.la
%{_libdir}/jabberd/mod_iq-ping.so
%{_libdir}/jabberd/mod_iq-ping.so.*
%{_libdir}/jabberd/mod_iq-private.la
%{_libdir}/jabberd/mod_iq-private.so
%{_libdir}/jabberd/mod_iq-private.so.*
%{_libdir}/jabberd/mod_iq-time.la
%{_libdir}/jabberd/mod_iq-time.so
%{_libdir}/jabberd/mod_iq-time.so.*
%{_libdir}/jabberd/mod_iq-vcard.la
%{_libdir}/jabberd/mod_iq-vcard.so
%{_libdir}/jabberd/mod_iq-vcard.so.*
%{_libdir}/jabberd/mod_iq-version.la
%{_libdir}/jabberd/mod_iq-version.so
%{_libdir}/jabberd/mod_iq-version.so.*
%{_libdir}/jabberd/mod_offline.la
%{_libdir}/jabberd/mod_offline.so
%{_libdir}/jabberd/mod_offline.so.*
%{_libdir}/jabberd/mod_pep.la
%{_libdir}/jabberd/mod_pep.so
%{_libdir}/jabberd/mod_pep.so.*
%{_libdir}/jabberd/mod_presence.la
%{_libdir}/jabberd/mod_presence.so
%{_libdir}/jabberd/mod_presence.so.*
%{_libdir}/jabberd/mod_privacy.la
%{_libdir}/jabberd/mod_privacy.so
%{_libdir}/jabberd/mod_privacy.so.*
%{_libdir}/jabberd/mod_roster-publish.la
%{_libdir}/jabberd/mod_roster-publish.so
%{_libdir}/jabberd/mod_roster-publish.so.*
%{_libdir}/jabberd/mod_roster.la
%{_libdir}/jabberd/mod_roster.so
%{_libdir}/jabberd/mod_roster.so.*
%{_libdir}/jabberd/mod_session.la
%{_libdir}/jabberd/mod_session.so
%{_libdir}/jabberd/mod_session.so.*
%{_libdir}/jabberd/mod_status.la
%{_libdir}/jabberd/mod_status.so
%{_libdir}/jabberd/mod_status.so.*
%{_libdir}/jabberd/mod_template-roster.la
%{_libdir}/jabberd/mod_template-roster.so
%{_libdir}/jabberd/mod_template-roster.so.*
%{_libdir}/jabberd/mod_vacation.la
%{_libdir}/jabberd/mod_vacation.so
%{_libdir}/jabberd/mod_vacation.so.*
%{_libdir}/jabberd/mod_validate.la
%{_libdir}/jabberd/mod_validate.so
%{_libdir}/jabberd/mod_validate.so.*
%doc AUTHORS COPYING
%files ldap
%defattr(-,root,root)
%{_libdir}/jabberd/authreg_ldap.la
%{_libdir}/jabberd/authreg_ldap.so
%{_libdir}/jabberd/authreg_ldapfull.la
%{_libdir}/jabberd/authreg_ldapfull.so
%{_libdir}/jabberd/storage_ldapvcard.la
%{_libdir}/jabberd/storage_ldapvcard.so
%files mysql
%defattr(-,root,root)
%{_libdir}/jabberd/authreg_mysql.la
%{_libdir}/jabberd/authreg_mysql.so
%{_libdir}/jabberd/storage_mysql.la
%{_libdir}/jabberd/storage_mysql.so
%doc tools/db-setup.mysql tools/db-update.mysql
%changelog
* Fri Mar 06 2015 Silvan Calarco <silvan.calarco@mambasoft.it> 2.3.2-3mamba
- create jabber user and group
* Thu Mar 05 2015 Silvan Calarco <silvan.calarco@mambasoft.it> 2.3.2-2mamba
- enable db backend plugins
* Tue Mar 03 2015 Silvan Calarco <silvan.calarco@mambasoft.it> 2.3.2-1mamba
- package created using the webbuild interface