1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-20 00:21:35 +00:00

Fix build when selected SSL library is linked to libthr

When a non-default SSL library is used (GnuTLS, OpenSSL or LibreSSL from
ports) and if it is linked to libthr, compilation fails with the following
error :

/usr/bin/ld: undefined reference to symbol `pthread_mutexattr_gettype@@FBSD_1.0' (try adding -lthr)
//lib/libthr.so.3: could not read symbols: Bad value

As OpenSSL-like ports (OpenSSL from base, OpenSSL and OpenSSL-devel from ports,
LibreSSL and LibreSSL-devel from ports) may or may not be linked to libthr, fix
build by detecting if the selected library is linked to libthr or not.

PR:		230813
Submitted by:	Pascal Christen <pascal.christen@hostpoint.ch>
This commit is contained in:
Ganael LAPLANCHE 2018-08-27 10:16:03 +00:00
parent d83e709426
commit de9496a230
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=478188

View File

@ -56,6 +56,20 @@ post-install-DOCS-on:
.include <bsd.port.pre.mk>
# Only link to libthr if necessary
.if ${PORT_OPTIONS:MGNUTLS}
NEED_PTHREAD= yes
.else
.if exists(${OPENSSLLIB}/libssl.so)
NEED_PTHREAD!= ldd ${OPENSSLLIB}/libssl.so | ${GREP} -w 'libthr\.so' || ${ECHO_CMD}
.else
NEED_PTHREAD= # empty
.endif
.endif
.if !empty(NEED_PTHREAD)
LDFLAGS+= -pthread
.endif
.if ${ARCH} == powerpc64
USE_GCC= yes
.endif