]> git.pld-linux.org Git - packages/courier-imap.git/blobdiff - courier-imap.spec
- fixed shell syntax
[packages/courier-imap.git] / courier-imap.spec
index c41382a9480b22941dc2717a41367da720cb2d9e..f4782196fced17b08b43dd5a149814a57eff6908 100644 (file)
@@ -1,18 +1,17 @@
 #
 # Conditional build:
-# _without_ldap - without LDAP support
-# _without_mysql - without MySQL support
+%bcond_without ldap    # without LDAP support
+%bcond_without mysql   # without MySQL support
+%bcond_without pgsql   # without PostgreSQL support
 Summary:       Courier-IMAP server
 Summary(pl):   Serwer Courier-IMAP
 Name:          courier-imap
-Version:       1.3.8.2
+Version:       2.2.1
 Release:       1
 License:       GPL
 Group:         Networking/Daemons
-Group(de):     Netzwerkwesen/Server
-Group(pl):     Sieciowe/Serwery
-URL:           http://www.inter7.com/courierimap/
-Source0:       http://download.sourceforge.net/courier/%{name}-%{version}.tar.gz 
+Source0:       http://dl.sourceforge.net/courier/%{name}-%{version}.tar.bz2
+# Source0-md5: 27c90ce2ac2412bc90994cacbd75616b
 Source1:       %{name}.init
 Source2:       %{name}-pop3.init
 Source3:       %{name}-authdaemon.init
@@ -21,13 +20,23 @@ Source5:    %{name}-pop3.pamd
 Source6:       %{name}.sysconfig
 Source7:       %{name}-pop3.sysconfig
 Source8:       %{name}-authdaemon.sysconfig
-Requires:      %{name}-common = %{version}
-%{!?_without_mysql:BuildRequires:      mysql-devel}
-%{!?_without_ldap:BuildRequires:       openldap-devel}
-Prereq:                rc-scripts
+URL:           http://www.inter7.com/courierimap/
+BuildRequires: gdbm-devel
+BuildRequires: libstdc++-devel
+%{?with_mysql:BuildRequires:   mysql-devel}
+%{?with_ldap:BuildRequires:    openldap-devel}
+BuildRequires: openssl-devel >= 0.9.7c
+%{?with_pgsql:BuildRequires:   postgresql-devel}
+%{?with_mysql:BuildRequires:   zlib-devel}
+PreReq:                %{name}-common = %{version}
+PreReq:                rc-scripts
+Requires(post,preun):  /sbin/chkconfig
+Requires:      pam >= 0.77.3
 Provides:      imapdaemon
-Obsoletes:     imapdaemon
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+Obsoletes:     imapdaemon
+Conflicts:     cyrus-imapd
+Conflicts:     imap
 
 %define                _libexecdir     /usr/lib/courier-imap
 %define                _sysconfdir     /etc/courier-imap
@@ -42,94 +51,189 @@ Courier-IMAP jest serwerem IMAP dla skrzynek pocztowych Maildir.
 Summary:       Common files for imap and pop daemons
 Summary(pl):   Pliki wspólne dla serwerów imap i pop
 Group:         Networking/Daemons
-Group(de):     Netzwerkwesen/Server
-Group(pl):     Sieciowe/Serwery
-Prereq:                rc-scripts
+PreReq:                rc-scripts
+Requires(post,preun):  /sbin/chkconfig
+Requires:      %{name}-deliverquota
+Requires:      %{name}-maildirmake
+Requires:      %{name}-userdb
 
 %description common
 Common files for imap and pop daemons.
 
-%description -l pl common
+%description common -l pl
 Pliki wspólne dla serwerów imap i pop.
 
+%package userdb
+Summary:       Commands used to create the /etc/userdb.dat
+Summary(pl):   Polecenia do tworzenia /etc/userdb.dat
+Group:         Networking/Daemons
+
+%description userdb
+Commands used to create the /etc/userdb.dat.
+
+%description userdb -l pl
+Polecenia u¿ywane do stworzenia /etc/userdb.dat.
+
+%package deliverquota
+Summary:       Deliver to a Maildir with a quota
+Summary(pl):   Obs³uga quoty przy dostarczaniu poczty do skrzynek Maildir
+Group:         Networking/Daemons
+
+%description deliverquota
+deliverquota is a temporary hack to implement E-mail delivery to a
+Maildir with a software-imposed quota.
+
+%description deliverquota -l pl
+deliverquota jest tymczasowym rozwi±zaniem implementuj±cym
+dostarczanie e-maili do skrzynek Maildir z programowo narzucon± quot±.
+
+%package maildirmake
+Summary:       Tool for making mail folders in Maildir format
+Summary(pl):   Narzêdzie do tworzenia folderów w formacie Maildir
+Group:         Networking/Daemons
+Conflicts:     qmail-maildirmake
+
+%description maildirmake
+Maildirmake is a tool for making mail folders in Maildir format.
+
+%description maildirmake -l pl
+Maildirmake jest narzêdziem do tworzenia folderów pocztowych w
+formacie Maildir.
+
 %package pop3
 Summary:       Courier-IMAP POP3 Server
 Summary(pl):   Serwer Courier-IMAP POP3
 Group:         Networking/Daemons
-Group(de):     Netzwerkwesen/Server
-Group(pl):     Sieciowe/Serwery
-Requires:      %{name}-common = %{version}
-Prereq:                rc-scripts
+PreReq:                %{name}-common = %{version}
+Requires:      pam >= 0.77.3
 Provides:      pop3daemon
 Obsoletes:     pop3daemon
+Conflicts:     cyrus-imapd
+Conflicts:     imap-pop3
+Conflicts:     solid-pop3d
+Conflicts:     tpop3d
 
 %description pop3
 Courier-IMAP POP3 is an POP3 server for Maildir mailboxes.
 
-%description -l pl pop3
+%description pop3 -l pl
 Courier-IMAP POP3 jest serwerem POP3 dla skrzynek pocztowych Maildir.
 
+%package authldap
+Summary:       LDAP authentication daemon for Courier IMAP
+Summary(pl):   Demon autentykacji LDAP do Courier IMAP
+Group:         Networking/Daemons
+PreReq:                %{name}-common = %{version}
+
+%description authldap
+This package provides LDAP authentication for Courier IMAP.
+
+%description authldap -l pl
+Ten pakiet pozwala na korzystanie z autentykacji LDAP w Courier IMAP.
+
+%package authmysql
+Summary:       MySQL authentication daemon for Courier IMAP
+Summary(pl):   Demon autentykacji MySQL do Courier IMAP
+Group:         Networking/Daemons
+PreReq:                %{name}-common = %{version}
+Requires:      zlib
+
+%description authmysql
+This package provides MySQL authentication for Courier IMAP.
+
+%description authmysql -l pl
+Ten pakiet pozwala na korzystanie z autentykacji MySQL w Courier IMAP.
+
+%package authpgsql
+Summary:       PostgreSQL authentication daemon for Courier IMAP
+Summary(pl):   Demon autentykacji PostgreSQL do Courier IMAP
+Group:         Networking/Daemons
+PreReq:                %{name}-common = %{version}
+
+%description authpgsql
+This package provides PostgreSQL authentication for Courier IMAP.
+
+%description authpgsql -l pl
+Ten pakiet pozwala na korzystanie z autentykacji PostgreSQL w Courier
+IMAP.
+
 %prep
 %setup -q
 
 %build
-%configure2_13 \
+%configure \
+       --enable-unicode \
+       --with-authchangepwdir=/var/tmp \
        --with-authdaemonvar=/var/lib/authdaemon \
-       %{!?_without_mysql:--with-mysql-libs=/usr/lib} \
-       %{?_without_ldap:--without-authldap}
+       %{?with_mysql:--with-mysql-libs=%{_libdir} --with-mysql-includes=%{_includedir}/mysql} \
+       %{!?with_mysql:--without-authmysql} \
+       %{?with_pgsql:--with-pgsql-libs=%{_libdir} --with-pgsql-includes=%{_includedir}/postgresql} \
+       %{!?with_pgsql:--without-authpgsql} \
+       %{!?with_ldap:--without-authldap}
 
 %{__make}
 
 %install
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT/etc/{pam.d,rc.d/init.d,security,sysconfig} \
-       $RPM_BUILD_ROOT%{_sysconfdir}
+       $RPM_BUILD_ROOT{%{_sysconfdir},/var/lib/authdaemon}
 
-%{__make} install DESTDIR=$RPM_BUILD_ROOT
+%{__make} install \
+       DESTDIR=$RPM_BUILD_ROOT
 
 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/courier-imap
-install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/courier-imap-pop3
+install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/courier-pop3
 install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/authdaemon
 
 install %{SOURCE4} $RPM_BUILD_ROOT/etc/pam.d/imap
 install %{SOURCE5} $RPM_BUILD_ROOT/etc/pam.d/pop3
 
 install %{SOURCE6} $RPM_BUILD_ROOT/etc/sysconfig/courier-imap
-install %{SOURCE7} $RPM_BUILD_ROOT/etc/sysconfig/courier-imap-pop3
+install %{SOURCE7} $RPM_BUILD_ROOT/etc/sysconfig/courier-pop3
 install %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/authdaemon
 
-rm -rf  $RPM_BUILD_ROOT%{_mandir}/man8/{authcram,authpam,authpwd,authshadow,authuserdb,authvchkpw,pw2userdb,vchkpw2userdb,authdaemon,authdaemond,authldap,authmysql}.8 \
+rm -rf $RPM_BUILD_ROOT%{_mandir}/man8/{authcram,authpam,authpwd,authshadow,authuserdb,authvchkpw,pw2userdb,vchkpw2userdb,authdaemon,authdaemond,authldap,authmysql}.8 \
        $RPM_BUILD_ROOT%{_sbindir}/{*db,mk*cert}
 
+mv -f authlib/README.authmysql.html README.authmysql.html
+mv -f authlib/README.ldap README.ldap
+mv -f authlib/README.authmysql.myownquery README.authmysql.myownquery
 mv -f imap/README README.imap
+mv -f imap/ChangeLog ChangeLog
 mv -f maildir/README.maildirquota.txt README.maildirquota
 
 install authlib/authdaemonrc           $RPM_BUILD_ROOT%{_sysconfdir}
 install authlib/authldaprc             $RPM_BUILD_ROOT%{_sysconfdir}
 install authlib/authmysqlrc            $RPM_BUILD_ROOT%{_sysconfdir}
+install authlib/authpgsqlrc            $RPM_BUILD_ROOT%{_sysconfdir}
 
 mv -f $RPM_BUILD_ROOT%{_datadir}/*db \
        $RPM_BUILD_ROOT%{_sbindir}
 mv -f $RPM_BUILD_ROOT%{_datadir}/mk*cert \
        $RPM_BUILD_ROOT%{_sbindir}
 
-echo ".so authlib.8"   >$RPM_BUILD_ROOT%{_mandir}/man8/authcram.8
-echo ".so authlib.8"   >$RPM_BUILD_ROOT%{_mandir}/man8/authpam.8
-echo ".so authlib.8"   >$RPM_BUILD_ROOT%{_mandir}/man8/authpwd.8
-echo ".so authlib.8"   >$RPM_BUILD_ROOT%{_mandir}/man8/authshadow.8
-echo ".so authlib.8"   >$RPM_BUILD_ROOT%{_mandir}/man8/authuserdb.8
-echo ".so authlib.8"   >$RPM_BUILD_ROOT%{_mandir}/man8/authvchkpw.8
-echo ".so authlib.8"   >$RPM_BUILD_ROOT%{_mandir}/man8/authdaemon.8
-echo ".so authlib.8"   >$RPM_BUILD_ROOT%{_mandir}/man8/authdaemond.8
-%{!?_without_mysql:echo ".so authlib.8"        >$RPM_BUILD_ROOT%{_mandir}/man8/authmysql.8}
-%{!?_without_ldap:echo ".so authlib.8" >$RPM_BUILD_ROOT%{_mandir}/man8/authldap.8}
+mv -f tcpd/couriertls.1 $RPM_BUILD_ROOT%{_mandir}/man8/couriertls.8
+mv -f imap/courierpop3d.8 $RPM_BUILD_ROOT%{_mandir}/man8/courierpop3d.8
+
+echo ".so man7/authlib.7"      >$RPM_BUILD_ROOT%{_mandir}/man8/authcram.8
+echo ".so man7/authlib.7"      >$RPM_BUILD_ROOT%{_mandir}/man8/authpam.8
+echo ".so man7/authlib.7"      >$RPM_BUILD_ROOT%{_mandir}/man8/authpwd.8
+echo ".so man7/authlib.7"      >$RPM_BUILD_ROOT%{_mandir}/man8/authshadow.8
+echo ".so man7/authlib.7"      >$RPM_BUILD_ROOT%{_mandir}/man8/authuserdb.8
+echo ".so man7/authlib.7"      >$RPM_BUILD_ROOT%{_mandir}/man8/authvchkpw.8
+echo ".so man7/authlib.7"      >$RPM_BUILD_ROOT%{_mandir}/man8/authdaemon.8
+echo ".so man7/authlib.7"      >$RPM_BUILD_ROOT%{_mandir}/man8/authdaemond.8
+%{?with_pgsql:echo ".so man7/authlib.7"        >$RPM_BUILD_ROOT%{_mandir}/man8/authpgsql.8}
+%{?with_mysql:echo ".so man7/authlib.7"        >$RPM_BUILD_ROOT%{_mandir}/man8/authmysql.8}
+%{?with_ldap:echo ".so man7/authlib.7" >$RPM_BUILD_ROOT%{_mandir}/man8/authldap.8}
 echo ".so makeuserdb.8"        >$RPM_BUILD_ROOT%{_mandir}/man8/pw2userdb.8
 echo ".so makeuserdb.8"        >$RPM_BUILD_ROOT%{_mandir}/man8/vchkpw2userdb.8
 
-gzip -9nf README* imap/BUGS AUTHORS COPYING
-
 touch $RPM_BUILD_ROOT/etc/security/blacklist.{pop3,imap}
 
+%clean
+rm -rf $RPM_BUILD_ROOT
+
 %post
 /sbin/chkconfig --add courier-imap
 
@@ -166,70 +270,162 @@ if [ "$1" = "0" ]; then
 fi
 
 %post pop3
-/sbin/chkconfig --add courier-imap-pop3
-
+/sbin/chkconfig --add courier-pop3
+/sbin/chkconfig --del courier-imap-pop3 >/dev/null 2>&1 || :
 if [ -f /var/lock/subsys/courier-imap-pop3 ]; then
-       /etc/rc.d/init.d/courier-imap-pop3 restart >&2
+       /etc/rc.d/init.d/courier-imap-pop3 stop >&2
+       /etc/rc.d/init.d/courier-pop3 start >&2
+elif [ -f /var/lock/subsys/courier-pop3 ]; then
+       /etc/rc.d/init.d/courier-pop3 restart >&2
 else
-       echo "Run \"/etc/rc.d/init.d/courier-imap-pop3 start\" to start courier-imap pop3 daemon."
+       echo "Run \"/etc/rc.d/init.d/courier-pop3 start\" to start courier-pop3 daemon."
 fi
+rm -f /etc/rc.d/init.d/courier-imap-pop3
 
 %preun pop3
 if [ "$1" = "0" ]; then
+       if [ -f /var/lock/subsys/courier-pop3 ]; then
+               /etc/rc.d/init.d/courier-pop3 stop >&2
+       fi
+       /sbin/chkconfig --del courier-pop3
        if [ -f /var/lock/subsys/courier-imap-pop3 ]; then
                /etc/rc.d/init.d/courier-imap-pop3 stop >&2
        fi
-       /sbin/chkconfig --del courier-imap
+       /sbin/chkconfig --del courier-imap-pop3 >/dev/null 2>&1 || :
+       rm -f /etc/rc.d/init.d/courier-imap-pop3
 fi
 
-%clean
-rm -rf $RPM_BUILD_ROOT
+%post authldap
+METHOD=plain
+. /etc/sysconfig/authdaemon
+if [ "$METHOD" = "ldap" ]; then
+       if [ -f /var/lock/subsys/authdaemon ]; then
+               /etc/rc.d/init.d/authdaemon restart >&2
+       else
+               echo "Run \"/etc/rc.d/init.d/authdaemon start\" to start courier-imap authdaemon."
+       fi
+fi
+
+%preun authldap
+METHOD=plain
+. /etc/sysconfig/authdaemon
+if [ "$1" = "$0" -a "$METHOD" = "ldap" ]; then
+       if [ -f /var/lock/subsys/authdaemon ]; then
+               /etc/rc.d/init.d/authdaemon stop >&2
+       fi
+fi
+
+%post authmysql
+METHOD=plain
+. /etc/sysconfig/authdaemon
+if [ "$METHOD" = "mysql" ]; then
+       if [ -f /var/lock/subsys/authdaemon ]; then
+               /etc/rc.d/init.d/authdaemon restart >&2
+       else
+               echo "Run \"/etc/rc.d/init.d/authdaemon start\" to start courier-imap authdaemon."
+       fi
+fi
+
+%preun authmysql
+METHOD=plain
+. /etc/sysconfig/authdaemon
+if [ "$1" = "$0" -a "$METHOD" = "mysql" ]; then
+       if [ -f /var/lock/subsys/authdaemon ]; then
+               /etc/rc.d/init.d/authdaemon stop >&2
+       fi
+fi
 
 %files
 %defattr(644,root,root,755)
-%attr(640,root,root) %config %verify(not size mtime md5) /etc/pam.d/imap
+%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/pam.d/imap
 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/security/blacklist.imap
 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/courier-imap
 %attr(754,root,root) /etc/rc.d/init.d/courier-imap
 %{_sysconfdir}/imapd.cnf
 %attr(755,root,root) %{_bindir}/imapd
+%attr(755,root,root) %{_bindir}/maildirkw
 %attr(755,root,root) %{_sbindir}/imaplogin
 %attr(755,root,root) %{_sbindir}/mkimapdcert
+%{_mandir}/man8/imapd*
+%{_mandir}/man1/maildirkw.1*
 
 %files common
 %defattr(644,root,root,755)
-%doc *.gz imap/*.gz
+%doc README* imap/BUGS ChangeLog AUTHORS
 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/authdaemon
 %attr(754,root,root) /etc/rc.d/init.d/authdaemon
+%attr(700,root,root) /var/lib/authdaemon
 %attr(750,root,root) %dir %{_sysconfdir}
 %dir %{_libexecdir}
 %dir %{_libexecdir}/authlib
-%{_sysconfdir}/authdaemonrc
-%{!?_without_ldap:%{_sysconfdir}/authldaprc}
-%{!?_without_mysql:%{_sysconfdir}/authmysqlrc}
+%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/authdaemonrc
 %{_sysconfdir}/quotawarnmsg.example
 %attr(755,root,root) %{_bindir}/couriertls
-%attr(755,root,root) %{_bindir}/maildirmake
+%attr(755,root,root) %{_libexecdir}/authlib/authdaemon
+%attr(755,root,root) %{_libexecdir}/authlib/authdaemond.plain
+%attr(755,root,root) %{_libexecdir}/couriertcpd
+%attr(755,root,root) %{_libexecdir}/courierlogger
+%attr(755,root,root) %{_libexecdir}/makedatprog
+%{_mandir}/man8/auth[cdsuv]*
+%{_mandir}/man8/authp[aw]*
+%{_mandir}/man7/authlib*
+%{_mandir}/man1/couriert*
+%{_mandir}/man8/couriert*
+%{_mandir}/man8/mk*
+
+%files userdb
+%defattr(644,root,root,755)
 %attr(755,root,root) %{_sbindir}/makeuserdb
 %attr(755,root,root) %{_sbindir}/pw2userdb
 %attr(755,root,root) %{_sbindir}/userdb
 %attr(755,root,root) %{_sbindir}/userdbpw
 %attr(755,root,root) %{_sbindir}/vchkpw2userdb
-%attr(755,root,root) %{_libexecdir}/authlib/authdaemon
-%attr(755,root,root) %{_libexecdir}/authlib/authdaemond.*
-%attr(755,root,root) %{_libexecdir}/couriertcpd
-%attr(755,root,root) %{_libexecdir}/deliverquota
-%attr(755,root,root) %{_libexecdir}/logger
-%attr(755,root,root) %{_libexecdir}/makedatprog
-%{_mandir}/man*/*
+%{_mandir}/man8/makeuserdb*
+%{_mandir}/man8/userdb*
+%{_mandir}/man8/*pw2userdb*
+
+%files deliverquota
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/deliverquota
+%{_mandir}/man8/deliverquota*
+
+%files maildirmake
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/maildirmake
+%{_mandir}/man1/maildirmake*
 
 %files pop3
 %defattr(644,root,root,755)
-%attr(640,root,root) %config %verify(not size mtime md5) /etc/pam.d/pop3
+%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/pam.d/pop3
 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/security/blacklist.pop3
-%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/courier-imap-pop3
-%attr(754,root,root) /etc/rc.d/init.d/courier-imap-pop3
+%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/courier-pop3
+%attr(754,root,root) /etc/rc.d/init.d/courier-pop3
 %attr(755,root,root) %{_bindir}/pop3d
 %attr(755,root,root) %{_sbindir}/mkpop3dcert
 %attr(755,root,root) %{_sbindir}/pop3login
 %{_sysconfdir}/pop3d.cnf
+%{_mandir}/man8/courierpop*
+
+%if %{with ldap}
+%files authldap
+%defattr(644,root,root,755)
+%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/authldaprc
+%attr(755,root,root) %{_libexecdir}/authlib/authdaemond.ldap
+%{_mandir}/man8/authldap*
+%endif
+
+%if %{with mysql}
+%files authmysql
+%defattr(644,root,root,755)
+%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/authmysqlrc
+%attr(755,root,root) %{_libexecdir}/authlib/authdaemond.mysql
+%{_mandir}/man8/authmysql*
+%endif
+
+%if %{with pgsql}
+%files authpgsql
+%defattr(644,root,root,755)
+%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/authpgsqlrc
+%attr(755,root,root) %{_libexecdir}/authlib/authdaemond.pgsql
+%{_mandir}/man8/authpgsql*
+%endif
This page took 0.087931 seconds and 4 git commands to generate.