]> git.pld-linux.org Git - packages/cyrus-imapd.git/blobdiff - cyrus-imapd.spec
- it uses net-snmp now
[packages/cyrus-imapd.git] / cyrus-imapd.spec
index e87f09688f88c74ffeaa07a1df0903c52de28c0b..cc53ef390154d6c26f9157f5efb17988fbc87c4c 100644 (file)
@@ -1,16 +1,14 @@
-# TODO:
-# - use net-snmp (it wants ucd-snmp)
 %include       /usr/lib/rpm/macros.perl
 Summary:       High-performance mail store with imap and pop3
 Summary(pl):   Wysoko wydajny serwer IMAP i POP3
 Summary(pt_BR):        Um servidor de mail de alto desempenho que suporta IMAP e POP3
 Name:          cyrus-imapd
-Version:       2.1.16
-Release:       0.1
+Version:       2.2.12
+Release:       4
 License:       BSD-like
 Group:         Networking/Daemons
 Source0:       ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/%{name}-%{version}.tar.gz
-# Source0-md5: cd09ca3faff90fd35f2142a5cca46da9
+# Source0-md5: 70b3bba526a8d36d3bb23a87d37e9188
 Source1:       cyrus-README
 Source2:       cyrus-procmailrc
 Source3:       cyrus-deliver-wrapper.c
@@ -22,28 +20,37 @@ Source9:    %{name}.pamd
 Source10:      %{name}-pop.pamd
 Source11:      %{name}.init
 Source12:      cyrus.conf
-Patch0:                %{name}-snmp.patch
-Patch1:                %{name}-mandir.patch
-Patch2:                %{name}-paths.patch
-Patch3:                %{name}-et.patch
+Patch0:                %{name}-et.patch
+Patch1:                %{name}-shared.patch
 URL:           http://andrew2.andrew.cmu.edu/cyrus/imapd/
-BuildRequires: autoconf
+BuildRequires: autoconf >= 2.54
 BuildRequires: automake
 BuildRequires: cyrus-sasl-devel >= 1.5.27
 BuildRequires: db-devel >= 4.1.25
 BuildRequires: flex
 BuildRequires: libcom_err-devel >= 1.21
-BuildRequires: openssl-devel >= 0.9.7c
+BuildRequires: libtool
+BuildRequires: net-snmp-devel
+BuildRequires: openssl-devel >= 0.9.7d
 BuildRequires: perl-devel >= 1:5.8.0
-#BuildRequires:        ucd-snmp-devel >= 4.2.6
+BuildRequires: rpm-perlprov
+BuildRequires: rpmbuild(macros) >= 1.202
 PreReq:                rc-scripts
+Requires(pre): /bin/id
 Requires(pre): /usr/sbin/useradd
 Requires(postun):      /usr/sbin/userdel
 Requires(post,preun):  /sbin/chkconfig
-Requires:      pam >= 0.77.3
+Requires:      %{name}-libs = %{version}-%{release}
+# needed by scripts from %{_bindir}
+Requires:      perl-%{name} = %{version}-%{release}
+Requires:      pam >= 0.79.0
 Provides:      imapdaemon
 Provides:      pop3daemon
-BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+Provides:      user(cyrus)
+Obsoletes:     imap
+Obsoletes:     imapd
+Obsoletes:     imapdaemon
+Obsoletes:     pop3daemon
 Conflicts:     courier-imap
 Conflicts:     courier-imap-common
 Conflicts:     courier-imap-pop3
@@ -55,12 +62,9 @@ Conflicts:   qpopper
 Conflicts:     qpopper6
 Conflicts:     solid-pop3d
 Conflicts:     tpop3d
-Obsoletes:     imapd
-Obsoletes:     imap
-Obsoletes:     pop3daemon
-Obsoletes:     imapdaemon
+BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
-%define                _libexecdir     %{_prefix}/lib/cyrus
+%define                _libexecdir     %{_libdir}/cyrus
 
 %description
 The Cyrus IMAP server is a scalable enterprise mail system designed
@@ -84,8 +88,8 @@ Pe
 ¶rodowiska poczty i elektronicznej tablicy og³oszeniowej na kilku
 serwerach. Tym siê ró¿ni od innych implementacji serwerów IMAP, ¿e
 jest uruchamiany na "opieczêtowanych" serwerach, na które w normalnych
-waunkach u¿ytkownicy nie mog± siê zalogowaæ. Baza danych skrzynek
-pocztowych jest pzrechowywana w tych czê¶ciach systemu plików, które
+warunkach u¿ytkownicy nie mog± siê zalogowaæ. Baza danych skrzynek
+pocztowych jest przechowywana w tych czê¶ciach systemu plików, które
 s± dostêpne jedynie dla systemu IMAP Cyrus. Wszelki dostêp do poczty
 ma miejsce poprzez oprogramowanie wykorzystuj±ce protoko³y IMAP, POP3
 oraz KPOP.
@@ -104,25 +108,36 @@ arquivos que s
 usuários aos mails se dá através de software usando os protocolos
 IMAP, POP3 ou KPOP.
 
+%package libs
+Summary:       Shared cyrus-imapd libraries
+Summary(pl):   Wspó³dzielone biblioteki cyrus-imapd
+Group:         Libraries
+
+%description libs
+Shared cyrus-imapd libraries.
+
+%description libs -l pl
+Wspó³dzielone biblioteki cyrus-imapd.
+
 %package devel
-Summary:       Libraries and include files for developing with cyrus-imapd
-Summary(pl):   Pliki potrzebne do programowania z u¿yciem cyrus-imapd
+Summary:       Header files for developing with cyrus-imapd libraries
+Summary(pl):   Pliki nag³ówkowe do programowania z u¿yciem bibliotek cyrus-imapd
 Group:         Development/Libraries
-Requires:      %{name} = %{version}
+Requires:      %{name}-libs = %{version}-%{release}
 
 %description devel
-This package provides the necessary development libraries and include
-files to allow you to develop with cyrus-imapd.
+This package provides the necessary header files files to allow you to
+develop with cyrus-imapd libraries.
 
 %description devel -l pl
-Ten pakiet zawiera biblioteki oraz pliki nag³ówkowe niezbêdne do
-tworzenia oprogramowania z wykorzystaniem cyrus-imapd.
+Ten pakiet zawiera pliki nag³ówkowe niezbêdne do tworzenia
+oprogramowania z wykorzystaniem bibliotek cyrus-imapd.
 
 %package static
 Summary:       Static cyrus-imapd libraries
 Summary(pl):   Biblioteki statyczne cyrus-imapd
 Group:         Development/Libraries
-Requires:      %{name}-devel = %{version}
+Requires:      %{name}-devel = %{version}-%{release}
 
 %description static
 Static cyrus-imapd libraries
@@ -134,7 +149,7 @@ Biblioteki statyczne cyrus-imapd
 Summary:       Perl interface to cyrus-imapd library
 Summary(pl):   Perlowy interfejs do biblioteki cyrus-imapd
 Group:         Development/Languages/Perl
-Requires:      %{name} = %{version}
+Requires:      %{name}-libs = %{version}-%{release}
 
 %description -n perl-%{name}
 Perl interface to cyrus-imapd library.
@@ -146,30 +161,31 @@ Perlowy interfejs do biblioteki cyrus-imapd.
 %setup -q
 %patch0 -p1
 %patch1 -p1
-%patch2 -p1
-%patch3 -p1
+
+rm -rf autom4te.cache
 
 %build
 cd makedepend
-rm -f aclocal.m4
 %{__aclocal}
 %{__autoconf}
 %configure
 %{__make}
 PATH=$PATH:`pwd`; export PATH
 cd ..
-rm -f aclocal.m4
+%{__libtoolize}
 %{__aclocal} -I cmulocal
 %{__autoheader}
 %{__autoconf}
-cp -f %{_datadir}/automake/config.*   .
+cp -f %{_datadir}/automake/config.* .
 cp -f %{_datadir}/automake/install-sh .
 %configure \
        --with-auth=unix \
        --without-libwrap \
        --with-cyrus-prefix=%{_libexecdir} \
+       --with-service-path=%{_libexecdir} \
        --with-com_err=/usr \
-       --with-perl=%{__perl}
+       --with-perl=%{__perl} \
+       --enable-nntp
 %{__make} \
        INSTALLDIRS=vendor
 
@@ -194,7 +210,6 @@ touch $RPM_BUILD_ROOT/var/lib/imap/mailboxes \
        DESTDIR=$RPM_BUILD_ROOT \
        CYRUS_USER="`id -u`" \
        CYRUS_GROUP="`id -g`" \
-       mandir=%{_mandir} \
        INSTALLDIRS=vendor
 
 install deliver-wrapper $RPM_BUILD_ROOT%{_libexecdir}/deliver-wrapper
@@ -207,10 +222,8 @@ install %{SOURCE10}        $RPM_BUILD_ROOT/etc/pam.d/pop
 install %{SOURCE11}    $RPM_BUILD_ROOT/etc/rc.d/init.d/cyrus-imapd
 install %{SOURCE12}    $RPM_BUILD_ROOT%{_sysconfdir}/cyrus.conf
 
-mv -f $RPM_BUILD_ROOT%{_libexecdir}/bin/*      $RPM_BUILD_ROOT%{_libexecdir}
 mv -f $RPM_BUILD_ROOT%{_libexecdir}/master     $RPM_BUILD_ROOT%{_libexecdir}/cyrus-master
 mv -f $RPM_BUILD_ROOT%{_mandir}/man8/master.8  $RPM_BUILD_ROOT%{_mandir}/man8/cyrus-master.8
-rm -rf $RPM_BUILD_ROOT%{_libexecdir}/bin
 rm -rf $RPM_BUILD_ROOT%{_mandir}/man8/idled.8
 
 touch $RPM_BUILD_ROOT/etc/security/blacklist.{imap,pop}
@@ -219,19 +232,17 @@ find $RPM_BUILD_ROOT%{perl_vendorarch} -name .packlist -exec rm {} \;
 
 # make hashed dirs
 for i in `%{__perl} -le 'print for "a".."z"'`; do
-       mkdir -p -m 0755 $RPM_BUILD_ROOT%{_var}/lib/imap/user/$i
-       mkdir -p -m 0755 $RPM_BUILD_ROOT%{_var}/lib/imap/quota/$i
-       mkdir -p -m 0755 $RPM_BUILD_ROOT%{_var}/lib/imap/sieve/$i
-       mkdir -p -m 0755 $RPM_BUILD_ROOT%{_var}/spool/imap/$i
+       install -d -m 0755 $RPM_BUILD_ROOT%{_var}/lib/imap/user/$i
+       install -d -m 0755 $RPM_BUILD_ROOT%{_var}/lib/imap/quota/$i
+       install -d -m 0755 $RPM_BUILD_ROOT%{_var}/lib/imap/sieve/$i
+       install -d -m 0755 $RPM_BUILD_ROOT%{_var}/spool/imap/$i
 done
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %pre
-if [ -z "`id -u cyrus 2>/dev/null`" ]; then
-       /usr/sbin/useradd -u 76 -r -d /var/spool/imap -s /bin/false -c "Cyrus User" -g mail cyrus 1>&2
-fi
+%useradd -u 76 -d /var/spool/imap -s /bin/false -c "Cyrus User" -g mail cyrus
 
 %post
 /sbin/chkconfig --add cyrus-imapd
@@ -239,8 +250,8 @@ touch /var/lib/imap/faillog
 chown cyrus:mail /var/lib/imap/faillog
 chmod 640 /var/lib/imap/faillog
 cd /var/lib/imap
-chattr +S . user quota user/* quota/* 2>/dev/null
-chattr +S /var/spool/imap /var/spool/imap/* 2>/dev/null
+chattr +S . user quota user/* quota/* 2>/dev/null ||:
+chattr +S /var/spool/imap /var/spool/imap/* 2>/dev/null ||:
 if [ -f /var/lock/subsys/cyrus-imapd ]; then
        /etc/rc.d/init.d/cyrus-imapd restart 1>&2
 else
@@ -257,44 +268,52 @@ fi
 
 %postun
 if [ "$1" = "0" ]; then
-       /usr/sbin/userdel cyrus
+       %userremove cyrus
 fi
 
+%post  libs -p /sbin/ldconfig
+%postun        libs -p /sbin/ldconfig
+
 %files
 %defattr(644,root,root,755)
 %doc cyrus-README cyrus-procmailrc cyrus-user-procmailrc.template
 %doc cyrus-imapd-procmail+cyrus.mc COPYRIGHT doc/*.html tools
-%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/*.conf
-%attr(640,root,root) /etc/logrotate.d/cyrus-imapd
-%attr(440,cyrus,root) %config(noreplace) %verify(not size mtime md5) /etc/pam.d/*
-%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/security/blacklist.*
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.conf
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/cyrus-imapd
+%attr(440,cyrus,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/*
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.*
 %attr(754,root,root) /etc/rc.d/init.d/cyrus-imapd
 %attr(640,cyrus,mail) %ghost /var/lib/imap/faillog
 %attr(755,root,root) %{_bindir}/*
 %attr(4754,cyrus,mail) %{_libexecdir}/deliver
 %attr(2755,cyrus,mail) %{_libexecdir}/deliver-wrapper
 %attr(755,root,root) %{_libexecdir}/arbitron
+%attr(755,root,root) %{_libexecdir}/chk_cyrus
 %attr(755,root,root) %{_libexecdir}/ctl_deliver
 %attr(755,root,root) %{_libexecdir}/ctl_mboxlist
 %attr(755,root,root) %{_libexecdir}/ctl_cyrusdb
 %attr(755,root,root) %{_libexecdir}/cvt_cyrusdb
-%attr(755,root,root) %{_libexecdir}/chk_cyrus
-%attr(755,root,root) %{_libexecdir}/notifyd
-%attr(755,root,root) %{_libexecdir}/squatter
-%attr(755,root,root) %{_libexecdir}/tls_prune
+%attr(755,root,root) %{_libexecdir}/cyr_expire
 %attr(755,root,root) %{_libexecdir}/cyrdump
-%attr(755,root,root) %{_libexecdir}/feedcyrus
+%attr(755,root,root) %{_libexecdir}/cyrus-master
 %attr(755,root,root) %{_libexecdir}/fud
 %attr(755,root,root) %{_libexecdir}/imapd
 %attr(755,root,root) %{_libexecdir}/ipurge
 %attr(755,root,root) %{_libexecdir}/lmtpd
-%attr(755,root,root) %{_libexecdir}/cyrus-master
 %attr(755,root,root) %{_libexecdir}/mbexamine
 %attr(755,root,root) %{_libexecdir}/mbpath
+%attr(755,root,root) %{_libexecdir}/notifyd
 %attr(755,root,root) %{_libexecdir}/pop3d
+%attr(755,root,root) %{_libexecdir}/pop3proxyd
 %attr(755,root,root) %{_libexecdir}/quota
 %attr(755,root,root) %{_libexecdir}/reconstruct
+%attr(755,root,root) %{_libexecdir}/sievec
+%attr(755,root,root) %{_libexecdir}/smmapd
+%attr(755,root,root) %{_libexecdir}/squatter
 %attr(755,root,root) %{_libexecdir}/timsieved
+%attr(755,root,root) %{_libexecdir}/tls_prune
+%attr(755,root,root) %{_libexecdir}/fetchnews
+%attr(755,root,root) %{_libexecdir}/nntpd
 
 %attr(750,cyrus,mail) /var/spool/imap
 %attr(750,cyrus,mail) %dir /var/lib/imap
@@ -308,12 +327,18 @@ fi
 %attr(750,cyrus,mail) /var/lib/imap/proc
 %attr(750,cyrus,mail) /var/lib/imap/db
 %attr(750,cyrus,mail) /var/lib/imap/socket
-%attr(750,cyrus,mail) %config(noreplace) %verify(not size md5 mtime) /var/lib/imap/mailboxes
+%attr(750,cyrus,mail) %config(noreplace) %verify(not md5 mtime size) /var/lib/imap/mailboxes
 
 %{_mandir}/man*/*
 
+%files libs
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/lib*.so.*.*.*
+
 %files devel
 %defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/lib*.so
+%{_libdir}/lib*.la
 %{_includedir}/cyrus
 
 %files static
This page took 0.2123 seconds and 4 git commands to generate.