Blame bogofilter.spec

Packit e8bc57
# To build with SQLite3, use:
Packit e8bc57
#
Packit e8bc57
# rpmbuild --define 'with_sqlite 1' --sign -bb bogofilter.spec
Packit e8bc57
Packit e8bc57
# To build -debuginfo RPMs on systems with RPM 4.2 or newer and recent
Packit e8bc57
# elfutils, add
Packit e8bc57
#
Packit e8bc57
# --define 'debugrpm 1'
Packit e8bc57
#
Packit e8bc57
# or place   %debugrpm 1   into your ~/.rpmmacros file.
Packit e8bc57
Packit e8bc57
%define	Name		bogofilter
Packit e8bc57
%define	Version		1.2.5
Packit e8bc57
%define	Release		1
Packit e8bc57
Packit e8bc57
%{?with_db42:   %define with_db42 1}
Packit e8bc57
%{!?with_db42:  %define with_db42 0}
Packit e8bc57
Packit e8bc57
%{?with_sqlite:  %define with_sqlite 1}
Packit e8bc57
%{!?with_sqlite: %define with_sqlite 0}
Packit e8bc57
Packit e8bc57
%if %{with_db42}
Packit e8bc57
%define DBFlag 1
Packit e8bc57
%define DBName -db42
Packit e8bc57
%endif
Packit e8bc57
Packit e8bc57
%if %{with_sqlite}
Packit e8bc57
%define DBFlag 1
Packit e8bc57
%define DBName -sqlite3
Packit e8bc57
%endif
Packit e8bc57
Packit e8bc57
%{!?DBFlag: %define DBFlag 0}
Packit e8bc57
%{!?bf_nameext: %define bf_nameext %{nil}}
Packit e8bc57
Packit e8bc57
Summary:	Fast anti-spam filtering by Bayesian statistical analysis
Packit e8bc57
%if ! %{DBFlag}
Packit e8bc57
Name:		%{Name}%{bf_nameext}
Packit e8bc57
%else
Packit e8bc57
Name:		%{Name}%{DBName}%{bf_nameext}
Packit e8bc57
%endif
Packit e8bc57
Version:	%{Version}
Packit e8bc57
Release:	%{Release}
Packit e8bc57
License:	GPL
Packit e8bc57
Group:		Networking/Mail
Packit e8bc57
URL:		http://bogofilter.sourceforge.net
Packit e8bc57
Source0:	%{Name}-%{Version}.tar.xz
Packit e8bc57
Packit e8bc57
%define _requires_exceptions perl
Packit e8bc57
Packit e8bc57
Buildroot:	%{_tmppath}/%{Name}-%{Version}-root
Packit e8bc57
Packit e8bc57
%description
Packit e8bc57
Bogofilter is a Bayesian spam filter.  In its normal mode of
Packit e8bc57
operation, it takes an email message or other text on standard input,
Packit e8bc57
does a statistical check against lists of "good" and "bad" words, and
Packit e8bc57
returns a status code indicating whether or not the message is spam.
Packit e8bc57
Bogofilter is designed with fast algorithms (including Berkeley DB system),
Packit e8bc57
coded directly in C, and tuned for speed, so it can be used for production
Packit e8bc57
by sites that process a lot of mail.
Packit e8bc57
Packit e8bc57
%if %{with_sqlite}
Packit e8bc57
This version was built with SQLite3 support.
Packit e8bc57
%else
Packit e8bc57
This version was built with Berkeley DB support.
Packit e8bc57
%endif
Packit e8bc57
Packit e8bc57
# use the debug_package macro if applicable:
Packit e8bc57
%{?debugrpm:%debug_package}
Packit e8bc57
Packit e8bc57
%prep
Packit e8bc57
%setup -q -n %{Name}-%{Version}
Packit e8bc57
CFLAGS="$RPM_OPT_FLAGS" \
Packit e8bc57
./configure \
Packit e8bc57
  --prefix=%{_prefix} \
Packit e8bc57
  --mandir=%{_mandir} \
Packit e8bc57
  --sysconfdir=%{_sysconfdir} \
Packit e8bc57
%if %{?with_db42}
Packit e8bc57
  --with-database=db \
Packit e8bc57
%endif
Packit e8bc57
%if %{?with_sqlite}
Packit e8bc57
  --with-database=sqlite3 \
Packit e8bc57
%endif
Packit e8bc57
  --with-included-gsl
Packit e8bc57
Packit e8bc57
%build
Packit e8bc57
make %_smp_mflags
Packit e8bc57
make %_smp_mflags DESTDIR="%{buildroot}" check
Packit e8bc57
Packit e8bc57
%clean
Packit e8bc57
[ -n "%{buildroot}" -a "%{buildroot}" != / ] && rm -rf %{buildroot}
Packit e8bc57
Packit e8bc57
%install
Packit e8bc57
[ -n "%{buildroot}" -a "%{buildroot}" != / ] && rm -rf %{buildroot}
Packit e8bc57
make DESTDIR=%{buildroot} install
Packit e8bc57
Packit e8bc57
cp %{buildroot}%{_sysconfdir}/bogofilter.cf.example \
Packit e8bc57
   %{buildroot}%{_sysconfdir}/bogofilter.cf
Packit e8bc57
Packit e8bc57
for n in xml html ; do
Packit e8bc57
  install -d .inst/$n
Packit e8bc57
  install -m644 doc/*.$n .inst/$n
Packit e8bc57
done
Packit e8bc57
Packit e8bc57
for n in `find %{buildroot}%{_datadir}/%{name} -type d` ; do
Packit e8bc57
  chmod o-w $n
Packit e8bc57
done
Packit e8bc57
Packit e8bc57
for d in contrib ; do
Packit e8bc57
  install -d %{buildroot}%{_datadir}/%{name}/$d
Packit e8bc57
  files=$(find "$d" -maxdepth 1 -type f -print)
Packit e8bc57
  for f in $files ; do
Packit e8bc57
    case $f in
Packit e8bc57
      *.c|*.o|*.obj|*/Makefile*) continue ;;
Packit e8bc57
      *.1)
Packit e8bc57
	cp -p $f %{buildroot}%{_mandir}/man1 ;;
Packit e8bc57
      *)
Packit e8bc57
	cp -p $f %{buildroot}%{_datadir}/%{name}/$d ;;
Packit e8bc57
    esac
Packit e8bc57
  done
Packit e8bc57
done
Packit e8bc57
Packit e8bc57
mv bogogrep* contrib
Packit e8bc57
Packit e8bc57
find %{buildroot}%{_datadir}/%{name} -name .dirstamp -print -delete
Packit e8bc57
Packit e8bc57
%post
Packit e8bc57
Packit e8bc57
%files
Packit e8bc57
%defattr(-,root,root)
Packit e8bc57
Packit e8bc57
%doc AUTHORS COPYING INSTALL
Packit e8bc57
%doc GETTING.STARTED
Packit e8bc57
%doc NEWS README* RELEASE.NOTES TODO
Packit e8bc57
%doc doc/bogofilter-tuning.HOWTO.html
Packit e8bc57
%doc doc/bogofilter-SA-2002-01
Packit e8bc57
%doc doc/integrating*
Packit e8bc57
%doc doc/programmer
Packit e8bc57
%doc doc/README.*db
Packit e8bc57
%doc .inst/html .inst/xml
Packit e8bc57
Packit e8bc57
%{_sysconfdir}/bogofilter.cf.example
Packit e8bc57
%config(noreplace) %{_sysconfdir}/bogofilter.cf
Packit e8bc57
Packit e8bc57
%{_bindir}/bogofilter
Packit e8bc57
%{_bindir}/bogolexer
Packit e8bc57
%{_bindir}/bogotune
Packit e8bc57
%{_bindir}/bogoutil
Packit e8bc57
%{_bindir}/bogoupgrade
Packit e8bc57
%{_bindir}/bf_copy
Packit e8bc57
%{_bindir}/bf_compact
Packit e8bc57
%{_bindir}/bf_tar
Packit e8bc57
Packit e8bc57
%{_mandir}/man1/bogofilter.1*
Packit e8bc57
%{_mandir}/man1/bogolexer.1*
Packit e8bc57
%{_mandir}/man1/bogotune.1*
Packit e8bc57
%{_mandir}/man1/bogoutil.1*
Packit e8bc57
%{_mandir}/man1/bogoupgrade.1*
Packit e8bc57
%{_mandir}/man1/bf_compact.1*
Packit e8bc57
%{_mandir}/man1/bf_copy.1*
Packit e8bc57
%{_mandir}/man1/bf_tar.1*
Packit e8bc57
Packit e8bc57
%{_datadir}/%{name}/contrib/*
Packit e8bc57
Packit e8bc57
%changelog