]> git.pld-linux.org Git - packages/dspam.git/blobdiff - dspam.spec
- don't use Chi-Square with Bayesian
[packages/dspam.git] / dspam.spec
index c4cf44a105c2a6d2b061ac7e4f4b0021aa659a18..cf60cb21c829cd677a9b2d50dab391c9873cadea 100644 (file)
@@ -1,34 +1,63 @@
-# TODO: everything
+# NOTE about versioning:
+#  Stable Releases: 3.4.x, Development Releases: 3.5.x
+#  All odd-versioned minor releases are considered development
+#  releases, and all even-versioned minor releases are stable releases
+# - from http://www.nuclearelephant.com/projects/dspam/download.shtml
 #
-# Conditional build:
-%bcond_with    mysql   # enable MySQL storage driver (disable sqlite driver)
-%bcond_with    pgsql   # enable PostgreSQL storage driver (disable sqlite driver)
-%bcond_with    sqlite3 # enable SQLite3 storage driver (disable sqlite2 driver)
+# TODO:
+# - everything
+# - oracle driver
+# - missing /etc/dspam.conf for cron:
+#   /etc/cron.daily/dspam:
+#    2430: [6/28/2005 1:2:1] Unable to open file for reading: /etc/dspam.conf: No such file or directory
+#    2430: [6/28/2005 1:2:1] Unable to read dspam.conf
 #
+# Conditional build:
+%bcond_without mysql   # enable MySQL storage driver (disable sqlite/pgsql driver)
+%bcond_with    pgsql   # enable PostgreSQL storage driver (disable sqlite/mysql driver)
+%bcond_with    sqlite  # enable SQLite3 storage driver
+%bcond_with    daemon
+
+%if %{with mysql} && %{with pgsql}
+%undefine with_mysql
+%{warn:disabled mysql as mysql and pgsql aren't supported together (yet)
+}#'vim
+%endif
+
+%if %{with mysql} && %{with sqlite}
+%undefine with_mysql
+%{warn:disabled mysql as mysql and sqlite aren't supported together (yet)
+}#'vim
+%endif
+
+%if %{with pgsql} && %{with sqlite}
+%undefine with_sqlite
+%{warn:disabled sqlite as pgsql and sqlite aren't supported together (yet)
+}#'vim
+%endif
+
+
+%if %{with mysql} || %{with pgsql}
+%define        with_daemon 1
+%endif
+
 Summary:       A library and Mail Delivery Agent for Bayesian spam filtering
 Summary(pl):   Biblioteka i MDA do bayesowskiego filtrowania spamu
 Name:          dspam
-Version:       3.4.8
-Release:       0.1
+Version:       3.4.9
+Release:       0.2
 License:       GPL
 Group:         Applications/Mail
 Source0:       http://www.nuclearelephant.com/projects/dspam/sources/%{name}-%{version}.tar.gz
-# Source0-md5: b6930c31fe0940b8ad6d27324f8bab3e
+# Source0-md5: ef7ceba47e63edb02a59be3c36cf0f6f
+Source1:       %{name}.init
 URL:           http://www.nuclearelephant.com/projects/dspam/
-%if %{with mysql}
-BuildRequires: mysql-devel
-%else
-%if %{with pgsql}
-BuildRequires: postgresql-devel
-%else
-%if %{with sqlite3}
-BuildRequires: sqlite3-devel
-%else
-BuildRequires: sqlite-devel
-BuildRequires: sqlite-static
-%endif
-%endif
-%endif
+BuildRequires: autoconf
+BuildRequires: automake
+BuildRequires: libtool
+%{?with_mysql:BuildRequires:   mysql-devel}
+%{?with_pgsql:BuildRequires:   postgresql-devel}
+%{?with_sqlite:BuildRequires:  sqlite3-devel}
 BuildRequires: sed >= 4.0
 Buildroot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
@@ -70,6 +99,20 @@ DSPAM dzia
 z ka¿dym innym MTA obs³uguj±cym zewnêtrznego agenta MDA (postfiksem,
 qmailem itd.).
 
+%package client
+Summary:        dspam client
+Summary(pl):    Klient dspam
+Group:          Applications/Mail
+# to get the same dspam.conf when both installed
+Conflicts:     dspam > %{version}-%{release}
+Conflicts:     dspam < %{version}-%{release}
+
+%description client
+dspam client.
+
+%description -l pl client
+Klient dspam.
+
 %package libs
 Summary:       A library for Bayesian spam filtering
 Summary(pl):   Biblioteka do bayesowskiego filtrowania spamu
@@ -126,17 +169,18 @@ Statyczna biblioteka DSPAM.
 
 %prep
 %setup -q
-sed -i -e 's#-static##g' src/tools/Makefile*
+sed -i -e 's#\-static##g' src/Makefile* src/*/Makefile*
 
 %build
+%{__libtoolize}
+%{__aclocal} -I m4
+%{__autoconf}
+%{__automake}
 %configure \
+       %{?debug: --enable-debug --enable-bnr-debug --enable-verbose-debug} \
        --enable-trusted-user-security \
-       --enable-bayesian-dobly \
-       --enable-chained-tokens \
-       --enable-experimental \
        --enable-bias \
        --enable-large-scale \
-       --enable-delivery-to-stdout \
        --with-userdir=/var/lib/%{name} \
        --with-dspam-home=/var/lib/%{name} \
        --with-userdir-owner=none \
@@ -146,27 +190,25 @@ sed -i -e 's#-static##g' src/tools/Makefile*
        --with-signature-life=14 \
        --disable-dependency-tracking \
 %if %{with mysql}
+       --enable-neural-networking \
+       --enable-daemon \
        --enable-virtual-users \
        --with-storage-driver=mysql_drv \
        --with-mysql-includes=%{_includedir}/mysql \
        --with-mysql-libraries=%{_libdir}
-%else
+%endif
 %if %{with pgsql}
+       --enable-neural-networking \
+       --enable-daemon \
        --enable-virtual-users \
        --with-storage-driver=pgsql_drv \
        --with-pgsql-includes=%{_includedir}/postgresql \
        --with-pgsql-libraries=%{_libdir}
-%else
-%if %{with sqlite3}
+%endif
+%if %{with sqlite}
        --with-storage-driver=sqlite3_drv \
        --with-sqlite3-includes=%{_includedir} \
        --with-sqlite3-libraries=%{_libdir}
-%else
-       --with-storage-driver=sqlite_drv \
-       --with-sqlite-includes=%{_includedir} \
-       --with-sqlite-libraries=%{_libdir}
-%endif
-%endif
 %endif
 %{__make}
 
@@ -176,6 +218,9 @@ rm -rf $RPM_BUILD_ROOT
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT
 
+install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig}
+install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/dspam
+
 # install devel files
 install -d $RPM_BUILD_ROOT{%{_includedir}/%{name},/var/lib/%{name}}
 install src/*.h $RPM_BUILD_ROOT%{_includedir}/%{name}
@@ -234,6 +279,22 @@ DATABASE
 EOF
 %endif
 
+%post
+/sbin/chkconfig --add dspam
+if [ -f /var/lock/subsys/dspam ]; then
+       /etc/rc.d/init.d/dspam restart 1>&2
+else
+       echo "Run \"/etc/rc.d/init.d/dspam start\" to start dspam daemon."
+fi
+
+%preun
+if [ "$1" = "0" ]; then
+       if [ -f /var/lock/subsys/dspam ]; then
+               /etc/rc.d/init.d/dspam stop 1>&2
+       fi
+       /sbin/chkconfig --del dspam
+fi
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
@@ -252,7 +313,7 @@ rm -rf $RPM_BUILD_ROOT
 %doc doc/pgsql_drv.txt
 %doc src/tools.pgsql_drv/*.sql
 %endif
-%if %{!with mysql} && %{!with pgsql}
+%if %{without mysql} && %{without pgsql}
 %doc doc/sqlite_drv.txt
 %endif
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/dspam.conf
@@ -261,7 +322,6 @@ rm -rf $RPM_BUILD_ROOT
 %{?with_pgsql:%attr(640,root,mail) %config(noreplace) /var/lib/%{name}/pgsql.data}
 %attr(755,root,root) %config(noreplace) /etc/cron.daily/%{name}
 %attr(755,root,mail) %{_bindir}/%{name}
-%attr(755,root,mail) %{_bindir}/%{name}c
 %attr(755,root,mail) %{_bindir}/%{name}_logrotate
 %attr(755,root,root) %{_bindir}/%{name}_clean
 %attr(755,root,root) %{_bindir}/%{name}_corpus
@@ -275,6 +335,14 @@ rm -rf $RPM_BUILD_ROOT
 %{?with_pgsql:%attr(755,root,root) %{_bindir}/%{name}_pg2int8}
 %{_mandir}/man?/%{name}*
 
+%if %{with daemon}
+%attr(754,root,root) /etc/rc.d/init.d/dspam
+%files client
+%defattr(644,root,root,755)
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/dspam.conf
+%endif
+%attr(755,root,mail) %{_bindir}/%{name}c
+
 %files libs
 %defattr(644,root,root,755)
 %doc README CHANGELOG
This page took 0.086062 seconds and 4 git commands to generate.