# Copyright 1999-2023 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/19" # libwebsockets.so.19 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=" sys-libs/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:= ) )" 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 ) cmake_src_configure }