]> git.pld-linux.org Git - packages/courier-imap.git/blobdiff - courier-imap.spec
- rel 0.1; new scripts need testing; pldized init scripts
[packages/courier-imap.git] / courier-imap.spec
index ffc4fd8af6a696c47c731e6673b23951c412b609..24f75eb25f9f14c44a92bc21b8befb7147cf98d8 100644 (file)
@@ -1,42 +1,36 @@
-#
-# Conditional build:
-%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:       3.0.8
-Release:       2
+Version:       4.0.4
+Release:       0.1
 License:       GPL
 Group:         Networking/Daemons
 Source0:       http://dl.sourceforge.net/courier/%{name}-%{version}.tar.bz2
-# Source0-md5: 1b431e6dac39ed728d839ceb35474040
+# Source0-md5: cb5a1d394e622fe2c5ea7bcab68c6286
 Source1:       %{name}.init
-Source2:       %{name}-pop3.init
-Source3:       %{name}.pamd
-Source4:       %{name}-pop3.pamd
+Source2:       %{name}-ssl.init
+Source3:       %{name}-pop3.init
+Source4:       %{name}-pop3-ssl.init
+Source5:       %{name}.pamd
+Source6:       %{name}-pop3.pamd
 Patch0:                %{name}-dirs.patch
 Patch1:                %{name}-certsdir.patch
 Patch2:                %{name}-maildir.patch
-URL:           http://www.inter7.com/courierimap/
+URL:           http://www.courier-mta.org/imap/
 BuildRequires: autoconf >= 2.54
 BuildRequires: automake
-BuildRequires: gdbm-devel
+BuildRequires: courier-authlib-devel
+BuildRequires: db-devel
+BuildRequires: fam-devel
 BuildRequires: libstdc++-devel
-%{?with_mysql:BuildRequires:   mysql-devel}
-%{?with_ldap:BuildRequires:    openldap-devel}
 BuildRequires: openssl-devel >= 0.9.7d
-%{?with_pgsql:BuildRequires:   postgresql-devel}
 BuildRequires: procps
 BuildRequires: sed >= 4.0
 BuildRequires: sysconftool
-%{?with_mysql:BuildRequires:   zlib-devel}
 PreReq:                %{name}-common = %{version}-%{release}
 PreReq:                rc-scripts
 Requires(post,preun):  /sbin/chkconfig
-Requires:      pam >= 0.77.3
+Requires:      pam >= 0.79.0
 Provides:      imapdaemon
 Obsoletes:     imapdaemon
 Conflicts:     cyrus-imapd
@@ -59,6 +53,7 @@ Summary:      Common files for imap and pop3 daemons
 Summary(pl):   Pliki wspólne dla serwerów imap i pop3
 Group:         Networking/Daemons
 PreReq:                rc-scripts
+Requires(pre): courier-authlib
 Requires(post,preun):  /sbin/chkconfig
 Requires:      procps
 
@@ -68,17 +63,6 @@ Common files for imap and pop3 daemons.
 %description common -l pl
 Pliki wspólne dla serwerów imap i pop3.
 
-%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
@@ -124,44 +108,6 @@ Courier-IMAP POP3 is an POP3 server for Maildir mailboxes.
 %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}-%{release}
-
-%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}-%{release}
-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}-%{release}
-
-%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
 %patch0 -p1
@@ -169,36 +115,35 @@ IMAP.
 %patch2 -p1
 
 install %{SOURCE1} courier-imap.in
-install %{SOURCE2} courier-pop3.in
+install %{SOURCE2} courier-imap-ssl.in
+install %{SOURCE3} courier-pop3.in
+install %{SOURCE4} courier-pop3-ssl.in
 
 %build
-cp -f /usr/share/automake/config.sub .
-cp -f /usr/share/automake/config.sub maildir
-
-%{__aclocal}
-%{__automake}
-%{__autoconf}
-
-cd authlib
-%{__aclocal}
-%{__automake}
-%{__autoconf}
-cd ../imap
-%{__aclocal}
-%{__automake}
-%{__autoconf}
-cd ..
+
+# Change Makefile.am files and force recreate Makefile.in's.
+OLDDIR=`pwd`
+find -type f -a \( -name configure.in -o -name configure.ac \) | while read FILE; do
+        cd "`dirname "$FILE"`"
+
+        if [ -f Makefile.am ]; then
+                sed -i -e '/_LDFLAGS=-static/d' Makefile.am
+        fi
+
+        %{__libtoolize}
+        %{__aclocal}
+        %{__autoconf}
+        %{__autoheader}
+        %{__automake}
+
+        cd "$OLDDIR"
+done
 
 %configure \
+       --with-db=db \
        --enable-unicode \
        --with-authchangepwdir=/var/tmp \
-       --with-authdaemonvar=/var/lib/authdaemon \
-       --with-certsdir=%{_certsdir} \
-       %{?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}
+       --with-certsdir=%{_certsdir}
 
 %{__make}
 
@@ -210,47 +155,24 @@ install -d $RPM_BUILD_ROOT{/etc/{pam.d,rc.d/init.d,security},%{_certsdir}}
        DESTDIR=$RPM_BUILD_ROOT
 
 install courier-imap $RPM_BUILD_ROOT/etc/rc.d/init.d/courier-imap
+install courier-imap-ssl $RPM_BUILD_ROOT/etc/rc.d/init.d/courier-imap-ssl
 install courier-pop3 $RPM_BUILD_ROOT/etc/rc.d/init.d/courier-pop3
-install %{SOURCE3} $RPM_BUILD_ROOT/etc/pam.d/imap
-install %{SOURCE4} $RPM_BUILD_ROOT/etc/pam.d/pop3
+install courier-pop3-ssl $RPM_BUILD_ROOT/etc/rc.d/init.d/courier-pop3-ssl
+install %{SOURCE5} $RPM_BUILD_ROOT/etc/pam.d/imap
+install %{SOURCE6} $RPM_BUILD_ROOT/etc/pam.d/pop3
 
-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}
+rm -rf $RPM_BUILD_ROOT%{_sbindir}/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}
 
 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
-
 touch $RPM_BUILD_ROOT/etc/security/blacklist.{pop3,imap}
 
 # make config files
@@ -268,6 +190,7 @@ rm -rf $RPM_BUILD_ROOT
 
 %post
 /sbin/chkconfig --add courier-imap
+/sbin/chkconfig --add courier-imap-ssl
 
 if [ -f /var/lock/subsys/courier-imap ]; then
        /etc/rc.d/init.d/courier-imap restart >&2
@@ -275,6 +198,12 @@ else
        echo "Run \"/etc/rc.d/init.d/courier-imap start\" to start courier-imap daemon."
 fi
 
+if [ -f /var/lock/subsys/courier-imap-ssl ]; then
+       /etc/rc.d/init.d/courier-imap-ssl restart >&2
+else
+       echo "Run \"/etc/rc.d/init.d/courier-imap-ssl start\" to start courier-imap-ssl daemon."
+fi
+
 %preun
 if [ "$1" = "0" ]; then
        if [ -f /var/lock/subsys/courier-imap ]; then
@@ -283,6 +212,14 @@ if [ "$1" = "0" ]; then
        /sbin/chkconfig --del courier-imap
 fi
 
+if [ "$1" = "0" ]; then
+       if [ -f /var/lock/subsys/courier-imap-ssl ]; then
+               /etc/rc.d/init.d/courier-imap-ssl stop >&2
+       fi
+       /sbin/chkconfig --del courier-imap-ssl
+fi
+
+
 %triggerin -- %{name} < 3.0.5
 if [ -f /var/lib/openssl/certs/imapd.pem ]; then
        echo
@@ -317,6 +254,12 @@ if [ $TLS_CACHEFILE = "/var/couriersslcache" ]; then
        sed -i s/^TLS_CACHEFILE=.*/"TLS_CACHEFILE=\/var\/spool\/courier-imap\/couriersslcache"/ %{_sysconfdir}/imapd-ssl
 fi
 
+%triggerin -n %{name}-common -- %{name}-userdb
+echo
+echo courier-imap-userdb is obsolete
+echo install courier-authlib-userdb package
+echo
+
 %triggerin -n %{name}-common -- %{name}-common < 3.0.5
 /sbin/chkconfig --del authdaemon
 if [ -f /var/lock/subsys/authdaemon ]; then
@@ -335,6 +278,7 @@ echo
 
 %post pop3
 /sbin/chkconfig --add courier-pop3
+/sbin/chkconfig --add courier-pop3-ssl
 /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 stop >&2
@@ -345,12 +289,22 @@ else
        echo "Run \"/etc/rc.d/init.d/courier-pop3 start\" to start courier-pop3 daemon."
 fi
 
+if [ -f /var/lock/subsys/courier-pop3-ssl ]; then
+       /etc/rc.d/init.d/courier-pop3-ssl restart >&2
+else
+       echo "Run \"/etc/rc.d/init.d/courier-pop3-ssl start\" to start courier-pop3-ssl daemon."
+fi
+
 %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-pop3-ssl ]; then
+                /etc/rc.d/init.d/courier-pop3-ssl stop >&2
+        fi
+        /sbin/chkconfig --del courier-pop3-ssl
 fi
 
 %triggerin -n %{name}-pop3 -- %{name}-pop3 < 3.0.5
@@ -385,63 +339,21 @@ if [ $TLS_CACHEFILE = "/var/couriersslcache" ]; then
        sed -i s/^TLS_CACHEFILE=.*/"TLS_CACHEFILE=\/var\/spool\/courier-imap\/couriersslcache"/ %{_sysconfdir}/pop3d-ssl
 fi
 
-%post authldap
-if ps -A |grep -q authdaemond.lda; then
-       %{_libexecdir}/authlib/authdaemond stop
-       %{_libexecdir}/authlib/authdaemond start
-fi
-
-%postun authldap
-if [ -x %{_libexecdir}/authlib/authdaemond ]; then
-       if ps -A |grep -q authdaemond.lda; then
-               %{_libexecdir}/authlib/authdaemond stop;
-               %{_libexecdir}/authlib/authdaemond start;
-       fi
-fi
-
-%post authmysql
-if ps -A |grep -q authdaemond.mys; then
-       %{_libexecdir}/authlib/authdaemond stop
-       %{_libexecdir}/authlib/authdaemond start
-fi
-
-%postun authmysql
-if [ -x %{_libexecdir}/authlib/authdaemond ]; then
-       if ps -A |grep -q authdaemond.mys; then
-               %{_libexecdir}/authlib/authdaemond stop;
-               %{_libexecdir}/authlib/authdaemond start;
-       fi
-fi
-
-%post authpgsql
-if ps -A |grep -q authdaemond.pgs; then
-       %{_libexecdir}/authlib/authdaemond stop
-       %{_libexecdir}/authlib/authdaemond start
-fi
-
-%postun authpgsql
-if [ -x %{_libexecdir}/authlib/authdaemond ]; then
-       if ps -A |grep -q authdaemond.pgs; then
-               %{_libexecdir}/authlib/authdaemond stop;
-               %{_libexecdir}/authlib/authdaemond start;
-       fi
-fi
-
 %files
 %defattr(644,root,root,755)
 %doc maildir/README.sharedfolders.html
-%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) %{_sysconfdir}/imapd
-%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/imapd-ssl
-%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/imapd.cnf
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/imap
+%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) %{_sysconfdir}/imapd
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/imapd-ssl
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/imapd.cnf
 %attr(754,root,root) /etc/rc.d/init.d/courier-imap
+%attr(754,root,root) /etc/rc.d/init.d/courier-imap-ssl
 %attr(755,daemon,daemon) %dir %{_sysconfdir}/shared
 %attr(755,daemon,daemon) %dir %{_sysconfdir}/shared.tmp
 %attr(755,root,root) %{_bindir}/imapd
 %attr(755,root,root) %{_bindir}/maildiracl
 %attr(755,root,root) %{_bindir}/maildirkw
-%attr(755,root,root) %{_sbindir}/authenumerate
 %attr(755,root,root) %{_sbindir}/imaplogin
 %attr(755,root,root) %{_sbindir}/mkimapdcert
 %attr(755,root,root) %{_sbindir}/sharedindexinstall
@@ -455,40 +367,18 @@ fi
 %files common
 %defattr(644,root,root,755)
 %doc AUTHORS ChangeLog imap/BUGS INSTALL README*
-%attr(770,daemon,daemon) /var/lib/authdaemon
 %attr(750,root,root) %dir %{_sysconfdir}
 %attr(750,root,root) %dir %{_certsdir}
 %attr(770,daemon,daemon) %dir %{_localstatedir}
 %dir %{_libexecdir}
-%dir %{_libexecdir}/authlib
-%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/authdaemonrc
 %{_sysconfdir}/quotawarnmsg.example
 %attr(755,root,root) %{_bindir}/couriertls
-%attr(755,root,root) %{_libexecdir}/authlib/authdaemon
-%attr(755,root,root) %{_libexecdir}/authlib/authdaemond
-%attr(755,root,root) %{_libexecdir}/authlib/authdaemond.plain
 %attr(755,root,root) %{_libexecdir}/couriertcpd
 %attr(755,root,root) %{_libexecdir}/makedatprog
-%attr(755,root,root) %{_sbindir}/courierlogger
-%{_mandir}/man8/auth[cdsuv]*
-%{_mandir}/man8/authp[aw]*
-%{_mandir}/man7/authlib*
-%{_mandir}/man1/courierlogger*
 %{_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
-%{_mandir}/man8/makeuserdb*
-%{_mandir}/man8/userdb*
-%{_mandir}/man8/*pw2userdb*
-
 %files deliverquota
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/deliverquota
@@ -501,39 +391,16 @@ fi
 
 %files pop3
 %defattr(644,root,root,755)
-%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) %{_sysconfdir}/pop3d
-%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/pop3d-ssl
-%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/pop3d.cnf
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/pop3
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.pop3
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/pop3d
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/pop3d-ssl
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/pop3d.cnf
 %attr(754,root,root) /etc/rc.d/init.d/courier-pop3
+%attr(754,root,root) /etc/rc.d/init.d/courier-pop3-ssl
 %attr(755,root,root) %{_bindir}/pop3d
 %attr(755,root,root) %{_sbindir}/mkpop3dcert
 %attr(755,root,root) %{_sbindir}/pop3login
 %attr(755,root,root) %{_libexecdir}/pop3d.rc
 %attr(755,root,root) %{_libexecdir}/pop3d-ssl.rc
 %{_mandir}/man8/courierpop*
-
-%if %{with ldap}
-%files authldap
-%defattr(644,root,root,755)
-%attr(640,root,root) %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)
-%attr(640,root,root) %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)
-%attr(640,root,root) %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.059208 seconds and 4 git commands to generate.