If ld is used directly to link libmilter.so, linking is not done
correctly with glibc, and produces a library that can't be used.
Linking with the bad library produces a strange error:
ld: conftest: hidden symbol `stat' in [...]libc_nonshared.a(stat.oS)
is referenced by DSO
Using ld with musl works fine, but using gcc is a more portable way of
linking the shared library anyway.
Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
First patch is from Debian and enables OpenSSL 1.1 support.
Second patch is a fix for OpenSSL 1.1 ECC curves.
Third patch allows compilation without deprecated APIs.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
sys/socket already includes the needed socket stuff. Including the second
header causes the build to fail.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
We move dovecot libexec binaries and modules (including the package
pigeonhole) to their standard locations. This is okay for libexec
because it was added to core prior to 17.04 release. Moving the
binaries normally in libexec eliminates the reason the modules were in an
unusual directory, which is that there were conflicts with
libexec binaries that were in lib, which the modules normally use.
Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
When trying to use managesieve my MUA complained sieve wasn't supported.
On investigation dovecot logs the following could be seen:
Aug 16 00:28:44 managesieve-login: Fatal: master:
service(managesieve-login): child 1430 returned error 127
Aug 16 00:31:32 managesieve-login: Error: Error loading shared
library libdovecot-login.so.0: No such file or directory
(needed by /usr/lib/dovecot/managesieve-login)
Aug 16 00:31:32 managesieve-login: Error: Error loading
shared library libdovecot.so.0: No such file or directory
(needed by /usr/lib/dovecot/managesieve-login)
Aug 16 00:31:32 managesieve-login: Error: Error relocating
/usr/lib/dovecot/managesieve-login: net_ip2addr: symbol not found
The issue (verified with readelf on non-working build and build with my fix)
is that there is no RPATH information in the pigeonhole binaries (like
managesieve-login).
The dovecot-config that is 'installed' in the staging dir
assumes that plugins will be built on the same host as the installed files.
The 'installed' dovecot-config (partial) looks like:
LIBDOVECOT='-L/usr/lib/dovecot -ldovecot'
LIBDOVECOT_LOGIN='-ldovecot-login -L/home/user/Build/openwrt/openwrt-ath79/staging_dir/target-mips_24kc_musl/usr/lib -lssl -lcrypto'
LIBDOVECOT_SQL=-ldovecot-sql
LIBDOVECOT_COMPRESS=-ldovecot-compression
LIBDOVECOT_LDA=-ldovecot-lda
LIBDOVECOT_STORAGE='-ldovecot-storage '
LIBDOVECOT_DSYNC=-ldovecot-dsync
LIBDOVECOT_LIBFTS=-ldovecot-fts
The solution I used was to modify dovecot-config to add the rpath to
DOVECOT_BINARY_LDFLAGS, and to replace references to host directories
with staging_dir directories.
This results in RPATH being added as it needs to be, and results in a working
version of dovecot+pigeonhole.
NB: I've also touched package version of pigeonhole as this change in dovecot
results in (needed) binary changes for pigeonhole.
Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
The package seems to link to -lpam even when using --without-pam. Set
ac_cv_search_pam_end=no to avoid it.
Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
If the full language support is enabled (CONFIG_BUILD_NLS=y),
compilation fails on undefined references to libiconv,
libiconv_open and libiconv_closed. Including nls.mk into
the package's Makefile fixes the problem.
Signed-off-by: Val Kulkov <val.kulkov@gmail.com>
libmariadb 10.2 needs to be linked in together with iconv, hence include
nls.mk.
dovecot will use iconv (if it can find it) also for its own character
conversion needs, so add a general depend as well.
Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
Remove myself as maintainer. Also add deprecation warning as this is
deprecated upstream (see:
https://github.com/cshore-history/msmtp-scripts#deprecation-notice)
barring expression of interested by others in it being revived.
Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
Sourceforge link went away. The GitHub mirror also has the wrong path.
Replaced compatibility patches with upstream solution.
Also added an OpenSSL 1.1.0 compile fix.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Applied a patch merged upstream that adds support to openssl 1.1.0, and
added a patch, just submitted upstream, that enables compilation with
openssl 1.1.0 built without deprecated API.
Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>