blob: fef44cb5492c6f33ec303b7dff65e8f0a0e2b671 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
|
# 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
}
|