commit:     998113d282c1a6d2fb7e36dd9f7ca1bebe663eeb
Author:     Azamat H. Hackimov <azamat.hackimov <AT> gmail <DOT> com>
AuthorDate: Wed Feb 11 14:07:09 2026 +0000
Commit:     Mike Pagano <mpagano <AT> gentoo <DOT> org>
CommitDate: Wed Feb 11 20:04:29 2026 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=998113d2

net-libs/libwebsockets: use mbedtls:3

Migrate package to use mbedtls:3, minor fixes.

Closes: https://bugs.gentoo.org/969908
Signed-off-by: Azamat H. Hackimov <azamat.hackimov <AT> gmail.com>
Part-of: https://github.com/gentoo/gentoo/pull/45758
Closes: https://github.com/gentoo/gentoo/pull/45758
Signed-off-by: Mike Pagano <mpagano <AT> gentoo.org>

 .../libwebsockets/libwebsockets-4.5.2-r1.ebuild    | 88 ++++++++++++++++++++++
 1 file changed, 88 insertions(+)

diff --git a/net-libs/libwebsockets/libwebsockets-4.5.2-r1.ebuild 
b/net-libs/libwebsockets/libwebsockets-4.5.2-r1.ebuild
new file mode 100644
index 000000000000..dd06f011e846
--- /dev/null
+++ b/net-libs/libwebsockets/libwebsockets-4.5.2-r1.ebuild
@@ -0,0 +1,88 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="A flexible pure-C library for implementing network protocols"
+HOMEPAGE="https://libwebsockets.org/";
+SRC_URI="https://github.com/warmcat/libwebsockets/archive/v${PV}.tar.gz -> 
${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/20" # libwebsockets.so.20
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+IUSE="access-log caps cgi client dbus extensions generic-sessions http-proxy 
http2 ipv6
+       +lejp libev libevent libuv mbedtls peer-limits server-status smtp socks5
+       sqlite3 ssl threads zip"
+
+REQUIRED_USE="
+       access-log? ( http2 )
+       generic-sessions? ( smtp sqlite3 )
+       http-proxy? ( client )
+       mbedtls? ( ssl )
+       smtp? ( libuv )
+       socks5? ( client http-proxy )
+       ?? ( libev libevent )"
+
+RDEPEND="
+       virtual/zlib:=
+       caps? ( sys-libs/libcap )
+       dbus? ( sys-apps/dbus )
+       http-proxy? ( net-libs/libhubbub )
+       libev? ( dev-libs/libev )
+       libevent? ( dev-libs/libevent:= )
+       libuv? ( dev-libs/libuv:= )
+       sqlite3? ( dev-db/sqlite:= )
+       ssl? (
+               !mbedtls? ( dev-libs/openssl:0= )
+               mbedtls? ( net-libs/mbedtls:3= )
+       )"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       dev-lang/perl
+       virtual/pkgconfig"
+
+src_configure() {
+       local mycmakeargs=(
+               -DCMAKE_DISABLE_FIND_PACKAGE_Git=ON
+               -DDISABLE_WERROR=ON
+               -DLWS_BUILD_HASH="unknown"
+               -DLWS_HAVE_LIBCAP=$(usex caps)
+               -DLWS_IPV6=$(usex ipv6)
+               -DLWS_ROLE_DBUS=$(usex dbus)
+               -DLWS_WITHOUT_CLIENT=$(usex !client)
+               -DLWS_WITHOUT_TEST_CLIENT=$(usex !client)
+               -DLWS_WITH_ACCESS_LOG=$(usex access-log)
+               -DLWS_WITH_CGI=$(usex cgi)
+               -DLWS_WITH_GENERIC_SESSIONS=$(usex generic-sessions)
+               -DLWS_WITH_HTTP2=$(usex http2)
+               -DLWS_WITH_HTTP_PROXY=$(usex http-proxy)
+               -DLWS_WITH_HUBBUB=$(usex http-proxy)
+               -DLWS_WITH_LEJP=$(usex lejp)
+               -DLWS_WITH_LIBEV=$(usex libev)
+               -DLWS_WITH_LIBEVENT=$(usex libevent)
+               -DLWS_WITH_LIBUV=$(usex libuv)
+               -DLWS_WITH_MBEDTLS=$(usex mbedtls)
+               -DLWS_WITH_PEER_LIMITS=$(usex peer-limits)
+               -DLWS_WITH_SERVER_STATUS=$(usex server-status)
+               -DLWS_WITH_SMTP=$(usex smtp)
+               -DLWS_WITH_SOCKS5=$(usex socks5)
+               -DLWS_WITH_SQLITE3=$(usex sqlite3)
+               -DLWS_WITH_SSL=$(usex ssl)
+               -DLWS_WITH_STATIC=OFF
+               -DLWS_WITH_STRUCT_JSON=$(usex lejp)
+               -DLWS_WITH_THREADPOOL=$(usex threads)
+               -DLWS_WITH_ZIP_FOPS=$(usex zip)
+               -DLWS_WITHOUT_EXTENSIONS=$(usex !extensions)
+               -DLWS_WITHOUT_TESTAPPS=ON
+       )
+       use mbedtls && mycmakeargs+=(
+               -DLWS_MBEDTLS_INCLUDE_DIRS="/usr/include/mbedtls3"
+               -DMBEDTLS_LIBRARY="mbedtls-3.so"
+               -DMBEDX509_LIBRARY="mbedx509-3.so"
+               -DMBEDCRYPTO_LIBRARY="mbedcrypto-3.so"
+       )
+
+       cmake_src_configure
+}

Reply via email to