Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 13 Feb 2023 16:20:29 +0000
From:      bugzilla-noreply@freebsd.org
To:        ports-bugs@FreeBSD.org
Subject:   [Bug 262552] net/mosquitto: Mosquitto websockets support not working
Message-ID:  <bug-262552-7788-C6RK93xShw@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-262552-7788@https.bugs.freebsd.org/bugzilla/>
References:  <bug-262552-7788@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D262552

--- Comment #16 from Rod Morgan <rmorgan@portmorgan.com> ---
First and foremost, thanks for looking into this.

Looking at your patch file, it appears to be a patch to the original
libwebsockets v4.2.2.  Assuming that to be correct, I restored the
libwebsockets port to its original state (prior to the first patch).=20
Implemented the new patch to v4.3.2, deinstalled, cleaned, config'd, instal=
led.
 All with no errors or warnings.=20=20

Upon rebuilding (deinstall, clean, install) mosquitto, I got a failure
referencing an undefined symbol for pthread_create.  I've attached the patc=
hed
libwebsockets Makefile and the mosquitto make error.

Here is the v4.3.2 Makefile.

=3D=3D=3D=3D=3D=3D=3D
PORTNAME=3D       libwebsockets
DISTVERSIONPREFIX=3D      v
DISTVERSION=3D    4.3.2
CATEGORIES=3D     net devel
MASTER_SITES=3D   https://libwebsockets.org/git/libwebsockets/snapshot/

MAINTAINER=3D     ports@FreeBSD.org
COMMENT=3D        C library for lightweight websocket clients and servers
WWW=3D            https://libwebsockets.org/

LICENSE=3D        MIT
LICENSE_FILE=3D   ${WRKSRC}/LICENSE

USES=3D           cmake localbase pkgconfig tar:xz
USE_LDCONFIG=3D   yes

BUILDINFO=3D      ${HOSTARCH}-portbld-${OPSYS:tl}-${OSREL:R}

CMAKE_ARGS=3D     -DLWS_BUILD_HASH:STRING=3D"${BUILDINFO}"
CMAKE_ON=3D       CMAKE_DISABLE_FIND_PACKAGE_Git \
                LWS_WITH_DISKCACHE LWS_WITH_FTS LWS_IPV6 LWS_WITH_RANGES \
                LWS_WITH_SSL LWS_WITH_THREADPOOL LWS_WITH_ZLIB \
                LWS_WITHOUT_BUILTIN_SHA1 \
                LWS_WITHOUT_TESTAPPS LWS_WITHOUT_TEST_SERVER \
                LWS_WITHOUT_TEST_SERVER_EXTPOLL \
                LWS_WITHOUT_TEST_PING LWS_WITHOUT_TEST_CLIENT

OPTIONS_DEFINE=3D         HTTP_PROXY HTTP2 MQTT PEERLIMITS PLUGINS \
                        SECURE_STREAMS SOCKS SQLITE WEBSERVER
OPTIONS_DEFAULT=3D        HTTP2 MQTT OPENSSL LIBUV
OPTIONS_SUB=3D            yes

OPTIONS_SINGLE=3D         SSL
OPTIONS_SINGLE_SSL=3D     MBEDTLS OPENSSL
OPTIONS_GROUP=3D          EVLOOP
OPTIONS_GROUP_EVLOOP=3D   GLIB LIBEV LIBEVENT LIBUV

HTTP_PROXY_DESC=3D        HTTP proxy support
MQTT_DESC=3D              MQTT client support
PEERLIMITS_DESC=3D        Tracking and limiting of resources of peer(s)
PLUGINS_DESC=3D           Plugins support
SECURE_STREAMS_DESC=3D    Secure streams protocol API support
SOCKS_DESC=3D             Allow use of SOCKS5 proxy on client connections
EVLOOP_DESC=3D            Event loop support
GLIB_DESC=3D              Events support via Glib
LIBEVENT_DESC=3D          Asynchronous event notification via libevent
LIBUV_DESC=3D             Asynchronous I/O support via libuv

HTTP_PROXY_CMAKE_BOOL=3D  LWS_WITH_HTTP_PROXY
HTTP2_CMAKE_BOOL=3D       LWS_WITH_HTTP2
MQTT_CMAKE_BOOL=3D        LWS_ROLE_MQTT LWS_WITH_EXTERNAL_POLL
PEERLIMITS_CMAKE_BOOL=3D  LWS_WITH_PEER_LIMITS
PLUGINS_CMAKE_BOOL=3D     LWS_WITH_PLUGINS \
                        LWS_WITH_PLUGINS_API
SECURE_STREAMS_CMAKE_BOOL=3D      LWS_WITH_SECURE_STREAMS \
                        LWS_WITH_SECURE_STREAMS_PROXY_API
SOCKS_CMAKE_BOOL=3D       LWS_WITH_SOCKS5
SQLITE_LIB_DEPENDS=3D     libsqlite3.so:databases/sqlite3
SQLITE_CMAKE_BOOL=3D      LWS_WITH_SQLITE3
WEBSERVER_CMAKE_BOOL=3D   LWS_WITH_LWSWS
WEBSERVER_IMPLIES=3D      PEERLIMITS PLUGINS LIBUV

MBEDTLS_LIB_DEPENDS=3D    libmbedtls.so:security/mbedtls
MBEDTLS_CMAKE_BOOL=3D     LWS_WITH_MBEDTLS
OPENSSL_USES=3D           ssl
OPENSSL_CMAKE_BOOL=3D     LWS_WITHOUT_BUILTIN_SHA1
# WolfSSL needs to be compiled with --enable-libwebsockets to work
# WOLFSSL_LIB_DEPENDS=3D  libwolfssl.so:security/wolfssl
# WOLFSSL_CMAKE_BOOL=3D   LWS_WITH_SSL LWS_WITH_WOLFSSL
# WOLFSSL_CMAKE_ON=3D     -DLWS_WOLFSSL_INCLUDE_DIRS=3D${LOCALBASE}/include=
 \
#                       -DLWS_WOLFSSL_LIBRARIES=3D${LOCALBASE}/lib/libwolfs=
sl.so

GLIB_USES=3D              gnome
GLIB_USE=3D               GNOME=3Dglib20
GLIB_CMAKE_BOOL=3D        LWS_WITH_GLIB
LIBEV_LIB_DEPENDS=3D      libev.so:devel/libev
LIBEV_CMAKE_BOOL=3D       LWS_WITH_LIBEV
LIBEVENT_LIB_DEPENDS=3D   libevent.so:devel/libevent
LIBEVENT_CMAKE_BOOL=3D    LWS_WITH_LIBEVENT
LIBUV_LIB_DEPENDS=3D      libuv.so:devel/libuv
LIBUV_CMAKE_BOOL=3D       LWS_WITH_LIBUV

.include <bsd.port.options.mk>

# Allow usage of LibreSSL via OPENSSL option
.if ${PORT_OPTIONS:MOPENSSL} && ${SSL_DEFAULT} =3D=3D libressl
CMAKE_ARGS+=3D=20=20=20
-DLWS_OPENSSL_LIBRARIES=3D'${OPENSSLLIB}/libtls.so;${OPENSSLLIB}/libssl.so;=
${OPENSSLLIB}/libcrypto.so'
-DLWS_OPENSSL_INCLUDE_DIRS=3D${OPENSSLINC}/ssl
.endif

.include <bsd.port.mk>
=3D=3D=3D=3D=3D=3D=3D=3D=3D

=3D=3D=3D=3D=3D=3D=3D=3D=3D
FAILED: src/mosquitto
: && /usr/bin/cc -O2 -pipe  -fstack-protector-strong -fno-strict-aliasing -=
O2
-pipe  -fstack-protector-strong -fno-strict-aliasing  -DNDEBUG
-fstack-protector-strong=20=20
-Wl,-dynamic-list=3D/usr/ports/net/mosquitto/work/mosquitto-2.0.15/src/link=
er.syms
src/CMakeFiles/mosquitto.dir/__/lib/alias_mosq.c.o
src/CMakeFiles/mosquitto.dir/bridge.c.o
src/CMakeFiles/mosquitto.dir/bridge_topic.c.o
src/CMakeFiles/mosquitto.dir/conf.c.o
src/CMakeFiles/mosquitto.dir/conf_includedir.c.o
src/CMakeFiles/mosquitto.dir/context.c.o
src/CMakeFiles/mosquitto.dir/control.c.o
src/CMakeFiles/mosquitto.dir/database.c.o
src/CMakeFiles/mosquitto.dir/handle_auth.c.o
src/CMakeFiles/mosquitto.dir/handle_connack.c.o
src/CMakeFiles/mosquitto.dir/handle_connect.c.o
src/CMakeFiles/mosquitto.dir/handle_disconnect.c.o
src/CMakeFiles/mosquitto.dir/__/lib/handle_ping.c.o
src/CMakeFiles/mosquitto.dir/__/lib/handle_pubackcomp.c.o
src/CMakeFiles/mosquitto.dir/handle_publish.c.o
src/CMakeFiles/mosquitto.dir/__/lib/handle_pubrec.c.o
src/CMakeFiles/mosquitto.dir/__/lib/handle_pubrel.c.o
src/CMakeFiles/mosquitto.dir/__/lib/handle_suback.c.o
src/CMakeFiles/mosquitto.dir/handle_subscribe.c.o
src/CMakeFiles/mosquitto.dir/__/lib/handle_unsuback.c.o
src/CMakeFiles/mosquitto.dir/handle_unsubscribe.c.o
src/CMakeFiles/mosquitto.dir/keepalive.c.o
src/CMakeFiles/mosquitto.dir/logging.c.o src/CMakeFiles/mosquitto.dir/loop.=
c.o
src/CMakeFiles/mosquitto.dir/__/lib/memory_mosq.c.o
src/CMakeFiles/mosquitto.dir/memory_public.c.o
src/CMakeFiles/mosquitto.dir/mosquitto.c.o
src/CMakeFiles/mosquitto.dir/__/lib/misc_mosq.c.o
src/CMakeFiles/mosquitto.dir/mux.c.o src/CMakeFiles/mosquitto.dir/mux_epoll=
.c.o
src/CMakeFiles/mosquitto.dir/mux_poll.c.o src/CMakeFiles/mosquitto.dir/net.=
c.o
src/CMakeFiles/mosquitto.dir/__/lib/net_mosq_ocsp.c.o
src/CMakeFiles/mosquitto.dir/__/lib/net_mosq.c.o
src/CMakeFiles/mosquitto.dir/__/lib/packet_datatypes.c.o
src/CMakeFiles/mosquitto.dir/__/lib/packet_mosq.c.o
src/CMakeFiles/mosquitto.dir/password_mosq.c.o
src/CMakeFiles/mosquitto.dir/persist_read_v234.c.o
src/CMakeFiles/mosquitto.dir/persist_read_v5.c.o
src/CMakeFiles/mosquitto.dir/persist_read.c.o
src/CMakeFiles/mosquitto.dir/persist_write_v5.c.o
src/CMakeFiles/mosquitto.dir/persist_write.c.o
src/CMakeFiles/mosquitto.dir/plugin.c.o
src/CMakeFiles/mosquitto.dir/plugin_public.c.o
src/CMakeFiles/mosquitto.dir/property_broker.c.o
src/CMakeFiles/mosquitto.dir/__/lib/property_mosq.c.o
src/CMakeFiles/mosquitto.dir/read_handle.c.o
src/CMakeFiles/mosquitto.dir/retain.c.o
src/CMakeFiles/mosquitto.dir/security.c.o
src/CMakeFiles/mosquitto.dir/security_default.c.o
src/CMakeFiles/mosquitto.dir/__/lib/send_mosq.c.o
src/CMakeFiles/mosquitto.dir/send_auth.c.o
src/CMakeFiles/mosquitto.dir/send_connack.c.o
src/CMakeFiles/mosquitto.dir/__/lib/send_connect.c.o
src/CMakeFiles/mosquitto.dir/__/lib/send_disconnect.c.o
src/CMakeFiles/mosquitto.dir/__/lib/send_publish.c.o
src/CMakeFiles/mosquitto.dir/send_suback.c.o
src/CMakeFiles/mosquitto.dir/signals.c.o
src/CMakeFiles/mosquitto.dir/__/lib/send_subscribe.c.o
src/CMakeFiles/mosquitto.dir/send_unsuback.c.o
src/CMakeFiles/mosquitto.dir/__/lib/send_unsubscribe.c.o
src/CMakeFiles/mosquitto.dir/session_expiry.c.o
src/CMakeFiles/mosquitto.dir/__/lib/strings_mosq.c.o
src/CMakeFiles/mosquitto.dir/subs.c.o src/CMakeFiles/mosquitto.dir/sys_tree=
.c.o
src/CMakeFiles/mosquitto.dir/__/lib/time_mosq.c.o
src/CMakeFiles/mosquitto.dir/__/lib/tls_mosq.c.o
src/CMakeFiles/mosquitto.dir/topic_tok.c.o
src/CMakeFiles/mosquitto.dir/__/lib/util_mosq.c.o
src/CMakeFiles/mosquitto.dir/__/lib/util_topic.c.o
src/CMakeFiles/mosquitto.dir/__/lib/utf8_mosq.c.o
src/CMakeFiles/mosquitto.dir/websockets.c.o
src/CMakeFiles/mosquitto.dir/will_delay.c.o
src/CMakeFiles/mosquitto.dir/__/lib/will_mosq.c.o -o src/mosquitto
-L/usr/local/lib -Wl,-rpath,/usr/local/lib:  -lssl  -lcrypto  -ldl  -lm  -l=
rt=20
/usr/local/lib/libwebsockets.a  -lssl  -lcrypto  -lz && :
ld: error: undefined symbol: pthread_create
>>> referenced by threadpool.c
>>>               threadpool.c.o:(lws_threadpool_create) in archive /usr/lo=
cal/lib/libwebsockets.a
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-262552-7788-C6RK93xShw>