Files
2026-10-04 04:07:15 +00:00

82 lines
2.8 KiB
Makefile

PORTNAME= libwebsockets
DISTVERSIONPREFIX= v
DISTVERSION= 5.0.0
PORTREVISION= 1
CATEGORIES= net devel
MAINTAINER= bofh@FreeBSD.org
COMMENT= C library for lightweight websocket clients and servers
WWW= https://libwebsockets.org/
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE
USES= cmake localbase pkgconfig
USE_GITHUB= yes
GH_ACCOUNT= warmcat
USE_LDCONFIG= yes
BUILDINFO= ${HOSTARCH}-portbld-${OPSYS:tl}-${OSREL:R}
CMAKE_ARGS= -DLWS_BUILD_HASH:STRING="${BUILDINFO}"
CMAKE_ON= CMAKE_DISABLE_FIND_PACKAGE_Git LWS_IPV6 LWS_WITH_DISKCACHE \
LWS_WITH_FTS LWS_WITH_RANGES LWS_WITH_SSL LWS_WITH_THREADPOOL \
LWS_WITH_ZLIB LWS_WITHOUT_BUILTIN_SHA1 LWS_WITHOUT_TEST_CLIENT \
LWS_WITHOUT_TEST_PING LWS_WITHOUT_TEST_SERVER \
LWS_WITHOUT_TEST_SERVER_EXTPOLL LWS_WITHOUT_TESTAPPS
CMAKE_OFF= LWS_WITH_SCHANNEL
OPTIONS_DEFINE= HTTP2 HTTP3 HTTP_PROXY MQTT PEERLIMITS PLUGINS \
SECURE_STREAMS SOCKS SQLITE WEBSERVER
OPTIONS_DEFAULT= HTTP2 LIBUV MQTT OPENSSL
OPTIONS_GROUP= EVLOOP
OPTIONS_GROUP_EVLOOP= GLIB LIBEV LIBEVENT LIBUV
OPTIONS_SINGLE= SSL
OPTIONS_SINGLE_SSL= GNUTLS MBEDTLS OPENSSL
OPTIONS_SUB= yes
EVLOOP_DESC= Event loop support
GLIB_DESC= Events support via Glib
HTTP3_DESC= HTTP/3 or QUIC support
HTTP_PROXY_DESC= HTTP proxy support
LIBEVENT_DESC= Asynchronous event notification via libevent
LIBUV_DESC= Asynchronous I/O support via libuv
MQTT_DESC= MQTT client support
PEERLIMITS_DESC= Tracking and limiting of resources of peer(s)
PLUGINS_DESC= Plugins support
SECURE_STREAMS_DESC= Secure streams protocol API support
SOCKS_DESC= Allow use of SOCKS5 proxy on client connections
GLIB_USES= gnome
GLIB_USE= GNOME=glib20
GLIB_CMAKE_BOOL= LWS_WITH_GLIB
GNUTLS_LIB_DEPENDS= libgnutls.so:security/gnutls
GNUTLS_CMAKE_BOOL= LWS_WITH_GNUTLS
HTTP2_CMAKE_BOOL= LWS_WITH_HTTP2
HTTP3_IMPLIES= GNUTLS
HTTP3_CMAKE_BOOL= LWS_WITH_HTTP3
HTTP_PROXY_CMAKE_BOOL= LWS_WITH_HTTP_PROXY
LIBEVENT_LIB_DEPENDS= libevent.so:devel/libevent
LIBEVENT_CMAKE_BOOL= LWS_WITH_LIBEVENT
LIBEV_LIB_DEPENDS= libev.so:devel/libev
LIBEV_CMAKE_BOOL= LWS_WITH_LIBEV
LIBUV_LIB_DEPENDS= libuv.so:devel/libuv
LIBUV_CMAKE_BOOL= LWS_WITH_LIBUV
MBEDTLS_LIB_DEPENDS= libmbedtls.so:security/mbedtls3
MBEDTLS_CMAKE_BOOL= LWS_WITH_MBEDTLS
MQTT_CMAKE_BOOL= LWS_ROLE_MQTT LWS_WITH_EXTERNAL_POLL
OPENSSL_USES= ssl
OPENSSL_CMAKE_BOOL= LWS_WITHOUT_BUILTIN_SHA1
PEERLIMITS_CMAKE_BOOL= LWS_WITH_PEER_LIMITS
PLUGINS_CMAKE_BOOL= LWS_WITH_PLUGINS LWS_WITH_PLUGINS_API
PLUGINS_CMAKE_BOOL_OFF= DISABLE_WERROR
SECURE_STREAMS_CMAKE_BOOL= LWS_WITH_SECURE_STREAMS \
LWS_WITH_SECURE_STREAMS_PROXY_API
SOCKS_CMAKE_BOOL= LWS_WITH_SOCKS5
SQLITE_LIB_DEPENDS= libsqlite3.so:databases/sqlite3
SQLITE_CMAKE_BOOL= LWS_WITH_SQLITE3
WEBSERVER_IMPLIES= LIBUV PEERLIMITS PLUGINS
WEBSERVER_CMAKE_BOOL= LWS_WITH_LWSWS
.include <bsd.port.mk>