%define name dspam %define version 2.8.1 %define release 2mdk %define major 4 %define libname %mklibname %{name} %{major} Summary: A library and Mail Delivery Agent for Bayesian spam filtering Name: %{name} Version: %{version} Release: %{release} License: GPL Group: Networking/Mail Source0: %{name}-%{version}.tar.bz2 Source1: dspam-2.8-cron.weekly.bz2 Patch0: dspam-2.8-shared_tools.patch.bz2 URL: http://www.networkdweebs.com/software/dspam/ BuildRequires: MySQL-devel Requires: maildrop PreReq: %{libname} = %{version}-%{release} Buildroot: %{_tmppath}/%{name}-%{version}-root %description DSPAM (as in De-Spam) is an open-source project to create a new kind of anti-spam mechanism, and is currently effective as both a server-side agent for UNIX email servers and a developer's library for mail clients, other anti-spam tools, and similar projects requiring drop-in spam filtering. The DSPAM agent masquerades as the email server's local delivery agent and filters/learns spams using an advanced Bayesian statistical approach (based on Baye's theorem of combined probabilities) which provides an administratively maintenance-free, easy-learning Anti-Spam service custom tailored to each individual user's behavior. Advanced because on top of standard Bayesian filtering is also incorporated the use of Chained Tokens, de-obfuscation, and other enhancements. DSPAM works great with Sendmail and Exim, and should work well with any other MTA that supports an external local delivery agent (postfix, qmail, etc.) %package -n %{libname} Summary: A library and Mail Delivery Agent for Bayesian spam filtering Group: System/Libraries %description -n %{libname} DSPAM (as in De-Spam) is an open-source project to create a new kind of anti-spam mechanism, and is currently effective as both a server-side agent for UNIX email servers and a developer's library for mail clients, other anti-spam tools, and similar projects requiring drop-in spam filtering. The DSPAM agent masquerades as the email server's local delivery agent and filters/learns spams using an advanced Bayesian statistical approach (based on Baye's theorem of combined probabilities) which provides an administratively maintenance-free, easy-learning Anti-Spam service custom tailored to each individual user's behavior. Advanced because on top of standard Bayesian filtering is also incorporated the use of Chained Tokens, de-obfuscation, and other enhancements. DSPAM works great with Sendmail and Exim, and should work well with any other MTA that supports an external local delivery agent (postfix, qmail, etc.) %package -n %{libname}-devel Summary: Development library and header files for the %{name} library Group: Development/C Requires: %{libname} = %{version}-%{release} Provides: %{name}-devel lib%{name}-devel Obsoletes: %{name}-devel lib%{name}-devel %description -n %{libname}-devel DSPAM has had its core engine moved into a separate library, libdspam. This library can be used by developers to provide 'drop-in' spam filtering for their mail client applications, other anti-spam tools, or similar projects. %prep %setup -q %patch0 -p1 -b .shared_tools bzcat %{SOURCE1} > dspam-cron.weekly %build #./autogen.sh; aclocal #export WANT_AUTOCONF_2_5=1 #libtoolize --copy --force; aclocal; autoconf # wierd stuff... %define __libtoolize /bin/true %configure2_5x \ --with-userdir=%{_sysconfdir}/mail/%{name} \ --with-userdir-owner=none \ --with-userdir-group=none \ --with-dspam-owner=none \ --with-dspam-group=none \ --enable-signature-attachments \ --enable-delivery-to-stdout \ --with-local-delivery-agent=/usr/bin/maildrop \ --disable-dependency-tracking \ --enable-virtual-users \ --with-storage-driver=mysql_drv \ --with-mysql-includes=%{_includedir}/mysql \ --with-mysql-libraries=%{_libdir}/mysql %make %install [ "%{buildroot}" != "/" ] && rm -rf %{buildroot} %makeinstall_std # install devel files install -d %{buildroot}%{_includedir}/%{name} install -m0644 libdspam.h %{buildroot}%{_includedir}/%{name}/ install -m0644 libdspam_objects.h %{buildroot}%{_includedir}/%{name}/ install -m0644 lht.h %{buildroot}%{_includedir}/%{name}/ install -m0644 nodetree.h %{buildroot}%{_includedir}/%{name}/ # provide maintenance scripts install -d %{buildroot}%{_sysconfdir}/cron.daily install -d %{buildroot}%{_sysconfdir}/cron.weekly cat > %{buildroot}%{_sysconfdir}/cron.daily/%{name} <<EOF #!/bin/sh exec %{_bindir}/%{name}_clean 2>&1 > /dev/null EOF chmod 755 %{buildroot}%{_sysconfdir}/cron.daily/%{name} # fix prefix perl -pi -e "s|%{_prefix}/local|%{_prefix}|g" %{buildroot}%{_bindir}/%{name}_corpus perl -pi -e "s|%{_prefix}/local|%{_prefix}|g" cgi/dspam.cgi cp tools.mysql_drv/README README.mysql # fix purge stuff install -m0755 dspam-cron.weekly %{buildroot}%{_sysconfdir}/cron.weekly/%{name} # fix missing file cat > %{buildroot}%{_sysconfdir}/mail/%{name}/mysql.data <<EOF _UNCONFIGURED_ Note! This file can only contain 5 lines with the following values: HOSTNAME PORT USERNAME PASSWORD DATABASE EOF %post -n %{libname} -p /sbin/ldconfig %postun -n %{libname} -p /sbin/ldconfig %clean [ "%{buildroot}" != "/" ] && rm -rf %{buildroot} %files %defattr(-,root,root) %doc README CHANGE %doc cgi/base.css cgi/dspam.cgi cgi/logo.gif cgi/template.html %doc README.mysql %doc tools.mysql_drv/mysql_objects.sql %doc tools.mysql_drv/purge.sql %doc tools.mysql_drv/virtual_users.sql %dir %attr(0750,root,mail) %{_sysconfdir}/mail/%{name} %attr(0640,root,mail) %config(noreplace) %{_sysconfdir}/mail/%{name}/mysql.data %attr(0755,root,root) %config(noreplace) %{_sysconfdir}/cron.daily/%{name} %attr(0755,root,root) %config(noreplace) %{_sysconfdir}/cron.weekly/%{name} %attr(0755,root,mail) %{_bindir}/%{name} %attr(0755,root,root) %{_bindir}/%{name}_clean %attr(0755,root,root) %{_bindir}/%{name}_corpus %attr(0755,root,root) %{_bindir}/%{name}_crc %attr(0755,root,root) %{_bindir}/%{name}_dump %attr(0755,root,root) %{_bindir}/%{name}_genaliases %attr(0755,root,root) %{_bindir}/%{name}_stats %attr(0755,root,root) %{_bindir}/%{name}_merge %attr(0755,root,root) %{_bindir}/%{name}_2mysql %attr(0755,root,root) %{_bindir}/%{name}_ngstats %files -n %{libname} %defattr(-,root,root) %doc README CHANGE %attr(0755,root,root) %{_libdir}/*.so.* %files -n %{libname}-devel %defattr(-,root,root) %attr(0644,root,root) %{_includedir}/%{name}/*.h %attr(0755,root,root) %{_libdir}/*.so %attr(0644,root,root) %{_libdir}/*.la %attr(0755,root,root) %{_libdir}/*.a %changelog * Sat Dec 13 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.8.1-2mdk - use maildrop as lda * Fri Dec 12 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.8.1-1mdk - 2.8.1 * Sun Nov 30 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.8-2mdk - fix some forgotten stuff and added S1 * Fri Nov 28 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.8-1mdk - 2.8 - fix P0 - new %%{major} * Sun Nov 09 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.7.6.10-1mdk - 2.7.6.10 * Mon Oct 20 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.7.6.8-1mdk - 2.7.6.8 * Fri Oct 17 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.7.6.4-1mdk - 2.7.6.4 - fix P0 * Tue Oct 14 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.7.6-2mdk - use --enable-virtual-users * Sun Oct 12 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.7.6-1mdk - 2.7.6 - new P0 * Fri Oct 03 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.7.4-1mdk - use the mysql driver * Wed Oct 01 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.7.3-1mdk - 2.7.3 * Fri Sep 26 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.7.2-1mdk - 2.7.2 * Wed Sep 24 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.7.1-1mdk - 2.7.1 - drop P1, it's in there * Fri Sep 19 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.7.0-1mdk - 2.7.0 - fix P0 - 2 binaries is no more, may re-appear? - 1 new binary * Sun Sep 07 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.6.5.2-2mdk - fix major - fix requires and buildrequires * Sun Sep 07 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.6.5.2-1mdk - dspam-2.6.5.2 * Tue Sep 02 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.6.5-1mdk - dspam-2.6.5 * Sun Aug 31 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.6.5-0.5mdk - dspam-2.6.5-rc1 * Wed Aug 27 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.6.5-0.4mdk - dspam-2.6.5-beta-2 * Mon Aug 25 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.6.5-0.3mdk - dspam-2.6.5-beta-1 * Thu Aug 21 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.6.5-0.2mdk - dspam-2.6.5-alpha-3 * Sun Aug 17 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.6.5-0.1mdk - dspam-2.6.5-alpha-2 * Tue Aug 12 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.6.4-1mdk - 2.6.4 - misc spec file fixes * Fri Aug 01 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.6.3-1mdk - 2.6.3 * Tue Jul 29 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.6.2.02-1mdk - 2.6.2.02 * Tue Jul 15 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.6-1mdk - initial cooker contrib - added P0