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

Contents of /mail-filter/spamassassin/spamassassin-3.1.8.ebuild

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.12 - (show annotations) (download)
Thu Jan 7 08:44:59 2010 UTC (10 years, 3 months ago) by tove
Branch: MAIN
CVS Tags: HEAD
Changes since 1.11: +1 -1 lines
FILE REMOVED
Cleanup. Kill ~mips (#177144)
(Portage version: 2.2_rc61/cvs/Linux x86_64)

1 # Copyright 1999-2008 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.8.ebuild,v 1.11 2008/11/18 16:13:26 tove 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="http://archive.apache.org/dist/spamassassin/source/${MY_P}.tar.bz2"
12
13 SRC_TEST="do"
14 LICENSE="Apache-2.0"
15 SLOT="0"
16 KEYWORDS="alpha amd64 hppa ia64 ~mips ppc ppc64 sparc x86"
17 IUSE="berkdb qmail ssl doc ldap mysql postgres sqlite tools ipv6"
18
19 DEPEND=">=dev-lang/perl-5.8.2-r1
20 virtual/perl-MIME-Base64
21 >=virtual/perl-PodParser-1.32
22 virtual/perl-Storable
23 virtual/perl-Time-HiRes
24 >=dev-perl/HTML-Parser-3.31
25 >=dev-perl/Net-DNS-0.53
26 dev-perl/Digest-SHA1
27 dev-perl/libwww-perl
28 >=virtual/perl-Archive-Tar-1.26
29 app-crypt/gnupg
30 virtual/perl-IO-Zlib
31 ssl? (
32 dev-perl/IO-Socket-SSL
33 dev-libs/openssl
34 )
35 berkdb? (
36 virtual/perl-DB_File
37 )
38 ldap? ( dev-perl/perl-ldap )
39 mysql? (
40 dev-perl/DBI
41 dev-perl/DBD-mysql
42 )
43 postgres? (
44 dev-perl/DBI
45 dev-perl/DBD-Pg
46 )
47 sqlite? (
48 dev-perl/DBI
49 dev-perl/DBD-SQLite
50 )
51
52 ipv6? (
53 dev-perl/IO-Socket-INET6
54 )"
55
56 src_compile() {
57 # - Set SYSCONFDIR explicitly so we can't get bitten by bug 48205 again
58 # (just to be sure, nobody knows how it could happen in the first place).
59 myconf="SYSCONFDIR=/etc DATADIR=/usr/share/spamassassin"
60
61 # If ssl is enabled, spamc can be built with ssl support
62 if use ssl; then
63 myconf="${myconf} ENABLE_SSL=yes"
64 else
65 myconf="${myconf} ENABLE_SSL=no"
66 fi
67
68 # Set the path to the Perl executable explictly. This will be used to
69 # create the initial sharpbang line in the scripts and might cause
70 # a versioned app name end in there, see
71 # <http://bugs.gentoo.org/show_bug.cgi?id=62276>
72 myconf="${myconf} PERL_BIN=/usr/bin/perl"
73
74 # If you are going to enable taint mode, make sure that the bug where
75 # spamd doesn't start when the PATH contains . is addressed, and make
76 # sure you deal with versions of razor <2.36-r1 not being taint-safe.
77 # <http://bugzilla.spamassassin.org/show_bug.cgi?id=2511> and
78 # <http://spamassassin.org/released/Razor2.patch>.
79 myconf="${myconf} PERL_TAINT=no"
80
81 # No settings needed for 'make all'.
82 mymake=""
83
84 # Neither for 'make install'.
85 myinst=""
86
87 # Add Gentoo tag to make it easier for the upstream devs to spot
88 # possible modifications or patches.
89 version_tag="g${PV:6}${PR}"
90 version_str="${PV//_/-}-${version_tag}"
91
92 # Create the Gentoo config file before Makefile.PL is called so it
93 # is copied later on.
94 echo "version_tag ${version_tag}" > rules/11_gentoo.cf
95
96 # Setting the following env var ensures that no questions are asked.
97 export PERL_MM_USE_DEFAULT=1
98 perl-module_src_prep
99 # Run the autoconf stuff now, just to make the build sequence look more
100 # familiar to the user :) Plus feeding the VERSION_STRING skips some
101 # calls to Perl.
102 make spamc/Makefile VERSION_STRING="${version_str}"
103
104 # Now compile all the stuff selected.
105 perl-module_src_compile
106 if use qmail; then
107 make spamc/qmail-spamc || die building qmail-spamc failed
108 fi
109
110 # Remove the MANIFEST files as they aren't docu files
111 rm -f MANIFEST*
112
113 use doc && make text_html_doc
114 }
115
116 src_install () {
117 perl-module_src_test
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 elog "If you plan on using the -u flag to spamd, please read the notes"
210 elog "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 einfo
216
217 if has_version '>=dev-lang/perl-5.8.8'; then
218 elog "A note from the SA developers:"
219 elog "Perl 5.8 now uses Unicode internally by default, which causes trouble for"
220 elog "SpamAssassin (and almost all other reasonably complex pieces of perl"
221 elog "code!)."
222 elog ""
223 elog "We've worked around this in most places, as far as we know, but there may"
224 elog "still be some issues. In addition, there is a speed hit, which it would"
225 elog "be nice to avoid."
226 elog ""
227 elog "Setting the LANG environment variable before any invocation of"
228 elog "SpamAssassin sometimes seems to help fix it, like so:"
229 elog ""
230 elog " export LANG=en_US"
231 elog ""
232 elog "Notably, the LANG setting must not include \"utf8\". However, some folks"
233 elog "have reported that this makes no difference. ;)"
234 fi
235 einfo
236 if ! has_version 'dev-perl/Mail-SPF-Query'; then
237 elog "For spf support, please emerge dev-perl/Mail-SPF-Query"
238 fi
239 if ! has_version 'mail-filter/dcc'; then
240 elog "For dcc support, please emerge mail-filter/dcc"
241 fi
242 if ! has_version 'dev-python/pyzor'; then
243 elog "For pyzor support, please emerge dev-python/pyzor"
244 fi
245 if ! has_version 'mail-filter/razor'; then
246 elog "For razor support, please emerge mail-filter/razor"
247 fi
248 einfo
249 elog "For addtional functionality, you may wish to emerge:"
250 elog "dev-perl/IP-Country dev-perl/Net-Ident "
251 elog "dev-perl/Mail-DomainKeys"
252
253 }

  ViewVC Help
Powered by ViewVC 1.1.20