-# Conditional build:
+#
+# Conditional build:
%bcond_without gssapi # without GSSAPI support
%bcond_without ldap # without LDAP auth
%bcond_without mysql # without MySQL auth
%bcond_without pgsql # without PostgreSQL auth
%bcond_without sqlite # without SQLite3 auth
%bcond_without sasl # without SASL auth
+%bcond_without tests # tests
Summary: IMAP and POP3 server written with security primarily in mind
Summary(pl.UTF-8): Serwer IMAP i POP3 pisany głównie z myślą o bezpieczeństwie
Name: dovecot
-Version: 2.2.18
+Version: 2.3.2.1
Release: 2
Epoch: 1
License: MIT (libraries), LGPL v2.1 (the rest)
Group: Networking/Daemons
-Source0: http://dovecot.org/releases/2.2/%{name}-%{version}.tar.gz
-# Source0-md5: 1e42eb3b69544c447ad882d7858f3630
+Source0: http://dovecot.org/releases/2.3/%{name}-%{version}.tar.gz
+# Source0-md5: 77a7fa95b38bd6686e6191b2b3f2b87b
Source1: %{name}.pamd
Source2: %{name}.init
Source3: %{name}.sysconfig
Patch0: %{name}-config.patch
+Patch1: %{name}-rpath.patch
+Patch2: crypt.patch
URL: http://dovecot.org/
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: bzip2-devel
+BuildRequires: clucene-core-devel >= 2.3.3.4
+BuildRequires: curl-devel
%{?with_sasl:BuildRequires: cyrus-sasl-devel >= 2.0}
-BuildRequires: gettext-devel
+BuildRequires: expat-devel
+BuildRequires: gettext-tools
%{?with_gssapi:BuildRequires: heimdal-devel}
+BuildRequires: libapparmor-devel
BuildRequires: libcap-devel
+BuildRequires: libicu-devel
+BuildRequires: libstemmer-devel
+BuildRequires: libexttextcat-devel
BuildRequires: libtool
+BuildRequires: lz4-devel
%{?with_mysql:BuildRequires: mysql-devel}
%{?with_ldap:BuildRequires: openldap-devel >= 2.3.3}
BuildRequires: openssl-devel >= 0.9.7d
BuildRequires: pam-devel
BuildRequires: pkgconfig
%{?with_pgsql:BuildRequires: postgresql-devel}
+BuildRequires: rpmbuild(macros) >= 1.647
BuildRequires: sed >= 4.0
%{?with_sqlite:BuildRequires: sqlite3-devel}
+BuildRequires: xz-devel
BuildRequires: zlib-devel
Requires(post,preun): /sbin/chkconfig
Requires(postun): /usr/sbin/groupdel
Requires: pam >= 0.79.0
Provides: group(dovecot)
Provides: imapdaemon
+Provides: pop3daemon
Provides: user(dovecot)
+%{?with_gssapi:Obsoletes: heimdal-daemons}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define no_install_post_check_so 1
- quota Maildir++ jest obsługiwana, ale twarda quota na systemach
plików może być problematyczna
+%package libs
+Summary: Dovecot shared libraries
+Summary(pl.UTF-8): Współdzielone biblioteki Dovecota
+Group: Development/Libraries
+
+%description libs
+Dovecot shared libraries.
+
+%description libs -l pl.UTF-8
+Współdzielone biblioteki Dovecota.
+
%package devel
Summary: Development package for Dovecot plugins
Summary(pl.UTF-8): Pakiet programistyczny do tworzenia wtyczek dla Dovecota
%description devel -l pl.UTF-8
Pakiet programistyczny do tworzenia wtyczek dla Dovecota.
-%package libs
-Summary: Dovecot shared libraries
-Summary(pl.UTF-8): Współdzielone biblioteki Dovecota
-Group: Development/Libraries
-
-%description libs
-Dovecot shared libraries.
-
-%description libs -l pl.UTF-8
-Współdzielone biblioteki Dovecota.
-
%prep
%setup -q
%patch0 -p1
+%patch1 -p1
+%patch2 -p1
%{__sed} -i 's,/usr/lib/dovecot,%{_libdir}/dovecot,g' doc/example-config/*.conf doc/example-config/conf.d/*.conf
%build
touch config.rpath
%{__libtoolize}
-%{__aclocal} -I .
+%{__aclocal} -I . -I m4
%{__autoconf}
%{__autoheader}
%{__automake}
%configure \
+ ac_cv_prog_VALGRIND=no \
+ CPPFLAGS="%{rpmcppflags} -I/usr/include/libstemmer -D_LINUX_QUOTA_VERSION=2" \
--disable-static \
%{?debug:--enable-debug} \
%{?with_ldap:--with-ldap=yes} \
%{?with_pgsql:--with-pgsql} \
%{?with_sqlite:--with-sqlite} \
%{?with_gssapi:--with-gssapi=plugin} \
+ --with-lucene \
+ --with-stemmer \
+ --with-solr \
--with-sql=plugin \
--with-pam \
--with-zlib \
--with-ssl=openssl \
--with-moduledir=%{_libdir}/%{name}/plugins \
--with-ssldir=/var/lib/openssl \
- --sysconfdir=%{_sysconfdir} \
- --with-systemdsystemunitdir=/lib/systemd/system
+ --sysconfdir=%{_sysconfdir}
%{__make}
+%{?with_tests:%{__make} check}
+
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT/etc/{pam.d,rc.d/init.d,sysconfig,security} \
find $RPM_BUILD_ROOT%{_libdir}/%{name} -name '*.la' | xargs rm
-mv $RPM_BUILD_ROOT%{_libdir}/%{name}/dovecot-config $RPM_BUILD_ROOT%{_libdir}/%{name}-devel
-
%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}
%{__rm} -r $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/README
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.imap
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}
%attr(754,root,root) /etc/rc.d/init.d/%{name}
-%attr(755,root,root) %{_libdir}/%{name}/aggregator
-%attr(755,root,root) %{_libdir}/%{name}/anvil
-%attr(755,root,root) %{_libdir}/%{name}/auth
-%attr(755,root,root) %{_libdir}/%{name}/checkpassword-reply
-%attr(755,root,root) %{_libdir}/%{name}/config
-%attr(755,root,root) %{_libdir}/%{name}/decode2text.sh
-%attr(755,root,root) %{_libdir}/%{name}/deliver
-%attr(755,root,root) %{_libdir}/%{name}/dict
-%attr(755,root,root) %{_libdir}/%{name}/director
-%attr(755,root,root) %{_libdir}/%{name}/dns-client
-%attr(755,root,root) %{_libdir}/%{name}/doveadm-server
-%attr(755,root,root) %{_libdir}/%{name}/dovecot-lda
-%attr(755,root,root) %{_libdir}/%{name}/gdbhelper
-%attr(755,root,root) %{_libdir}/%{name}/imap
-%attr(755,root,root) %{_libdir}/%{name}/imap-login
-%attr(755,root,root) %{_libdir}/%{name}/imap-urlauth
-%attr(755,root,root) %{_libdir}/%{name}/imap-urlauth-login
-%attr(755,root,root) %{_libdir}/%{name}/imap-urlauth-worker
-%attr(755,root,root) %{_libdir}/%{name}/indexer
-%attr(755,root,root) %{_libdir}/%{name}/indexer-worker
-%attr(755,root,root) %{_libdir}/%{name}/ipc
-%attr(755,root,root) %{_libdir}/%{name}/lmtp
-%attr(755,root,root) %{_libdir}/%{name}/log
-%attr(755,root,root) %{_libdir}/%{name}/maildirlock
-%attr(755,root,root) %{_libdir}/%{name}/pop3
-%attr(755,root,root) %{_libdir}/%{name}/pop3-login
-%attr(755,root,root) %{_libdir}/%{name}/quota-status
-%attr(755,root,root) %{_libdir}/%{name}/rawlog
-%attr(755,root,root) %{_libdir}/%{name}/replicator
-%attr(755,root,root) %{_libdir}/%{name}/script
-%attr(755,root,root) %{_libdir}/%{name}/script-login
-%attr(755,root,root) %{_libdir}/%{name}/ssl-params
-%attr(755,root,root) %{_libdir}/%{name}/stats
-%attr(755,root,root) %{_libdir}/%{name}/xml2text
+%if "%{_libexecdir}" != "%{_libdir}"
+%dir %{_libexecdir}/%{name}
+%endif
+%attr(755,root,root) %{_libexecdir}/%{name}/aggregator
+%attr(755,root,root) %{_libexecdir}/%{name}/anvil
+%attr(755,root,root) %{_libexecdir}/%{name}/auth
+%attr(755,root,root) %{_libexecdir}/%{name}/checkpassword-reply
+%attr(755,root,root) %{_libexecdir}/%{name}/config
+%attr(755,root,root) %{_libexecdir}/%{name}/decode2text.sh
+%attr(755,root,root) %{_libexecdir}/%{name}/deliver
+%attr(755,root,root) %{_libexecdir}/%{name}/dict
+%attr(755,root,root) %{_libexecdir}/%{name}/director
+%attr(755,root,root) %{_libexecdir}/%{name}/dns-client
+%attr(755,root,root) %{_libexecdir}/%{name}/doveadm-server
+%attr(755,root,root) %{_libexecdir}/%{name}/dovecot-lda
+%attr(755,root,root) %{_libexecdir}/%{name}/gdbhelper
+%attr(755,root,root) %{_libexecdir}/%{name}/imap
+%attr(755,root,root) %{_libexecdir}/%{name}/imap-hibernate
+%attr(755,root,root) %{_libexecdir}/%{name}/imap-login
+%attr(755,root,root) %{_libexecdir}/%{name}/imap-urlauth
+%attr(755,root,root) %{_libexecdir}/%{name}/imap-urlauth-login
+%attr(755,root,root) %{_libexecdir}/%{name}/imap-urlauth-worker
+%attr(755,root,root) %{_libexecdir}/%{name}/indexer
+%attr(755,root,root) %{_libexecdir}/%{name}/indexer-worker
+%attr(755,root,root) %{_libexecdir}/%{name}/ipc
+%attr(755,root,root) %{_libexecdir}/%{name}/lmtp
+%attr(755,root,root) %{_libexecdir}/%{name}/log
+%attr(755,root,root) %{_libexecdir}/%{name}/maildirlock
+%attr(755,root,root) %{_libexecdir}/%{name}/old-stats
+%attr(755,root,root) %{_libexecdir}/%{name}/pop3
+%attr(755,root,root) %{_libexecdir}/%{name}/pop3-login
+%attr(755,root,root) %{_libexecdir}/%{name}/quota-status
+%attr(755,root,root) %{_libexecdir}/%{name}/rawlog
+%attr(755,root,root) %{_libexecdir}/%{name}/replicator
+%attr(755,root,root) %{_libexecdir}/%{name}/script
+%attr(755,root,root) %{_libexecdir}/%{name}/script-login
+%attr(755,root,root) %{_libexecdir}/%{name}/stats
+%attr(755,root,root) %{_libexecdir}/%{name}/submission
+%attr(755,root,root) %{_libexecdir}/%{name}/submission-login
+%attr(755,root,root) %{_libexecdir}/%{name}/xml2text
+%attr(755,root,root) %{_libdir}/%{name}/libdcrypt_openssl.so
%dir %{_libdir}/%{name}/plugins
%attr(755,root,root) %{_libdir}/%{name}/plugins/*.so
%dir %{_libdir}/%{name}/plugins/auth
%attr(755,root,root) %{_libdir}/%{name}/plugins/dict/*.so
%dir %{_libdir}/%{name}/plugins/doveadm
%attr(755,root,root) %{_libdir}/%{name}/plugins/doveadm/*.so
-%dir %{_libdir}/%{name}/plugins/stats
-%attr(755,root,root) %{_libdir}/%{name}/plugins/stats/*.so
+%dir %{_libdir}/%{name}/plugins/old-stats
+%attr(755,root,root) %{_libdir}/%{name}/plugins/old-stats/*.so
+%{_datadir}/dovecot
%dir /var/lib/dovecot
%dir /var/run/dovecot
%attr(750,root,dovenull) %dir /var/run/dovecot/login
%{_mandir}/man1/dsync.1*
%{_mandir}/man7/doveadm-search-query.7*
-%files devel
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/%{name}/libdovecot.so
-%attr(755,root,root) %{_libdir}/%{name}/libdovecot-compression.so
-%attr(755,root,root) %{_libdir}/%{name}/libdovecot-dsync.so
-%attr(755,root,root) %{_libdir}/%{name}/libdovecot-lda.so
-%attr(755,root,root) %{_libdir}/%{name}/libdovecot-login.so
-%attr(755,root,root) %{_libdir}/%{name}/libdovecot-sql.so
-#%attr(755,root,root) %{_libdir}/%{name}/libdovecot-ssl.so
-%attr(755,root,root) %{_libdir}/%{name}/libdovecot-storage.so
-%{_libdir}/%{name}-devel
-%{_includedir}/%{name}
-%{_aclocaldir}/dovecot.m4
-
%files libs
%defattr(644,root,root,755)
%dir %{_libdir}/%{name}
+
%attr(755,root,root) %{_libdir}/%{name}/libdovecot.so.0.0.0
%attr(755,root,root) %{_libdir}/%{name}/libdovecot-compression.so.0.0.0
%attr(755,root,root) %{_libdir}/%{name}/libdovecot-dsync.so.0.0.0
+%attr(755,root,root) %{_libdir}/%{name}/libdovecot-fts.so.0.0.0
%attr(755,root,root) %{_libdir}/%{name}/libdovecot-lda.so.0.0.0
+%{?with_ldap:%attr(755,root,root) %{_libdir}/%{name}/libdovecot-ldap.so.0.0.0}
%attr(755,root,root) %{_libdir}/%{name}/libdovecot-login.so.0.0.0
%attr(755,root,root) %{_libdir}/%{name}/libdovecot-sql.so.0.0.0
-#%attr(755,root,root) %{_libdir}/%{name}/libdovecot-ssl.so.0.0.0
%attr(755,root,root) %{_libdir}/%{name}/libdovecot-storage.so.0.0.0
# Note: we are in %{_libdir}/dovecot, ldconfig does not look into this
# directory. This is why the following files are not %ghost
%attr(755,root,root) %{_libdir}/%{name}/libdovecot.so.0
%attr(755,root,root) %{_libdir}/%{name}/libdovecot-compression.so.0
%attr(755,root,root) %{_libdir}/%{name}/libdovecot-dsync.so.0
+%attr(755,root,root) %{_libdir}/%{name}/libdovecot-fts.so.0
%attr(755,root,root) %{_libdir}/%{name}/libdovecot-lda.so.0
+%{?with_ldap:%attr(755,root,root) %{_libdir}/%{name}/libdovecot-ldap.so.0}
%attr(755,root,root) %{_libdir}/%{name}/libdovecot-login.so.0
%attr(755,root,root) %{_libdir}/%{name}/libdovecot-sql.so.0
-#%attr(755,root,root) %{_libdir}/%{name}/libdovecot-ssl.so.0
%attr(755,root,root) %{_libdir}/%{name}/libdovecot-storage.so.0
+
+%files devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/%{name}/libdovecot.so
+%attr(755,root,root) %{_libdir}/%{name}/libdovecot-compression.so
+%attr(755,root,root) %{_libdir}/%{name}/libdovecot-dsync.so
+%attr(755,root,root) %{_libdir}/%{name}/libdovecot-fts.so
+%attr(755,root,root) %{_libdir}/%{name}/libdovecot-lda.so
+%{?with_ldap:%attr(755,root,root) %{_libdir}/%{name}/libdovecot-ldap.so}
+%attr(755,root,root) %{_libdir}/%{name}/libdovecot-login.so
+%attr(755,root,root) %{_libdir}/%{name}/libdovecot-sql.so
+%attr(755,root,root) %{_libdir}/%{name}/libdovecot-storage.so
+%{_libdir}/%{name}/%{name}-config
+%{_includedir}/%{name}
+%{_aclocaldir}/dovecot.m4