Search
j0ke.net Open Build Service
>
Projects
>
server:mail
>
dovecot20
> dovecot20.spec
Sign Up
|
Log In
Username
Password
Cancel
Overview
Repositories
Revisions
Requests
Users
Advanced
Attributes
Meta
File dovecot20.spec of Package dovecot20 (Revision 7)
Currently displaying revision
7
,
show latest
# # spec file for package dovecot20 # # Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # # norootforbuild Name: dovecot20 Version: 2.0.21 Release: 0 %define pkg_name dovecot %define sieve_version 2.0 %define dovecot_version %{version} %define dovecot_pigeonhole_docdir %{_docdir}/%{pkg_name}/dovecot-pigeonhole #define with_unfinished_sieve_features 1 # Group: Productivity/Networking/Email/Servers License: BSD 3-Clause; LGPL v2.1 or later; X11/MIT # %if 0%{?suse_version} >= 1000 %define with_solr 1 %endif %if 0%{?suse_version} > 1020 %define with_clucene 0 %endif %if 0%{?sles_version} == 9 %define with_sqlite 0 %else %define with_sqlite 1 %endif BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: bison flex mysql-devel openldap2-devel pam-devel pkgconfig postgresql-devel tcpd-devel %if 0%{with_sqlite} BuildRequires: sqlite-devel > 3 %endif %if 0%{?with_clucene} BuildRequires: clucene-core-devel gcc-c++ %endif %if 0%{?sles_version} == 9 BuildRequires: heimdal-devel BuildRequires: libcap %else BuildRequires: krb5-devel BuildRequires: libcap-devel %endif %if 0%{?suse_version} > 1020 BuildRequires: libbz2-devel %endif %if 0%{?with_solr} BuildRequires: curl-devel %if 0%{?suse_version} >= 1030 BuildRequires: libexpat-devel %else BuildRequires: expat %endif %endif PreReq: pwdutils %insserv_prereq %fillup_prereq Conflicts: dovecot10 dovecot11 dovecot12 dovecot-snapshot dovecot11-snapshot dovecot12-snapshot Provides: dovecot = %{version}-%{release} Obsoletes: dovecot < %{version} %if 0%{?suse_version} >= 1010 Recommends: %{name}-backend-mysql = %{version} %{name}-backend-pgsql = %{version} %if 0%{with_sqlite} Recommends: %{name}-backend-sqlite = %{version} %endif %endif Url: http://www.dovecot.org # taken from http://www.dovecot.org/releases/2.0/%{pkg_name}-%{version}.tar.gz Source: %{pkg_name}-%{dovecot_version}.tar.bz2 # hg clone http://hg.rename-it.nl/dovecot-2.0-pigeonhole/ %define dovecot_pigeonhole_source_dir %{pkg_name}-%{sieve_version}-pigeonhole-0.2.6 Source1: %{dovecot_pigeonhole_source_dir}.tar.bz2 Source2: %{pkg_name}.init Source3: %{pkg_name}.pam Source4: %{pkg_name}.README.SuSE Source5: %{pkg_name}-fw Patch0: dovecot-2.0_pie.patch Patch1: dovecot-2.0-pigeonhole_pie.patch Summary: IMAP and POP3 Server Written Primarily with Security in Mind %description Dovecot is an IMAP and POP3 server for Linux and UNIX-like systems, written primarily with security in mind. Although it is written in C, it uses several coding techniques to avoid most of the common pitfalls. Dovecot can work with standard mbox and maildir formats and is fully compatible with UW-IMAP and Courier IMAP servers as well as mail clients accessing the mailboxes directly. Author: -------- Timo Sirainen <tss@iki.fi> %package backend-mysql License: BSD 3-Clause; LGPL v2.1 or later; X11/MIT Group: Productivity/Networking/Email/Servers Requires: %{name} = %{version} Provides: dovecot_sql_backend = %{version}-%{release} Provides: dovecot-backend-mysql = %{version}-%{release} Obsoletes: dovecot-backend-mysql < %{version} Conflicts: dovecot10-backend-mysql dovecot11-backend-mysql dovecot12-backend-mysql dovecot-snapshot-backend-mysql dovecot11-snapshot-backend-mysql dovecot12-snapshot-backend-mysql Summary: MySQL support for Dovecot %description backend-mysql Dovecot is an IMAP and POP3 server for Linux and UNIX-like systems, written primarily with security in mind. Although it is written in C, it uses several coding techniques to avoid most of the common pitfalls. Dovecot can work with standard mbox and maildir formats and is fully compatible with UW-IMAP and Courier IMAP servers as well as mail clients accessing the mailboxes directly. This package holds the files needed for MySQL support. Author: -------- Timo Sirainen <tss@iki.fi> %package backend-pgsql License: BSD 3-Clause; LGPL v2.1 or later; X11/MIT Group: Productivity/Networking/Email/Servers Requires: %{name} = %{version} Provides: dovecot_sql_backend = %{version}-%{release} Provides: dovecot-backend-pgsql = %{version}-%{release} Obsoletes: dovecot-backend-pgsql < %{version} Conflicts: dovecot10-backend-pgsql dovecot11-backend-pgsql dovecot12-backend-pgsql dovecot-snapshot-backend-pgsql dovecot11-snapshot-backend-pgsql dovecot12-snapshot-backend-pgsql Summary: PostgreSQL support for Dovecot %description backend-pgsql Dovecot is an IMAP and POP3 server for Linux and UNIX-like systems, written primarily with security in mind. Although it is written in C, it uses several coding techniques to avoid most of the common pitfalls. Dovecot can work with standard mbox and maildir formats and is fully compatible with UW-IMAP and Courier IMAP servers as well as mail clients accessing the mailboxes directly. This package holds the files needed for PostgreSQL support. Author: -------- Timo Sirainen <tss@iki.fi> %if 0%{?with_sqlite} %package backend-sqlite License: BSD 3-Clause; LGPL v2.1 or later; X11/MIT Group: Productivity/Networking/Email/Servers Requires: %{name} = %{version} Provides: dovecot_sql_backend = %{version}-%{release} Provides: dovecot-backend-sqlite = %{version}-%{release} Obsoletes: dovecot-backend-sqlite < %{version} Conflicts: dovecot10-backend-sqlite dovecot11-backend-sqlite dovecot12-backend-sqlite dovecot-snapshot-backend-sqlite dovecot11-snapshot-backend-sqlite dovecot12-snapshot-backend-sqlite Summary: SQLite support for Dovecot %description backend-sqlite Dovecot is an IMAP and POP3 server for Linux and UNIX-like systems, written primarily with security in mind. Although it is written in C, it uses several coding techniques to avoid most of the common pitfalls. Dovecot can work with standard mbox and maildir formats and is fully compatible with UW-IMAP and Courier IMAP servers as well as mail clients accessing the mailboxes directly. This package holds the files needed for SQLite support. Author: -------- Timo Sirainen <tss@iki.fi> %endif %if 0%{?with_clucene} %package fts-lucene License: BSD 3-Clause; LGPL v2.1 or later; X11/MIT Group: Productivity/Networking/Email/Servers Requires: %{name} = %{version} Provides: dovecot_fts_backend = %{version}-%{release} Provides: dovecot-fts-clucene = %{version}-%{release} Obsoletes: dovecot-fts-clucene < %{version} Conflicts: dovecot10-fts-clucene dovecot11-fts-clucene dovecot12-fts-clucene dovecot-snapshot-fts-clucene dovecot11-snapshot-fts-clucene dovecot12-snapshot-fts-clucene Summary: Fulltext search support via CLucene %description fts-lucene Dovecot is an IMAP and POP3 server for Linux and UNIX-like systems, written primarily with security in mind. Although it is written in C, it uses several coding techniques to avoid most of the common pitfalls. Dovecot can work with standard mbox and maildir formats and is fully compatible with UW-IMAP and Courier IMAP servers as well as mail clients accessing the mailboxes directly. This package holds the files needed for fulltext search support via CLucene. Author: -------- Timo Sirainen <tss@iki.fi> %endif %if 0%{?with_solr} %package fts-solr License: BSD 3-Clause; LGPL v2.1 or later; X11/MIT Group: Productivity/Networking/Email/Servers Requires: %{name} = %{version} Provides: dovecot_fts_backend = %{version}-%{release} Provides: dovecot-fts-solr = %{version}-%{release} Obsoletes: dovecot-fts-solr < %{version} Conflicts: dovecot10-fts-solr dovecot11-fts-solr dovecot12-fts-solr dovecot-snapshot-fts-solr dovecot11-snapshot-fts-solr dovecot12-snapshot-fts-solr Summary: Fulltext search support via solr %description fts-solr Dovecot is an IMAP and POP3 server for Linux and UNIX-like systems, written primarily with security in mind. Although it is written in C, it uses several coding techniques to avoid most of the common pitfalls. Dovecot can work with standard mbox and maildir formats and is fully compatible with UW-IMAP and Courier IMAP servers as well as mail clients accessing the mailboxes directly. This package holds the files needed for fulltext search support via solr. Author: -------- Timo Sirainen <tss@iki.fi> %endif %package devel License: BSD 3-Clause; LGPL v2.1 or later; X11/MIT Group: Development/Libraries/C and C++ Requires: %{name} = %{version} Provides: dovecot-devel = %{version}-%{release} Obsoletes: dovecot-devel < %{version} Conflicts: dovecot10-devel dovecot11-devel dovecot12-devel dovecot-snapshot-devel dovecot11-snapshot-devel dovecot12-snapshot-devel Summary: Development files for Dovecot plugins %description devel Dovecot is an IMAP and POP3 server for Linux and UNIX-like systems, written primarily with security in mind. Although it is written in C, it uses several coding techniques to avoid most of the common pitfalls. Dovecot can work with standard mbox and maildir formats and is fully compatible with UW-IMAP and Courier IMAP servers as well as mail clients accessing the mailboxes directly. This package holds the file needed to compile plugins outside of the dovecot tree. Author: -------- Timo Sirainen <tss@iki.fi> %prep %setup -q -n %{pkg_name}-%{dovecot_version} -a 1 %{__gzip} -9v ChangeLog # Disable ssl per default. %{__sed} -i 's|#ssl = yes|ssl = no|' doc/example-config/conf.d/10-ssl.conf # Fix plugins dir. %{__sed} -i 's|#mail_plugin_dir = /usr/lib/dovecot|mail_plugin_dir = %{_libdir}/dovecot/modules|' doc/example-config/conf.d/10-mail.conf # TODO: why this ? # Disable IPv6 listening. # %{__sed} -i 's|#listen = \*, ::|listen = *|' doc/example-config/dovecot.conf %build export CFLAGS="%{optflags}" %if 0%{?suse_version} > 1000 export CFLAGS="$CFLAGS -fstack-protector" %endif #{__aclocal} -I . #{__autoheader} #{__libtoolize} --force #{__automake} --add-missing #{__autoconf} %if 0%{?with_clucene} export CFLAGS="$CFLAGS -I%{_libdir}" export CXXFLAGS="$CFLAGS -I%{_libdir}" %endif export CFLAGS="$CFLAGS -fpic -DPIC" export LIBS="-pie" %configure \ --docdir=%{_docdir}/%{pkg_name} \ --libexecdir=%{_prefix}/lib \ --with-moduledir=%{_libdir}/%{pkg_name}/modules \ --with-ioloop=best \ --with-ldap=plugin \ --with-sql=plugin \ --with-gssapi=plugin \ --with-pgsql \ --with-mysql \ %if 0%{with_sqlite} --with-sqlite \ %endif %if 0%{?with_clucene} --with-lucene \ %endif %if 0%{?with_solr} --with-solr \ %endif --with-ssl=openssl \ --with-zlib \ --with-bzlib \ --with-libcap \ --with-libwrap \ --with-docs \ --disable-static make pushd %{dovecot_pigeonhole_source_dir} #./autogen.sh #%{__aclocal} #%{__autoheader} #%{__libtoolize} --force #%{__automake} --add-missing #%{__autoconf} %configure --with-dovecot=../ \ %if 0%{?with_unfinished_sieve_features} --with-unfinished-features \ %endif --docdir="%{dovecot_pigeonhole_docdir}" make popd %check make -C %{dovecot_pigeonhole_source_dir} test %install %makeinstall %makeinstall -C %{dovecot_pigeonhole_source_dir} sieve_docdir=%{dovecot_pigeonhole_docdir} # clean up unused files, as much as I would like to use -delete ... the old find on sles9 doesnt support it find %{buildroot}%{_libdir}/%{pkg_name}/ -type f -name \*.la -print0 | xargs -r0 rm -fv find %{buildroot}%{_libdir}/%{pkg_name}/ -type f -name \*.a -print0 | xargs -r0 rm -fv # create /var directories %{__install} -m 0755 -Dd \ %{buildroot}%{_var}/run/%{pkg_name}/login/ \ %{buildroot}%{_var}/lib/%{pkg_name}/ # install the init script %{__install} -D -m 0755 %{S:2} %{buildroot}%{_sysconfdir}/init.d/%{pkg_name} %{__ln_s} -f %{_sysconfdir}/init.d/%{pkg_name} %{buildroot}%{_sbindir}/rc%{pkg_name} # install pam config %{__install} -D -m 0644 %{S:3} %{buildroot}%{_sysconfdir}/pam.d/%{pkg_name} # install the script to create dummy selfsigned certs %{__install} -m 0755 doc/mkcert.sh %{buildroot}%{_docdir}/%{pkg_name} %{__install} -m 0644 doc/*.cnf %{buildroot}%{_docdir}/%{pkg_name} %{__install} -m 0644 %{S:4} %{buildroot}%{_docdir}/%{pkg_name}/README.SuSE # install default config cp -av %{buildroot}%{_docdir}/%{pkg_name}/example-config/* %{buildroot}%{_sysconfdir}/%{pkg_name}/ # the chmod breaks the lda. lets use the more open permissions #chmod -Rv o= %{buildroot}%{_sysconfdir}/%{pkg_name}/ # additional docs for the main package %{__install} -m 0644 \ AUTHORS ChangeLog* COPYING* NEWS TODO README* \ %if 0%{?with_solr} doc/*.xml \ %endif %{buildroot}%{_docdir}/%{pkg_name}/ # install sieve docs %{__install} -m 0755 -Dd %{buildroot}%{dovecot_pigeonhole_docdir} pushd %{dovecot_pigeonhole_source_dir} cp -av AUTHORS COPYING* INSTALL NEWS README TODO \ examples/ doc/rfc/ doc/devel \ %{buildroot}%{dovecot_pigeonhole_docdir}/ popd # install firewall services %{__install} -D -m 644 %{S:5} %{buildroot}%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/%{pkg_name} %clean %{__rm} -rf %{buildroot} %pre /usr/sbin/groupadd -r %{pkg_name} &>/dev/null || : /usr/sbin/useradd -o -g %{pkg_name} -s /bin/false -r -c "User for Dovecot imapd" -d %{_var}/run/%{pkg_name} %{pkg_name} &>/dev/null || : /usr/sbin/useradd -o -g %{pkg_name} -s /bin/false -r -c "User for Dovecot login" -d %{_var}/run/%{pkg_name} dovenull &>/dev/null || : %preun %stop_on_removal %{pkg_name} %post /sbin/ldconfig %fillup_and_insserv -f %{pkg_name} %postun /sbin/ldconfig %insserv_cleanup %restart_on_update %{pkg_name} %files %defattr(-,root,root) %{_sysconfdir}/init.d/%{pkg_name} %{_sbindir}/rc%{pkg_name} %{_sbindir}/%{pkg_name} %{_bindir}/doveadm %{_bindir}/doveconf %{_bindir}/dsync %{_bindir}/sieve-test %{_bindir}/sievec %{_bindir}/sieve-dump # conf %config(noreplace) %{_sysconfdir}/%{pkg_name}/ %config(noreplace) %{_sysconfdir}/pam.d/%{pkg_name} %config %{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/%{pkg_name} # subprocesses %dir %{_prefix}/lib/%{pkg_name} %{_prefix}/lib/%{pkg_name}/anvil %{_prefix}/lib/%{pkg_name}/auth %{_prefix}/lib/%{pkg_name}/checkpassword-reply %{_prefix}/lib/%{pkg_name}/config %{_prefix}/lib/%{pkg_name}/deliver %{_prefix}/lib/%{pkg_name}/dict %{_prefix}/lib/%{pkg_name}/director %{_prefix}/lib/%{pkg_name}/dns-client %{_prefix}/lib/%{pkg_name}/doveadm-server %{_prefix}/lib/%{pkg_name}/dovecot-lda %{_prefix}/lib/%{pkg_name}/gdbhelper %{_prefix}/lib/%{pkg_name}/imap %{_prefix}/lib/%{pkg_name}/imap-login %{_prefix}/lib/%{pkg_name}/listview %{_prefix}/lib/%{pkg_name}/lmtp %{_prefix}/lib/%{pkg_name}/log %{_prefix}/lib/%{pkg_name}/maildirlock %{_prefix}/lib/%{pkg_name}/managesieve %{_prefix}/lib/%{pkg_name}/managesieve-login %{_prefix}/lib/%{pkg_name}/pop3 %{_prefix}/lib/%{pkg_name}/pop3-login %{_prefix}/lib/%{pkg_name}/rawlog %{_prefix}/lib/%{pkg_name}/script %{_prefix}/lib/%{pkg_name}/script-login %{_prefix}/lib/%{pkg_name}/ssl-params %{_prefix}/lib/%{pkg_name}/tcpwrap %{_libdir}/%{pkg_name}/libdovecot.so.* %{_libdir}/%{pkg_name}/libdovecot-lda.so.* %{_libdir}/%{pkg_name}/libdovecot-login.so.* %{_libdir}/%{pkg_name}/libdovecot-sieve.so.* %{_libdir}/%{pkg_name}/libdovecot-storage.so.* %{_libdir}/%{pkg_name}/libdovecot-sql.so.* # plugins %dir %{_libdir}/%{pkg_name} %dir %{_libdir}/%{pkg_name}/modules/ %{_libdir}/%{pkg_name}/modules/lib01_acl_plugin.so %{_libdir}/%{pkg_name}/modules/lib02_lazy_expunge_plugin.so %{_libdir}/%{pkg_name}/modules/lib05_snarf_plugin.so %{_libdir}/%{pkg_name}/modules/lib10_quota_plugin.so %{_libdir}/%{pkg_name}/modules/lib11_trash_plugin.so %{_libdir}/%{pkg_name}/modules/lib15_notify_plugin.so %{_libdir}/%{pkg_name}/modules/lib20_mail_log_plugin.so %{_libdir}/%{pkg_name}/modules/lib20_expire_plugin.so %{_libdir}/%{pkg_name}/modules/lib20_fts_plugin.so %{_libdir}/%{pkg_name}/modules/lib20_zlib_plugin.so %{_libdir}/%{pkg_name}/modules/lib20_autocreate_plugin.so %{_libdir}/%{pkg_name}/modules/lib20_listescape_plugin.so %{_libdir}/%{pkg_name}/modules/lib20_virtual_plugin.so %{_libdir}/%{pkg_name}/modules/lib21_fts_squat_plugin.so %{_libdir}/%{pkg_name}/modules/lib30_imap_zlib_plugin.so %{_libdir}/%{pkg_name}/modules/lib02_imap_acl_plugin.so %{_libdir}/%{pkg_name}/modules/lib11_imap_quota_plugin.so %{_libdir}/%{pkg_name}/modules/lib90_sieve_plugin.so %dir %{_libdir}/%{pkg_name}/modules/doveadm %{_libdir}/%{pkg_name}/modules/doveadm/lib10_doveadm_acl_plugin.so %{_libdir}/%{pkg_name}/modules/doveadm/lib10_doveadm_expire_plugin.so %{_libdir}/%{pkg_name}/modules/doveadm/lib10_doveadm_quota_plugin.so* %{_libdir}/%{pkg_name}/modules/doveadm/lib10_doveadm_zlib_plugin.so %dir %{_libdir}/%{pkg_name}/modules/auth/ %dir %{_libdir}/%{pkg_name}/modules/dict/ %{_libdir}/%{pkg_name}/modules/auth/libauthdb_ldap.so %{_libdir}/%{pkg_name}/modules/auth/libmech_gssapi.so %dir %{_libdir}/%{pkg_name}/modules/settings/ %{_libdir}/%{pkg_name}/modules/settings/libmanagesieve_login_settings.so %{_libdir}/%{pkg_name}/modules/settings/libmanagesieve_settings.so # doc %{_mandir}/man1/deliver.1* %{_mandir}/man1/doveadm*.1* %{_mandir}/man1/doveconf.1* %{_mandir}/man1/dovecot*.1* %{_mandir}/man1/dsync.1* %{_mandir}/man7/doveadm*.7* %{_mandir}/man1/sieve-test.1* %{_mandir}/man1/sieve-dump.1* %{_mandir}/man1/sievec.1* %{_mandir}/man1/sieved.1* %{_mandir}/man7/pigeonhole.7* %doc %{_docdir}/%{pkg_name} %if 0%{?with_solr} %exclude %{_docdir}/%{pkg_name}/solr-schema.xml %endif # setting up permissions %dir %attr(0755,root,root) %ghost %{_var}/run/%{pkg_name}/ %dir %attr(0750,root,%{pkg_name}) %ghost %{_var}/run/%{pkg_name}/login/ %dir %attr(0750,root,root) %{_var}/lib/%{pkg_name}/ %if 0%{?with_unfinished_sieve_features} %{_bindir}/sieve-filter %{_mandir}/man1/sieve-filter.1* %endif %files backend-mysql %defattr(-,root,root,-) %{_libdir}/%{pkg_name}/modules/libdriver_mysql.so %{_libdir}/%{pkg_name}/modules/auth/libdriver_mysql.so %{_libdir}/%{pkg_name}/modules/dict/libdriver_mysql.so %files backend-pgsql %defattr(-,root,root,-) %{_libdir}/%{pkg_name}/modules/libdriver_pgsql.so %{_libdir}/%{pkg_name}/modules/auth/libdriver_pgsql.so %{_libdir}/%{pkg_name}/modules/dict/libdriver_pgsql.so %if 0%{?with_sqlite} %files backend-sqlite %defattr(-,root,root,-) %{_libdir}/%{pkg_name}/modules/libdriver_sqlite.so %{_libdir}/%{pkg_name}/modules/auth/libdriver_sqlite.so %{_libdir}/%{pkg_name}/modules/dict/libdriver_sqlite.so %endif %if 0%{?with_clucene} %files fts-lucene %defattr(-,root,root,-) %{_libdir}/%{pkg_name}/modules/lib21_fts_lucene_plugin.so %endif %if 0%{?with_solr} %files fts-solr %defattr(-,root,root,-) %{_libdir}/%{pkg_name}/modules/lib21_fts_solr_plugin.so %{_docdir}/%{pkg_name}/solr-schema.xml %endif %files devel %defattr(-,root,root,-) %{_datadir}/aclocal/%{pkg_name}.m4 %{_includedir}/%{pkg_name}/ %{_libdir}/%{pkg_name}/dovecot-config %{_libdir}/%{pkg_name}/libdovecot.so %{_libdir}/%{pkg_name}/libdovecot-lda.so %{_libdir}/%{pkg_name}/libdovecot-login.so %{_libdir}/%{pkg_name}/libdovecot-sieve.so %{_libdir}/%{pkg_name}/libdovecot-storage.so %{_libdir}/%{pkg_name}/libdovecot-sql.so %changelog