package/iperf3: fix openssl detection

Searching for openssl uses the AC_ARG_WITH macro:

https://github.com/esnet/iperf/blob/master/config/ax_check_openssl.m4#L40

Pkgconf is only used when --with-openssl is not used at all as
configure parameter because it was placed in the "action-if-not-given"
part of the AC_ARG_WITH macro:
https://github.com/esnet/iperf/blob/master/config/ax_check_openssl.m4#L52

The current CONF_OPTS contain --with-openssl which causes OPENSSL_LIBS
not be filled by pkgconf but with default values "-lssl -lcrypto":
https://github.com/esnet/iperf/blob/master/config/ax_check_openssl.m4#L82

This breaks openssl detection for static builds because -lz is missing:
http://autobuild.buildroot.net/results/ba5/ba56d132c5994486066c304fa1f3872bb0f3ee32//iperf3-3.6/config.log

/home/buildroot/build/instance-0/output/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libcrypto.a(c_zlib.o):
 In function `zlib_stateful_expand_block':
  c_zlib.c:(.text+0x54): undefined reference to `inflate'

This patch removes --with-openssl and adds host-pkgconf as dependency
to let the configure script auto-detect openssl, this fixes

http://autobuild.buildroot.net/results/ba5/ba56d132c5994486066c304fa1f3872bb0f3ee32/
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
[Thomas: add comment in the code to explain why we don't pass
--with-openssl.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018.11.x
Bernd Kuhls 2018-08-11 20:55:19 +02:00 committed by Thomas Petazzoni
parent 3a60fbd4a9
commit 6ca73d671e
1 changed files with 4 additions and 2 deletions

View File

@ -13,8 +13,10 @@ IPERF3_LICENSE_FILES = LICENSE
IPERF3_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -D_GNU_SOURCE"
ifeq ($(BR2_PACKAGE_OPENSSL),y)
IPERF3_CONF_OPTS += --with-openssl=$(STAGING_DIR)/usr
IPERF3_DEPENDENCIES += openssl
# We intentionally don't pass --with-openssl, otherwise pkg-config is
# not used, and indirect libraries are not picked up when static
# linking.
IPERF3_DEPENDENCIES += host-pkgconf openssl
else
IPERF3_CONF_OPTS += --without-openssl
endif