[Buildroot] [git commit branch/2018.02.x] package/proftpd: prevent openssl pthread detection
Peter Korsgaard
peter at korsgaard.com
Fri Feb 22 12:33:43 UTC 2019
commit: https://git.buildroot.net/buildroot/commit/?id=fdea09b831205a25fa44c68c847ce382deafd095
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/2018.02.x
The proftpd configure script doesn't use pkg-config to detect openssl
libraries. Instead, it just adds -lcrypto. Since openssl may be linked
with pthread, it tries to detect that by calling 'openssl version -f',
which gives the arguments with which openssl was compiled.
Since the openssl executable used is either host-openssl or the system
installed openssl, the output of 'openssl version -f' is useless in
Buildroot context. If the target toolchain doesn't have threads support,
it will wrongly pick up -pthread from host-openssl.
Fortunately there is a simple workaround: --without-openssl-cmdline says
that there is no openssl executable and skips the test, so -pthread is
not added. It turns out -pthread is never needed, even in static linking
cases, because openssl/libressl puts the thread support in a separate
object file that only gets linked in if the program actually uses
threads (which proftpd doesn't).
Fixes:
http://autobuild.buildroot.net/results/9c25c3cb3cf93b76c0538c5376a803641bf6575b
Signed-off-by: Matthew Weber <matthew.weber at rockwellcollins.com>
[Rewrite commit log, after additional analysis and testing]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout at mind.be>
(cherry picked from commit 51bb23652fbb5597d10cf2dc49948f9405c5619b)
Signed-off-by: Peter Korsgaard <peter at korsgaard.com>
---
package/proftpd/proftpd.mk | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/package/proftpd/proftpd.mk b/package/proftpd/proftpd.mk
index 3e165c6ada..109e332a46 100644
--- a/package/proftpd/proftpd.mk
+++ b/package/proftpd/proftpd.mk
@@ -21,7 +21,8 @@ PROFTPD_CONF_OPTS = \
--disable-facl \
--disable-dso \
--enable-shadow \
- --with-gnu-ld
+ --with-gnu-ld \
+ --without-openssl-cmdline
ifeq ($(BR2_PACKAGE_PROFTPD_MOD_REWRITE),y)
PROFTPD_CONF_OPTS += --with-modules=mod_rewrite
More information about the buildroot
mailing list