]> TLD Linux GIT Repositories - packages/spamassassin.git/blobdiff - spamassassin.spec
- updated to 4.0.1
[packages/spamassassin.git] / spamassassin.spec
index a71316032d9c699934ba798eb03af900c0353034..4407fbdd576491e00a1af25e1d3c1ab0b129ed85 100644 (file)
@@ -8,16 +8,15 @@
 %define                pdir    Mail
 %define                pnam    SpamAssassin
 %define                sa_version %(printf %d.%03d%03d $(echo %{version} | tr '.' ' '))
-%include       /usr/lib/rpm/macros.perl
 Summary:       A spam filter for email which can be invoked from mail delivery agents
 Summary(pl.UTF-8):     Filtr antyspamowy, przeznaczony dla programów dostarczających pocztę (MDA)
 Name:          spamassassin
-Version:       3.4.1
-Release:       8
+Version:       4.0.1
+Release:       1
 License:       Apache v2.0
 Group:         Applications/Mail
-Source0:       http://ftp.ps.pl/pub/apache//spamassassin/source/%{pdir}-%{pnam}-%{version}.tar.bz2
-# Source0-md5: 0db5d27d7b782ff5eadee12b95eae84c
+Source0:       https://dlcdn.apache.org//spamassassin/source/%{pdir}-%{pnam}-%{version}.tar.bz2
+# Source0-md5: b42eaf00f2f5a013813ae051ab2c63b6
 Source1:       %{name}.sysconfig
 Source2:       %{name}-spamd.init
 Source3:       %{name}-default.rc
@@ -25,17 +24,7 @@ Source4:     %{name}-spamc.rc
 Source5:       sa-update.sh
 Source6:       sa-update.cron
 Source7:       spamassassin-official.conf
-Source8:       sought.conf
-Source9:       cronjob-sa-update.service
-Source10:      cronjob-sa-update.timer
-Patch0:                spamassassin-3.4.1-netdns.patch
-Patch1:                %{name}-perl-fix.patch
-Patch2:                bug_771408_perl_version
-Patch3:                bug_828552-openssl-1.1.0
-Patch4:                bug-869408-unescaped-brace-in-regex.patch
-Patch5:                disable_sslv3
-Patch6:                dkim_subdomains
-Patch7:                fix-uninitialized-concat
+Patch0:                config-dir.patch
 URL:           http://spamassassin.apache.org/
 BuildRequires: openssl-devel >= 0.9.7d
 BuildRequires: perl(ExtUtils::MakeMaker) >= 6.16
@@ -43,6 +32,7 @@ BuildRequires:        perl-Archive-Tar
 BuildRequires: perl-DBI
 BuildRequires: perl-DB_File
 BuildRequires: perl-Digest-SHA1 >= 2.10
+BuildRequires: perl-Geo-IP
 BuildRequires: perl-HTML-Parser >= 3
 BuildRequires: perl-IO-Socket-INET6 >= 2.51
 BuildRequires: perl-IO-Socket-SSL
@@ -51,8 +41,13 @@ BuildRequires:       perl-IP-Country
 BuildRequires: perl-Mail-SPF-Query
 BuildRequires: perl-Net-DNS >= 0.65-3
 BuildRequires: perl-Net-Ident
+BuildRequires: perl-Net-LibIDN
+BuildRequires: perl-Net-LibIDN2
+BuildRequires: perl-Net-Patricia
 BuildRequires: perl-NetAddr-IP >= 4.000
+BuildRequires: perl-Perl-Critic-Policy-Perlsecret
 #BuildRequires:        perl-Razor2
+BuildRequires: perl-Text-Diff
 BuildRequires: perl-devel >= 1:5.8.0
 BuildRequires: perl-libwww
 BuildRequires: re2c
@@ -69,6 +64,7 @@ BuildRequires:        perl-Mail-DomainKeys
 BuildRequires: perl-Mail-SPF
 BuildRequires: perl-MailTools
 BuildRequires: perl-Razor > 2.61
+BuildRequires:  tesseract-data-lang-en
 %endif
 Requires:      perl-Mail-SpamAssassin = %{version}-%{release}
 Obsoletes:     SpamAssassin
@@ -90,7 +86,7 @@ considerably speeds processing of mail.
 
 To enable spamassassin, if you are receiving mail locally, simply add
 this line to your ~/.procmailrc:
-INCLUDERC=/etc/mail/spamassassin/spamassassin-default.rc
+INCLUDERC=/etc/spamassassin/spamassassin-default.rc
 
 To filter spam for all users, add that line to /etc/procmailrc
 (creating if necessary).
@@ -108,7 +104,7 @@ przyspieszy proces przetwarzania poczty.
 
 Aby uruchomić spamassassina dla lokalnie przychodzącej poczty,
 wystarczy dodać do własnego ~/.procmailrc linię:
-INCLUDERC=/etc/mail/spamassassin/spamassassin-default.rc
+INCLUDERC=/etc/spamassassin/spamassassin-default.rc
 
 Aby filtrować spam dla wszystkich użytkowników, należy dodać tę linię
 do pliku /etc/procmailrc (tworząc go w razie potrzeby).
@@ -121,9 +117,9 @@ Requires(post,preun):       /sbin/chkconfig
 Requires:      perl-Mail-SpamAssassin = %{version}-%{release}
 Requires:      rc-scripts
 Suggests:      perl-Apache-Test
+Suggests:      perl-IO-Socket-INET6
 Suggests:      perl-IO-Socket-IP
 Suggests:      perl-IO-Socket-SSL
-Suggests:      perl-IO-Socket-INET6
 Suggests:      perl-Net-Ident
 
 %description spamd
@@ -157,7 +153,7 @@ whole spamassassin program.
 
 To enable spamassassin, if you are receiving mail locally, simply add
 this line to your ~/.procmailrc:
-INCLUDERC=/etc/mail/spamassassin/spamassassin-spamc.rc
+INCLUDERC=/etc/spamassassin/spamassassin-spamc.rc
 
 To filter spam for all users, add that line to /etc/procmailrc
 (creating if necessary).
@@ -171,7 +167,7 @@ dzięki czemu powinien działać szybciej niż sam spamassassin.
 
 Aby uruchomić spamassassina dla lokalnie przychodzącej poczty,
 wystarczy dodać do własnego ~/.procmailrc linię:
-INCLUDERC=/etc/mail/spamassassin/spamassassin-spamc.rc
+INCLUDERC=/etc/spamassassin/spamassassin-spamc.rc
 
 Aby filtrować spam dla wszystkich użytkowników, należy dodać tę linię
 do pliku /etc/procmailrc (tworząc go w razie potrzeby).
@@ -183,9 +179,9 @@ Group:              Applications/Mail
 Requires:      gcc
 Requires:      glibc-devel
 Requires:      make
-Requires:      perl(ExtUtils::MakeMaker)
 Requires:      perl-Mail-SpamAssassin = %{version}-%{release}
 Requires:      perl-devel
+Requires:      perl-devel
 Requires:      re2c >= 0.10
 
 %description compile
@@ -271,19 +267,6 @@ aplikacji do czytania poczty.
 %prep
 %setup -q -n %{pdir}-%{pnam}-%{version}
 %patch0 -p1
-%patch1 -p1
-%patch2 -p1
-%patch3 -p1
-%patch4 -p1
-%patch5 -p1
-%patch6 -p1
-%patch7 -p1
-
-# disable broken test
-%{__mv} t/sa_compile.t{,.disabled}
-
-# this test needs network, does not work on builders
-%{__mv} t/dnsbl_subtests.t{,.disabled}
 
 %build
 # for spamc/configure
@@ -292,6 +275,7 @@ export CFLAGS="%{rpmcflags}"
        INSTALLDIRS=vendor \
        PREFIX=%{_prefix} \
        SYSCONFDIR=%{_sysconfdir} \
+       CONFDIR=%{_sysconfdir}/spamassassin \
        DATADIR=%{_datadir}/spamassassin \
        ENABLE_SSL=yes \
        CONTACT_ADDRESS="postmaster@localhost" \
@@ -301,38 +285,32 @@ export CFLAGS="%{rpmcflags}"
        CC="%{__cc}" \
        OPTIMIZE="%{rpmcflags}"
 
-%{__sed} -e "s,@@LOCAL_STATE_DIR@@,$(pwd)," sa-compile.raw > sa-compile.pl
-%{__perl} -T sa-compile.pl --siteconfigpath=rules
-
 %{?with_tests:%{__make} -j1 TEST_VERBOSE=1 test}
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{/etc/{cron.d,sysconfig,rc.d/init.d},%{_sysconfdir}/mail/spamassassin/channel.d,%{systemdunitdir}}
+install -d $RPM_BUILD_ROOT{/etc/{cron.d,sysconfig,rc.d/init.d},%{_sysconfdir}/spamassassin/channel.d}
 
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT
 
 install %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/spamd
 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/spamd
-install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/mail/spamassassin
-install %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/mail/spamassassin
+install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/spamassassin
+install %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/spamassassin
 install %{SOURCE5} $RPM_BUILD_ROOT%{_datadir}/spamassassin/sa-update.cron
 install %{SOURCE6} $RPM_BUILD_ROOT/etc/cron.d/sa-update
-install %{SOURCE7} $RPM_BUILD_ROOT%{_sysconfdir}/mail/spamassassin/channel.d
-install %{SOURCE8} $RPM_BUILD_ROOT%{_sysconfdir}/mail/spamassassin/channel.d
-install %{SOURCE9} $RPM_BUILD_ROOT%{systemdunitdir}/cronjob-sa-update.service
-install %{SOURCE10} $RPM_BUILD_ROOT%{systemdunitdir}/cronjob-sa-update.timer
+install %{SOURCE7} $RPM_BUILD_ROOT%{_sysconfdir}/spamassassin/channel.d
 
 # sa-update, sa-compile
 install -d $RPM_BUILD_ROOT/var/lib/spamassassin/{%{sa_version},compiled/%{sa_version}}
-install -d $RPM_BUILD_ROOT%{_sysconfdir}/mail/spamassassin/sa-update-keys
-touch $RPM_BUILD_ROOT%{_sysconfdir}/mail/spamassassin/sa-update-keys/{pubring,secring,trustdb}.gpg
+install -d $RPM_BUILD_ROOT%{_sysconfdir}/spamassassin/sa-update-keys
+touch $RPM_BUILD_ROOT%{_sysconfdir}/spamassassin/sa-update-keys/{pubring,secring,trustdb}.gpg
 
 rm -f $RPM_BUILD_ROOT{%{perl_archlib}/perllocal.pod,%{perl_vendorarch}/auto/Mail/SpamAssassin/.packlist,%{_mandir}/man3/spamassassin-run.*}
 
-cat > $RPM_BUILD_ROOT%{_sysconfdir}/mail/spamassassin/channels << 'EOF'
-# Use %{_sysconfdir}/mail/spamassassin/channel.d/*.conf for new channels
+cat > $RPM_BUILD_ROOT%{_sysconfdir}/spamassassin/channels << 'EOF'
+# Use %{_sysconfdir}/spamassassin/channel.d/*.conf for new channels
 EOF
 
 %clean
@@ -348,6 +326,41 @@ if [ "$1" = "0" ]; then
        /sbin/chkconfig --del spamd
 fi
 
+%triggerun -n perl-Mail-SpamAssassin -- perl-Mail-SpamAssassin < 3.4.2-2
+if [ $1 -le 1 ]; then
+       exit 0
+fi
+[ -d /etc/spamassassin ] || mkdir /etc/spamassassin 2>/dev/null || :
+for f in /etc/mail/spamassassin/*.{cf,pre}; do
+       f=${f##*/}
+       [ -f "/etc/mail/spamassassin/$f" ] && mv "/etc/mail/spamassassin/$f" "/etc/spamassassin/$f" 2>/dev/null || :
+done
+[ -n "$(find /etc/mail/spamassassin -type d -empty 2>/dev/null)" ] && rmdir /etc/mail/spamassassin 2>/dev/null || :
+[ -n "$(find /etc/mail -type d -empty 2>/dev/null)" ] && rmdir /etc/mail 2>/dev/null || :
+
+%triggerun -- %{name} < 3.4.2-2
+if [ $1 -le 1 ]; then
+       exit 0
+fi
+[ -d /etc/spamassassin ] || mkdir /etc/spamassassin 2>/dev/null || :
+[ -f /etc/mail/spamassassin/spamassassin-default.rc ] && mv /etc/mail/spamassassin/spamassassin-default.rc /etc/spamassassin 2>/dev/null || :
+[ -n "$(find /etc/mail/spamassassin -type d -empty 2>/dev/null)" ] && rmdir /etc/mail/spamassassin 2>/dev/null || :
+[ -n "$(find /etc/mail -type d -empty 2>/dev/null)" ] && rmdir /etc/mail 2>/dev/null || :
+
+%triggerun spamc -- spamassassin-spamc < 3.4.2-2
+if [ $1 -le 1 ]; then
+       exit 0
+fi
+[ -d /etc/spamassassin ] || mkdir /etc/spamassassin 2>/dev/null || :
+[ -f /etc/mail/spamassassin/spamassassin-spamc.rc ] && mv /etc/mail/spamassassin/spamassassin-spamc.rc /etc/spamassassin 2>/dev/null || :
+[ -n "$(find /etc/mail/spamassassin -type d -empty 2>/dev/null)" ] && rmdir /etc/mail/spamassassin 2>/dev/null || :
+[ -n "$(find /etc/mail -type d -empty 2>/dev/null)" ] && rmdir /etc/mail 2>/dev/null || :
+
+%triggerpostun -n perl-Mail-SpamAssassin -- perl-Mail-SpamAssassin < 3.4.2-2
+echo
+echo "Warning! Configuration has been migrated to /etc/spamassassin."
+echo
+
 %triggerpostun spamd -- spamassassin-spamd < 3.1.0-5.3
 # temp hack, should we care of the dead link?
 ln -s spamd /etc/rc.d/init.d/spamassassin
@@ -361,7 +374,7 @@ fi
 %defattr(644,root,root,755)
 %doc CREDITS Changes INSTALL README TRADEMARK UPGRADE USAGE
 %doc procmailrc.example sql/ ldap/
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/spamassassin/spamassassin-default.rc
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/spamassassin/spamassassin-default.rc
 %attr(755,root,root) %{_bindir}/sa-learn
 %attr(755,root,root) %{_bindir}/sa-awl
 %attr(755,root,root) %{_bindir}/spamassassin
@@ -369,6 +382,7 @@ fi
 
 # It's needed for help of spamassassin command.
 %{perl_vendorlib}/spamassassin-run.pod
+%{_mandir}/man1/sa-check_spamd.1*
 %{_mandir}/man1/sa-learn.1*
 %{_mandir}/man1/spamassassin.1*
 %{_mandir}/man1/spamassassin-run.1*
@@ -384,7 +398,7 @@ fi
 
 %files spamc
 %defattr(644,root,root,755)
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/spamassassin/spamassassin-spamc.rc
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/spamassassin/spamassassin-spamc.rc
 %attr(755,root,root) %{_bindir}/spamc
 %{_mandir}/man1/spamc.1*
 
@@ -397,28 +411,25 @@ fi
 
 %files update
 %defattr(644,root,root,755)
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/spamassassin/channels
-%dir %{_sysconfdir}/mail/spamassassin/channel.d
-%{_sysconfdir}/mail/spamassassin/channel.d/spamassassin-official.conf
-%{_sysconfdir}/mail/spamassassin/channel.d/sought.conf
-%attr(700,root,root) %dir %{_sysconfdir}/mail/spamassassin/sa-update-keys
-%attr(700,root,root) %ghost %{_sysconfdir}/mail/spamassassin/sa-update-keys/*
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/spamassassin/channels
+%dir %{_sysconfdir}/spamassassin/channel.d
+%{_sysconfdir}/spamassassin/channel.d/spamassassin-official.conf
+%attr(700,root,root) %dir %{_sysconfdir}/spamassassin/sa-update-keys
+%attr(700,root,root) %ghost %{_sysconfdir}/spamassassin/sa-update-keys/*
 %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/sa-update
 %attr(755,root,root) %{_bindir}/sa-update
 %attr(755,root,root) %{_datadir}/spamassassin/sa-update.cron
 %{_datadir}/spamassassin/sa-update-pubkey.txt
 %dir /var/lib/spamassassin/%{sa_version}
 %{_mandir}/man1/sa-update.1*
-%{systemdunitdir}/cronjob-sa-update.service
-%{systemdunitdir}/cronjob-sa-update.timer
 
 %files -n perl-Mail-SpamAssassin
 %defattr(644,root,root,755)
 %doc sample-nonspam.txt sample-spam.txt
-%dir %{_sysconfdir}/mail/spamassassin
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/spamassassin/*.pre
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/spamassassin/*.cf
-%exclude %{_sysconfdir}/mail/spamassassin/sa-update-keys
+%dir %{_sysconfdir}/spamassassin
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/spamassassin/*.pre
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/spamassassin/*.cf
+%exclude %{_sysconfdir}/spamassassin/sa-update-keys
 %dir %{_datadir}/spamassassin
 %config(noreplace) %{_datadir}/spamassassin/languages
 %config(noreplace) %{_datadir}/spamassassin/user_prefs.template