/[gentoo-x86]/mail-filter/spamassassin/spamassassin-3.1.3-r1.ebuild
Gentoo

Contents of /mail-filter/spamassassin/spamassassin-3.1.3-r1.ebuild

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.2 - (show annotations) (download)
Thu Feb 22 22:08:21 2007 UTC (13 years, 1 month ago) by ian
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +1 -1 lines
FILE REMOVED
Cleanup
(Portage version: 2.1.2-r10)

1 # Copyright 1999-2006 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Header: /var/cvsroot/gentoo-x86/mail-filter/spamassassin/spamassassin-3.1.3-r1.ebuild,v 1.1 2006/06/20 19:26:47 ian Exp $
4
5 inherit perl-module eutils
6
7 MY_P=Mail-SpamAssassin-${PV//_/-}
8 S=${WORKDIR}/${MY_P}
9 DESCRIPTION="SpamAssassin is an extensible email filter which is used to identify spam."
10 HOMEPAGE="http://spamassassin.apache.org/"
11 SRC_URI="mirror://apache/spamassassin/source/${MY_P}.tar.bz2"
12
13 LICENSE="Apache-2.0"
14 SLOT="0"
15 KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
16 IUSE="berkdb qmail ssl doc ldap mysql postgres sqlite tools ipv6"
17
18 DEPEND=">=dev-lang/perl-5.8.2-r1
19 virtual/perl-MIME-Base64
20 >=virtual/perl-PodParser-1.32
21 virtual/perl-Storable
22 virtual/perl-Time-HiRes
23 >=dev-perl/HTML-Parser-3.31
24 >=dev-perl/Net-DNS-0.53
25 dev-perl/Digest-SHA1
26 dev-perl/libwww-perl
27 >=dev-perl/Archive-Tar-1.26
28 app-crypt/gnupg
29 dev-perl/IO-Zlib
30 ssl? (
31 dev-perl/IO-Socket-SSL
32 dev-libs/openssl
33 )
34 berkdb? (
35 virtual/perl-DB_File
36 )
37 ldap? ( dev-perl/perl-ldap )
38 mysql? (
39 dev-perl/DBI
40 dev-perl/DBD-mysql
41 )
42 postgres? (
43 dev-perl/DBI
44 dev-perl/DBD-Pg
45 )
46 sqlite? (
47 dev-perl/DBI
48 dev-perl/DBD-SQLite
49 )
50
51 ipv6? (
52 dev-perl/IO-Socket-INET6
53 )"
54
55 src_compile() {
56 # Fix upstream bug causing 0 returns. (spam is being marked nonspam)
57 # See bug #135940
58 # Upstream: http://issues.apache.org/SpamAssassin/show_bug.cgi?id=4930
59 epatch ${FILESDIR}/spamassassin-3.1.3-bug-4930.diff
60
61 # - Set SYSCONFDIR explicitly so we can't get bitten by bug 48205 again
62 # (just to be sure, nobody knows how it could happen in the first place).
63 myconf="SYSCONFDIR=/etc DATADIR=/usr/share/spamassassin"
64
65 # If ssl is enabled, spamc can be built with ssl support
66 if use ssl; then
67 myconf="${myconf} ENABLE_SSL=yes"
68 else
69 myconf="${myconf} ENABLE_SSL=no"
70 fi
71
72 # Set the path to the Perl executable explictly. This will be used to
73 # create the initial sharpbang line in the scripts and might cause
74 # a versioned app name end in there, see
75 # <http://bugs.gentoo.org/show_bug.cgi?id=62276>
76 myconf="${myconf} PERL_BIN=/usr/bin/perl"
77
78 # If you are going to enable taint mode, make sure that the bug where
79 # spamd doesn't start when the PATH contains . is addressed, and make
80 # sure you deal with versions of razor <2.36-r1 not being taint-safe.
81 # <http://bugzilla.spamassassin.org/show_bug.cgi?id=2511> and
82 # <http://spamassassin.org/released/Razor2.patch>.
83 myconf="${myconf} PERL_TAINT=no"
84
85 # No settings needed for 'make all'.
86 mymake=""
87
88 # Neither for 'make install'.
89 myinst=""
90
91 # Add Gentoo tag to make it easier for the upstream devs to spot
92 # possible modifications or patches.
93 version_tag="g${PV:6}${PR}"
94 version_str="${PV//_/-}-${version_tag}"
95
96 # Create the Gentoo config file before Makefile.PL is called so it
97 # is copied later on.
98 echo "version_tag ${version_tag}" > rules/11_gentoo.cf
99
100 # Setting the following env var ensures that no questions are asked.
101 export PERL_MM_USE_DEFAULT=1
102 perl-module_src_prep
103 # Run the autoconf stuff now, just to make the build sequence look more
104 # familiar to the user :) Plus feeding the VERSION_STRING skips some
105 # calls to Perl.
106 make spamc/Makefile VERSION_STRING="${version_str}"
107
108 # Now compile all the stuff selected.
109 perl-module_src_compile
110 if use qmail; then
111 make spamc/qmail-spamc || die building qmail-spamc failed
112 fi
113
114 # Remove the MANIFEST files as they aren't docu files
115 rm -f MANIFEST*
116
117 use doc && make text_html_doc
118 }
119
120 src_install () {
121 perl-module_src_install
122
123 # Create the stub dir used by sa-update and friends
124 dodir /var/lib/spamassassin
125
126 # Move spamd to sbin where it belongs.
127 dodir /usr/sbin
128 mv "${D}"/usr/bin/spamd "${D}"/usr/sbin/spamd || die
129
130 use qmail && dobin spamc/qmail-spamc
131
132 dosym /etc/mail/spamassassin /etc/spamassassin
133
134 # Disable plugin by default
135 sed -i -e 's/^loadplugin/\#loadplugin/g' ${D}/etc/mail/spamassassin/init.pre
136
137 # Add the init and config scripts.
138 newinitd "${FILESDIR}"/3.0.0-spamd.init spamd
139 newconfd "${FILESDIR}"/3.0.0-spamd.conf spamd
140
141 if use doc; then
142 dodoc NOTICE TRADEMARK CREDITS INSTALL UPGRADE BUGS USAGE \
143 sql/README.bayes sql/README.awl README.ldap procmailrc.example \
144 sample-nonspam.txt sample-spam.txt rules/STATISTICS-set0.txt \
145 STATISTICS-set1.txt STATISTICS-set2.txt STATISTICS-set3.txt \
146 spamd/PROTOCOL
147
148 # Rename some docu files so they don't clash with others
149 newdoc spamd/README README.spamd
150 newdoc sql/README README.sql
151 newdoc ldap/README README.ldap
152 use qmail && newdoc spamc/README.qmail README.qmail
153
154 dohtml doc/*.html
155 docinto sql
156 dodoc sql/*.sql
157 fi
158
159 # Install provided tools. See bug 108168
160 if use tools; then
161 docinto tools
162 dodoc tools/*
163 fi
164
165 cp ${FILESDIR}/secrets.cf ${D}/etc/mail/spamassassin/secrets.cf.example
166 fperms 0400 /etc/mail/spamassassin/secrets.cf.example
167 echo "">>${D}/etc/mail/spamassassin/local.cf.example
168 echo "# Sensitive data, such as database connection info, should">>${D}/etc/mail/spamassassin/local.cf.example
169 echo "# be stored in /etc/mail/spamassassin/secrets.cf with">>${D}/etc/mail/spamassassin/local.cf.example
170 echo "# appropriate permissions">>${D}/etc/mail/spamassassin/local.cf.example
171 }
172
173 pkg_postinst() {
174 perl-module_pkg_postinst
175
176 if ! has_version "perl-core/DB_File"; then
177 einfo "The Bayes backend requires the Berkeley DB to store its data. You"
178 einfo "need to emerge perl-core/DB_File or USE=berkdb to make it available."
179 fi
180
181 if has_version "mail-filter/razor"; then
182 if ! has_version ">=mail-filter/razor-2.61"; then
183 ewarn "You have $(best_version mail-filter/razor) installed but SpamAssassin"
184 if has_version "<mail-filter/razor-2.40"; then
185 ewarn "requires at least version 2.40, version 2.61 or later is recommended."
186 else
187 ewarn "recommends at least version 2.61."
188 fi
189 fi
190 fi
191
192 if use doc; then
193 einfo
194 einfo "Please read the file"
195 einfo " /usr/share/doc/${PF}/INSTALL.gz"
196 einfo "to find out which optional modules you need to install to enable"
197 einfo "additional features which depend on them."
198 einfo
199 einfo "If upgraded from 2.x, please read the file"
200 einfo " /usr/share/doc/${PF}/UPGRADE.gz"
201 einfo
202 fi
203
204 ewarn
205 ewarn "spamd is not designed to listen to an untrusted network"
206 ewarn "and is vulnerable to DoS attacks (and eternal doom) if"
207 ewarn "configured to do so"
208 ewarn
209 ewarn "If you plan on using the -u flag to spamd, please read the notes"
210 ewarn "in /etc/conf.d/spamd regarding the location of the pid file."
211
212 einfo
213 einfo "If you build ${PN} with optional dependancy support,"
214 einfo "you can enable them in /etc/mail/spamassassin/init.pre"
215
216 if has_version '>=dev-lang/perl-5.8.8'; then
217 ewarn "Perl 5.8 now uses Unicode internally by default, which causes trouble for"
218 ewarn "SpamAssassin (and almost all other reasonably complex pieces of perl"
219 ewarn "code!)."
220 echo ""
221 ewarn "We've worked around this in most places, as far as we know, but there may"
222 ewarn "still be some issues. In addition, there is a speed hit, which it would"
223 ewarn "be nice to avoid."
224 echo ""
225 ewarn "Setting the LANG environment variable before any invocation of"
226 ewarn "SpamAssassin sometimes seems to help fix it, like so:"
227 echo ""
228 ewarn " export LANG=en_US"
229 echo ""
230 ewarn "Notably, the LANG setting must not include \"utf8\". However, some folks"
231 ewarn "have reported that this makes no difference. ;)"
232 fi
233 einfo
234 if ! has_version 'dev-perl/Mail-SPF-Query'; then
235 einfo "For spf support, please emerge dev-perl/Mail-SPF-Query"
236 fi
237 if ! has_version 'mail-filter/dcc'; then
238 einfo "For dcc support, please emerge mail-filter/dcc"
239 fi
240 if ! has_version 'dev-python/pyzor'; then
241 einfo "For pyzor support, please emerge dev-python/pyzor"
242 fi
243 if ! has_version 'mail-filter/razor'; then
244 einfo "For razor support, please emerge mail-filter/razor"
245 fi
246 einfo
247 einfo "For addtional functionality, you may wish to emerge:"
248 einfo "dev-perl/IP-Country dev-perl/Net-Ident "
249 einfo "dev-perl/Mail-DomainKeys"
250
251 }

  ViewVC Help
Powered by ViewVC 1.1.20