Bug 19192 - spamprobe (new ebuild)
|
Bug#:
19192
|
Product: Gentoo Linux
|
Version: unspecified
|
Platform: x86
|
|
OS/Version: All
|
Status: RESOLVED
|
Severity: enhancement
|
Priority: P2
|
|
Resolution: FIXED
|
Assigned To: net-mail@gentoo.org
|
Reported By: A.Schneider@magicspace.de
|
|
Component: Ebuilds
|
|
|
URL:
|
|
Summary: spamprobe (new ebuild)
|
|
Keywords: EBUILD
|
|
Status Whiteboard:
|
|
Opened: 2003-04-12 05:19 0000
|
Fast, intelligent, automatic spam detector using Paul Graham style Bayesian
analysis of word counts in spam and non-spam emails.
PS. I hope this ebuild is complete and correctly, because this is my first one..
.
Created an attachment (id=26133) [details]
Updated ebuild and a patch to configure.in to allow db4 to work in the 0.9h
version.
I haven't tested this ebuild extensively, it's a modifed version of the one
posted earler, but it should compile with db4 now. Others who know more about
autoconf can check out how I did the testing for db4 and improve on it.
Any progress on getting this into the stable tree?
no reaction from an real gentoo developer over a year....
not interested to get this into portage? its realy a good program and Matthew P. Cummings makes a real good update to the ebuild to make it db4 compatible
Yes, please add this ebuild in stable tree.
I use SpamProbe on several email servers, and an "official" ebuild would be very interesting.
The ebuild work correctly with db 3.2 (not tested with 4.0, nor 4.1.)
Could you please attach each file separately? I'll have a look at this, it
looks interesting.
Sorry for late response by the way.
Here are coming my actual ebuild and the modified (only a bit) patch from
Matthew P. Cummings.
Hm, I get this output during final linking, no matter if the patch gets applied
or not:
g++ -march=pentium4 -Os -pipe -fomit-frame-pointer -funroll-loops
-falign-functions=4 -o spamprobe spamprobe.o LockFile.o File.o FrequencyDB.o
FrequencyDBImpl_bdb.o FrequencyDBImpl_dbm.o FrequencyDBImpl_cache.o
FrequencyDBImpl_dual.o Message.o MessageFactory.o SpamFilter.o MimeHeader.o
MimeLineReader.o MimeMessageReader.o Tokenizer.o util.o RegularExpression.o
md5.o LockFD.o FrequencyDBImpl_hash.o FrequencyDBImpl_split.o hash.o
WordArray.o MD5Digester.o FrequencyDBImpl_pbl.o -ldb-4.1
FrequencyDBImpl_bdb.o(.text+0x275): In function
`FrequencyDBImpl_bdb::openDatabase(File const&, bool, int)':
: undefined reference to `db_create_4002'
FrequencyDBImpl_bdb.o(.text+0x2b6): In function
`FrequencyDBImpl_bdb::openDatabase(File const&, bool, int)':
: undefined reference to `db_strerror_4002'
FrequencyDBImpl_bdb.o(.text+0x3c1): In function
`FrequencyDBImpl_bdb::openDatabase(File const&, bool, int)':
: undefined reference to `db_strerror_4002'
FrequencyDBImpl_bdb.o(.text+0x4f5): In function
`FrequencyDBImpl_bdb::closeCursor()':
: undefined reference to `db_strerror_4002'
FrequencyDBImpl_bdb.o(.text+0x5be): In function
`FrequencyDBImpl_bdb::closeDatabase()':
: undefined reference to `db_strerror_4002'
FrequencyDBImpl_bdb.o(.text+0x66e): In function
`FrequencyDBImpl_bdb::closeDatabase()':
: undefined reference to `db_strerror_4002'
FrequencyDBImpl_bdb.o(.text+0x79c): more undefined references to
`db_strerror_4002' follow
collect2: ld returned 1 exit status
make: *** [spamprobe] Error 1
My sys-libs/db is 4.2.52_p2
Again, linking error when using db-4.0:
g++ -march=pentium4 -Os -pipe -fomit-frame-pointer -funroll-loops -falign-functions=4 -o spamprobe spamprobe.o LockFile.o File.o FrequencyDB.o FrequencyDBImpl_bdb.o FrequencyDBImpl_dbm.o FrequencyDBImpl_cache.o FrequencyDBImpl_dual.o Message.o MessageFactory.o SpamFilter.o MimeHeader.o MimeLineReader.o MimeMessageReader.o Tokenizer.o util.o RegularExpression.o md5.o LockFD.o FrequencyDBImpl_hash.o FrequencyDBImpl_split.o hash.o WordArray.o MD5Digester.o FrequencyDBImpl_pbl.o -ldb-3
FrequencyDBImpl_bdb.o(.text+0x275): In function `FrequencyDBImpl_bdb::openDatabase(File const&, bool, int)':
: undefined reference to `db_create_4000'
FrequencyDBImpl_bdb.o(.text+0x2b6): In function `FrequencyDBImpl_bdb::openDatabase(File const&, bool, int)':
: undefined reference to `db_strerror_4000'
FrequencyDBImpl_bdb.o(.text+0x3bf): In function `FrequencyDBImpl_bdb::openDatabase(File const&, bool, int)':
: undefined reference to `db_strerror_4000'
FrequencyDBImpl_bdb.o(.text+0x4f5): In function `FrequencyDBImpl_bdb::closeCursor()':
: undefined reference to `db_strerror_4000'
FrequencyDBImpl_bdb.o(.text+0x5be): In function `FrequencyDBImpl_bdb::closeDatabase()':
: undefined reference to `db_strerror_4000'
FrequencyDBImpl_bdb.o(.text+0x66e): In function `FrequencyDBImpl_bdb::closeDatabase()':
: undefined reference to `db_strerror_4000'
FrequencyDBImpl_bdb.o(.text+0x79c): more undefined references to `db_strerror_4000' follow
collect2: ld returned 1 exit status
make: *** [spamprobe] Error 1
Actually, it tries to use db-3.2, as it doesn't even look for db-4.0 (according
to configure output).
Created an attachment (id=39204) [details]
Updated Patch (again)
Completly new patch from me, which is now using some makros from ac-archive, to
test installed db version.
I tested it now lokaly with this db versions:
sys-libs/db-4.2.52_p2
sys-libs/db-4.1.25_p1-r3
sys-libs/db-4.0.14-r3
sys-libs/db-3.2.9-r10
I hope it works also on other Systems well.
This is getting more and more fun:
# emerge spamprobe
Calculating dependencies ...done!
>>> emerge (1 of 1) mail-filter/spamprobe-0.9h to /
>>> md5 src_uri ;-) spamprobe-0.9h.tar.gz
>>> Unpacking source...
>>> Unpacking spamprobe-0.9h.tar.gz to /var/tmp/portage/spamprobe-0.9h/work
>>> Source unpacked.
>>> Unpacking spamprobe-0.9h.tar.gz to /var/tmp/portage/spamprobe-0.9h/work/spamprobe-0.9h
* Applying spamprobe-0.9h-db4.patch... [ ok ]
configure.in:124: warning: AC_ARG_PROGRAM invoked multiple times
configure.in:8: error: possibly undefined macro: AC_DEFINE
If this token and others are legitimate, please use m4_pattern_allow.
See the Autoconf documentation.
configure.in:9: error: possibly undefined macro: AC_MSG_ERROR
configure.in:46: error: possibly undefined macro: AC_TRY_LINK_FUNC
The above happens when I use the patch from your latest attachment (attachment 39204 [details]). I'm using autoconf 2.59 for this (when using 2.13, it bails out with "FATAL ERROR: Autoconf version 2.52 or higher is required for this script")
As problems have been resolved by private email and ebuild is now fully
functional, I have committed spamprobe to CVS. Should hit your local mirror in
few hours. Thanks a lot for work on the patch, Alexander!
Btw, I've included spamprobe into my spamfighting toolchain, we'll see how well
it performs over time. :)