Emerging net-mail/perdition-1.17 on AMD64 will fail.
/bin/sh ../../../libtool --mode=link x86_64-pc-linux-gnu-gcc -march=athlon64
-pipe -Os -maccumulate-outgoing-args -fpeel-loops -ftracer -funswitch-loops -o
libperditiondb_daemon.la -rpath /usr/lib64 -version-info 0:0:0
perditiondb_daemon.lo unix_socket.lo -ldb -L. -lperditiondb_daemon_packet
x86_64-pc-linux-gnu-gcc -march=athlon64 -pipe -Os -maccumulate-outgoing-args
-fpeel-loops -ftracer -funswitch-loops -o server server.o unix_socket.o
/usr/lib64/libvanessa_logger.so
-L/home/portage-tmp/portage/net-mail/perdition-1.17/work/perdition-1.17/perdition/db/daemon
-lperditiondb_daemon_packet
x86_64-pc-linux-gnu-gcc -shared .libs/perditiondb_daemon.o .libs/unix_socket.o
-ldb
-L/home/portage-tmp/portage/net-mail/perdition-1.17/work/perdition-1.17/perdition/db/daemon
-lperditiondb_daemon_packet -march=athlon64 -maccumulate-outgoing-args
-Wl,-soname -Wl,libperditiondb_daemon.so.0 -o
.libs/libperditiondb_daemon.so.0.0.0
/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../x86_64-pc-linux-gnu/bin/ld:
/home/portage-tmp/portage/net-mail/perdition-1.17/work/perdition-1.17/perdition/db/daemon/libperditiondb_daemon_packet.a(packet.o):
relocation R_X86_64_32 against `a local symbol' can not be used when making a
shared object; recompile with -fPIC
/home/portage-tmp/portage/net-mail/perdition-1.17/work/perdition-1.17/perdition/db/daemon/libperditiondb_daemon_packet.a:
could not read symbols: Bad value
collect2: ld returned 1 exit status
make[4]: *** [libperditiondb_daemon.la] Error 1
make[4]: Leaving directory
`/home/portage-tmp/portage/net-mail/perdition-1.17/work/perdition-1.17/perdition/db/daemon'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory
`/home/portage-tmp/portage/net-mail/perdition-1.17/work/perdition-1.17/perdition/db'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory
`/home/portage-tmp/portage/net-mail/perdition-1.17/work/perdition-1.17/perdition'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/home/portage-tmp/portage/net-mail/perdition-1.17/work/perdition-1.17'
make: *** [all-recursive-am] Error 2
perditiondb_daemon.o tries to link against perditiondb_daemon_packet which is a
static lib.
The perdition-1.17-pic01 patch will make all .o being built as shared
(including packet.o which causes the error).
Despite that error, the package builds OK.
NOTE: I didn't check any other missing -fPIC, maybe tomorrow :)
net-mail/perdition-1.17 built OK with USE="nls pam ssl mysql -gdbm -ldap -odbc
-postgres" and patch perdition-1.17-pic01.diff. No colisions.
I also tested execution by configuring a proxy server to my gmail account with
SSL support. popmap data where stored in a mysql database.
The execution was successful, I could receive your "SPAM" :p
Execution log with debug set:
Jul 24 15:01:20 [perdition] version=1.17, add_domain="", authenticate_in=off,
bind_address="127.0.0.1", capability="UIDL USER",
client_server_specification=off, config_file="/etc/perdition/perdition.conf",
connection_limit=0, connection_logging=on, connect_relog=300, debug=on,
domain_delimiter="@", explicit_domain="", group="nobody", inetd_mode=off,
listen_port="110", log_facility="mail", login_disabled=off, lower_case="",
map_library="/usr/lib/libperditiondb_mysql.so",
map_library_opt="localhost:3306:perditiondb:popmap:perdition:***:servername:user:port",
no_bind_banner=off, no_daemon=off, no_lookup=off, nodename="WoW", ok_line="You
are so in", outgoing_port="110", outgoing_server="",
pid_file="/var/run/perdition/pop3.pid", protocol="POP3", server_resp_line=off,
strip_domain="", timeout=1800, username="perdition",
username_from_database=off, query_key="", quiet=off, ssl_mode="ssl_outgoing",
ssl_ca_file="", ssl_ca_path="/etc/perdition/perdition.ca/",
ssl_ca_accept_self_signed="off",
ssl_cert_file="/etc/perdition/perdition.crt.pem",
ssl_cert_accept_expired="off", ssl_cert_not_yet_valid="off",
ssl_cert_self_signed="off", ssl_cert_verify_depth=9,
ssl_key_file="/etc/perdition/perdition.key.pem", ssl_listen_ciphers="",
ssl_outgoing_ciphers="", ssl_no_cert_verify="on", ssl_no_cn_verify="off",
(ssl_mask=0x00000000) (mask=0x10000400 00000002)__
Jul 24 15:01:20 [perdition] vanessa_socket_daemon_setid: uid=107 euid=107
gid=65534 egid=65534_
Jul 24 15:01:23 [perdition] Connect: 127.0.0.1->127.0.0.1 _
Jul 24 15:01:23 [perdition] SELF: "+OK POP3 Ready localhost ***\r\n"_
Jul 24 15:01:23 [perdition] CLIENT: "USER miknix@gmail.com\r\n"_
Jul 24 15:01:23 [perdition] SELF: "+OK USER miknix@gmail.com set, mate\r\n"_
Jul 24 15:01:23 [perdition] CLIENT: "PASS *** \r\n"_
Jul 24 15:01:23 [perdition] username_add_domain: username_add_domain 0 1 ***_
Jul 24 15:01:23 [perdition] SSL connection using DES-CBC3-SHA_
Jul 24 15:01:23 [perdition] subject: /C=US/ST=California/L=Mountain
View/O=Google Inc./CN=pop.gmail.com_
Jul 24 15:01:23 [perdition] issuer: /C=US/O=Equifax/OU=Equifax Secure
Certificate Authority_
Jul 24 15:01:23 [perdition] username_add_domain: username_add_domain 0 4 ***_
Jul 24 15:01:23 [perdition] REAL: "+OK Gpop ready for requests from
85.241.***.*** ***\r\n"_
Jul 24 15:01:23 [perdition] SELF: "USER miknix@gmail.com\r\n"_
Jul 24 15:01:23 [perdition] REAL: "+OK send PASS\r\n"_
Jul 24 15:01:23 [perdition] SELF: "PASS *** \r\n"_
Jul 24 15:01:24 [perdition] REAL: "+OK Welcome.\r\n"_
Jul 24 15:01:24 [perdition] SELF: "+OK You are so in\r\n"_
Jul 24 15:01:24 [perdition] Auth: 127.0.0.1->127.0.0.1 user="miknix@gmail.com"
server="pop.gmail.com" port="995" status="ok"_
Jul 24 15:01:24 [perdition] CLIENT: "STAT\r\n"_
Jul 24 15:01:24 [perdition] REAL: "+OK 4 9126\r\n"_
Jul 24 15:01:24 [perdition] CLIENT: "UIDL\r\n"_
Jul 24 15:01:24 [perdition] REAL: "+OK\r\n1 GmailId***\r\n2 GmailId***\r\n3
GmailId***\r\n4 GmailId***\r\n.\r\n"_
Jul 24 15:01:24 [perdition] CLIENT: "LIST\r\n"_
(...)
Jul 24 15:01:24 [perdition] REAL: "+OK 4 messages (9126 bytes)\r\n1 2275\r\n2
2261\r\n3 2393\r\n4 2197\r\n.\r\n"_
Jul 24 15:01:24 [perdition] CLIENT: "RETR 1\r\n"_