# Buildsheet autogenerated by ravenadm tool -- Do not edit.

NAMEBASE=		libwebsockets
VERSION=		4.3.5
KEYWORDS=		net devel
VARIANTS=		std
SDESC[std]=		Lightweight C library for Websockets
HOMEPAGE=		https://libwebsockets.org/
CONTACT=		nobody

DOWNLOAD_GROUPS=	main
SITES[main]=		GITHUB/warmcat:libwebsockets:v4.3.5
DISTFILE[1]=		generated:main
DF_INDEX=		1
SPKGS[std]=		set
			primary
			dev

OPTIONS_AVAILABLE=	none
OPTIONS_STANDARD=	none

BUILD_DEPENDS=		libuv:dev:std
BUILDRUN_DEPENDS=	libuv:primary:std

USES=			cmake pkgconfig zlib ssl

LICENSE=		MIT:primary
LICENSE_FILE=		MIT:{{WRKSRC}}/LICENSE
LICENSE_SCHEME=		solo

FPC_EQUIVALENT=		net/libwebsockets

CFLAGS=			-I{{OPENSSLINC}}
LDFLAGS=		-D{{OPENSSLLIB}}
CMAKE_ARGS=		-DLWS_BUILD_HASH:STRING="{{CONFIGURE_TARGET}}"
			-DCMAKE_DISABLE_FIND_PACKAGE_Git:BOOL=ON
			-DDISABLE_WERROR:BOOL=ON
			-DLWS_WITH_DISKCACHE:BOOL=ON
			-DLWS_WITH_FTS:BOOL=ON
			-DLWS_IPV6:BOOL=ON
			-DLWS_WITH_RANGES:BOOL=ON
			-DLWS_WITH_SSL:BOOL=ON
			-DLWS_WITH_THREADPOOL:BOOL=ON
			-DLWS_WITH_ZLIB:BOOL=ON
			-DLWS_WITHOUT_BUILTIN_SHA1:BOOL=ON
			-DLWS_WITHOUT_TESTAPPS:BOOL=ON
			-DLWS_WITHOUT_TEST_SERVER:BOOL=ON
			-DLWS_WITH_HTTP2:BOOL=ON
			-DLWS_ROLE_MQTT:BOOL=ON
			-DLWS_WITH_EXTERNAL_POLL:BOOL=ON
			-DLWS_WITH_HTTP_PROXY:BOOL=ON
			-DLWS_WITH_SECURE_STREAMS:BOOL=ON
			-DLWS_WITH_SECURE_STREAMS_PROXY_API:BOOL=ON
			-DLWS_WITH_SOCKS5:BOOL=ON
			-DLWS_WITH_LIBUV:BOOL=ON
			-DLWS_WITH_GLIB:BOOL=OFF
			-DLWS_WITH_LIBEV:BOOL=OFF
			-DLWS_WITH_LIBEVENT:BOOL=OFF
			-DLWS_WITH_MBEDTLS:BOOL=OFF
			-DLWS_WITH_PEER_LIMITS:BOOL=OFF
			-DLWS_WITH_PLUGINS:BOOL=OFF
			-DLWS_WITH_PLUGINS_API:BOOL=OFF
			-DLWS_WITH_SQLITE3:BOOL=OFF
			-DLWS_WITH_LWSWS:BOOL=OFF
			-DCMAKE_POLICY_VERSION_MINIMUM=3.5
			-DLWS_HAVE_HMAC_CTX_new:BOOL=ON
			-DLWS_HAVE_EVP_MD_CTX_free:BOOL=ON
			-DLWS_HAVE_SSL_EXTRA_CHAIN_CERTS:BOOL=ON

post-install:
	${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/lib*.so

[FILE:304:descriptions/desc.primary]
Libwebsockets (LWS) is a flexible, lightweight pure C library for
implementing modern network protocols easily with a tiny footprint, using
a nonblocking event loop. It has been developed continuously since 2010
and is used in tens of millions of devices and by thousands of developers
around the world.


[FILE:113:distinfo]
87f99ad32803ed325fceac5327aae1f5c1b417d54ee61ad36cffc8df5f5ab276     15620674 warmcat-libwebsockets-4.3.5.tar.gz


[FILE:53:manifests/plist.primary]
lib/
 libwebsockets-evlib_uv.so
 libwebsockets.so.19


[FILE:1689:manifests/plist.dev]
include/
 libwebsockets.h
 lws_config.h
include/libwebsockets/
 lws-adopt.h
 lws-async-dns.h
 lws-bb-i2c.h
 lws-bb-spi.h
 lws-button.h
 lws-cache-ttl.h
 lws-callbacks.h
 lws-cgi.h
 lws-client.h
 lws-conmon.h
 lws-context-vhost.h
 lws-cose.h
 lws-dbus.h
 lws-diskcache.h
 lws-display.h
 lws-dll2.h
 lws-dsh.h
 lws-eventlib-exports.h
 lws-fault-injection.h
 lws-freertos.h
 lws-fts.h
 lws-genaes.h
 lws-gencrypto.h
 lws-genec.h
 lws-genhash.h
 lws-genrsa.h
 lws-gpio.h
 lws-http.h
 lws-i2c.h
 lws-ili9341-spi.h
 lws-jose.h
 lws-jwe.h
 lws-jwk.h
 lws-jws.h
 lws-lecp.h
 lws-led.h
 lws-lejp.h
 lws-logs.h
 lws-lwsac.h
 lws-map.h
 lws-metrics.h
 lws-misc.h
 lws-mqtt.h
 lws-netdev.h
 lws-network-helper.h
 lws-optee.h
 lws-protocols-plugins.h
 lws-purify.h
 lws-pwm.h
 lws-retry.h
 lws-ring.h
 lws-secure-streams-client.h
 lws-secure-streams-policy.h
 lws-secure-streams.h
 lws-sequencer.h
 lws-service.h
 lws-settings.h
 lws-sha1-base64.h
 lws-smd.h
 lws-spa.h
 lws-spi.h
 lws-ssd1306-i2c.h
 lws-state.h
 lws-struct.h
 lws-system.h
 lws-test-sequencer.h
 lws-threadpool.h
 lws-timeout-timer.h
 lws-tls-sessions.h
 lws-tokenize.h
 lws-vfs.h
 lws-write.h
 lws-writeable.h
 lws-ws-close.h
 lws-ws-ext.h
 lws-ws-state.h
 lws-x509.h
include/libwebsockets/abstract/
 abstract.h
 protocols.h
 transports.h
include/libwebsockets/abstract/protocols/smtp.h
include/libwebsockets/abstract/transports/
 raw-skt.h
 unit-test.h
lib/
 libwebsockets.a
 libwebsockets.so
lib/cmake/libwebsockets/
 LibwebsocketsTargets-release.cmake
 LibwebsocketsTargets.cmake
 LwsCheckRequirements.cmake
 libwebsockets-config-version.cmake
 libwebsockets-config.cmake
lib/pkgconfig/
 libwebsockets.pc
 libwebsockets_static.pc


[FILE:636:patches/patch-include_libwebsockets.h]
--- include/libwebsockets.h.orig	2025-02-28 06:41:45 UTC
+++ include/libwebsockets.h
@@ -142,7 +142,7 @@ typedef int suseconds_t;
 #include <sys/capability.h>
 #endif
 
-#if defined(__NetBSD__) || defined(__FreeBSD__) || defined(__QNX__) || defined(__OpenBSD__)
+#if defined(__NetBSD__) || defined(__FreeBSD__) || defined(__QNX__) || defined(__OpenBSD__) || defined(__DragonFly__)
 #include <sys/socket.h>
 #include <netinet/in.h>
 #endif
@@ -169,7 +169,7 @@ typedef int suseconds_t;
 #endif
 #endif
 
-#if defined(__FreeBSD__)
+#if defined(__FreeBSD__) || defined(__DragonFly__)
 #include <sys/signal.h>
 #endif
 #if defined(__GNUC__)


[FILE:445:patches/patch-lib_CMakeLists.txt]
--- lib/CMakeLists.txt.orig	2025-02-28 06:41:45 UTC
+++ lib/CMakeLists.txt
@@ -229,6 +229,7 @@ if (LWS_WITH_SHARED)
 	if (UNIX AND LWS_WITH_PLUGINS_API)
 		set (CMAKE_POSITION_INDEPENDENT_CODE ON)
 		if (NOT((${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD") OR
+		   (${CMAKE_SYSTEM_NAME} MATCHES "DragonFly|MidnightBSD|NetBSD") OR
 		   (${CMAKE_SYSTEM_NAME} MATCHES "OpenBSD") OR
 		   (${CMAKE_SYSTEM_NAME} MATCHES "QNX")))
 		   if (LWS_WITH_SHARED)


[FILE:392:patches/patch-lib_core-net_client_connect2.c]
--- lib/core-net/client/connect2.c.orig	2025-02-28 06:41:45 UTC
+++ lib/core-net/client/connect2.c
@@ -49,7 +49,7 @@ lws_getaddrinfo46(struct lws *wsi, const
 
 #if !defined(__ANDROID__)
 		hints.ai_family = AF_UNSPEC;
-#if !defined(__OpenBSD__) && !defined(__OPENBSD)
+#if !defined(__OpenBSD__) && !defined(__OPENBSD) && !defined(__NetBSD__)
 		hints.ai_flags = AI_V4MAPPED;
 #endif
 #endif


[FILE:327:patches/patch-lib_plat_unix_private-lib-plat-unix.h]
--- lib/plat/unix/private-lib-plat-unix.h.orig	2025-02-28 06:41:45 UTC
+++ lib/plat/unix/private-lib-plat-unix.h
@@ -53,7 +53,7 @@
 #if defined(__APPLE__)
 #include <machine/endian.h>
 #endif
-#if defined(__FreeBSD__)
+#if defined(__FreeBSD__) || defined(__DragonFly__)
 #include <sys/endian.h>
 #endif
 #if defined(__linux__)


[FILE:1339:patches/patch-lib_plat_unix_unix-socket.c]
--- lib/plat/unix/unix-sockets.c.orig	2025-02-28 06:41:45 UTC
+++ lib/plat/unix/unix-sockets.c
@@ -105,6 +105,7 @@ lws_plat_set_socket_options(struct lws_v
 	socklen_t optlen = sizeof(optval);
 
 #if defined(__APPLE__) || \
+    defined(__DragonFly__) || \
     defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || \
     defined(__NetBSD__) || \
     defined(__OpenBSD__) || \
@@ -122,6 +123,7 @@ lws_plat_set_socket_options(struct lws_v
 			return 1;
 
 #if defined(__APPLE__) || \
+    defined(__DragonFly__) || \
     defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || \
     defined(__NetBSD__) || \
     defined(__CYGWIN__) || defined(__OpenBSD__) || defined (__sun) || \
@@ -175,6 +177,7 @@ lws_plat_set_socket_options(struct lws_v
 	if (!unix_skt && setsockopt(fd, IPPROTO_TCP, TCP_NODELAY, (const void *)&optval, optlen) < 0)
 		return 1;
 #elif !defined(__APPLE__) && \
+      !defined(__DragonFly__) && \
       !defined(__FreeBSD__) && !defined(__FreeBSD_kernel__) &&        \
       !defined(__NetBSD__) && \
       !defined(__OpenBSD__) && \
@@ -233,6 +236,7 @@ lws_plat_set_socket_options_ip(lws_sockf
 #endif
 
 #if !defined(__APPLE__) && \
+      !defined(__DragonFly__) && \
       !defined(__FreeBSD__) && !defined(__FreeBSD_kernel__) &&        \
       !defined(__NetBSD__) && \
       !defined(__OpenBSD__) && \


[FILE:470:patches/patch-lib_plat_unix_unix-spawn.c]
--- lib/plat/unix/unix-spawn.c.orig	2025-02-28 06:41:45 UTC
+++ lib/plat/unix/unix-spawn.c
@@ -461,7 +461,7 @@ lws_spawn_piped(const struct lws_spawn_p
 	if (lsp->info.disable_ctrlc)
 		/* stops non-daemonized main processess getting SIGINT
 		 * from TTY */
-#if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__)
+#if defined(__DragonFly__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__)
 		setpgid(0, 0);
 #else
 		setpgrp();