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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.4 - (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.3: +1 -1 lines
FILE REMOVED
Cleanup. Kill ~mips (#177144)
(Portage version: 2.2_rc61/cvs/Linux x86_64)

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

  ViewVC Help
Powered by ViewVC 1.1.20