1*4882a593SmuzhiyunSUMMARY = "Canonical libwebsockets.org websocket library"
2*4882a593SmuzhiyunHOMEPAGE = "https://libwebsockets.org/"
3*4882a593SmuzhiyunLICENSE = "MIT & Zlib & BSD-3-Clause & Apache-2.0"
4*4882a593SmuzhiyunLIC_FILES_CHKSUM = "file://LICENSE;md5=c8bea43a2eb5d713c338819a0be07797"
5*4882a593Smuzhiyun
6*4882a593SmuzhiyunDEPENDS = "zlib"
7*4882a593Smuzhiyun
8*4882a593SmuzhiyunS = "${WORKDIR}/git"
9*4882a593SmuzhiyunSRCREV = "8d605f0649ed1ab6d27a443c7688598ea21fdb75"
10*4882a593SmuzhiyunSRC_URI = "git://github.com/warmcat/libwebsockets.git;protocol=https;branch=v4.2-stable"
11*4882a593Smuzhiyun
12*4882a593SmuzhiyunUPSTREAM_CHECK_URI = "https://github.com/warmcat/${BPN}/releases"
13*4882a593SmuzhiyunUPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)"
14*4882a593Smuzhiyun
15*4882a593Smuzhiyuninherit cmake pkgconfig
16*4882a593Smuzhiyun
17*4882a593SmuzhiyunPACKAGECONFIG ?= "libuv client server http2 ssl"
18*4882a593SmuzhiyunPACKAGECONFIG[client] = "-DLWS_WITHOUT_CLIENT=OFF,-DLWS_WITHOUT_CLIENT=ON,"
19*4882a593SmuzhiyunPACKAGECONFIG[http2] = "-DLWS_WITH_HTTP2=ON,-DLWS_WITH_HTTP2=OFF,"
20*4882a593SmuzhiyunPACKAGECONFIG[ipv6] = "-DLWS_IPV6=ON,-DLWS_IPV6=OFF,"
21*4882a593SmuzhiyunPACKAGECONFIG[libevent] = "-DLWS_WITH_LIBEVENT=ON,-DLWS_WITH_LIBEVENT=OFF,libevent"
22*4882a593SmuzhiyunPACKAGECONFIG[libev] = "-DLWS_WITH_LIBEV=ON,-DLWS_WITH_LIBEV=OFF,libev"
23*4882a593SmuzhiyunPACKAGECONFIG[libuv] = "-DLWS_WITH_LIBUV=ON,-DLWS_WITH_LIBUV=OFF,libuv"
24*4882a593SmuzhiyunPACKAGECONFIG[server] = "-DLWS_WITHOUT_SERVER=OFF,-DLWS_WITHOUT_SERVER=ON,"
25*4882a593SmuzhiyunPACKAGECONFIG[ssl] = "-DLWS_WITH_SSL=ON,-DLWS_WITH_SSL=OFF,openssl"
26*4882a593SmuzhiyunPACKAGECONFIG[static] = "-DLWS_WITH_STATIC=ON,-DLWS_WITH_STATIC=OFF -DLWS_LINK_TESTAPPS_DYNAMIC=ON,"
27*4882a593Smuzhiyun
28*4882a593SmuzhiyunEXTRA_OECMAKE += " \
29*4882a593Smuzhiyun    -DLIB_SUFFIX=${@d.getVar('baselib').replace('lib', '')} \
30*4882a593Smuzhiyun"
31*4882a593Smuzhiyun
32*4882a593SmuzhiyunPACKAGES =+ "${PN}-testapps ${PN}-evlib-event ${PN}-evlib-uv ${PN}-evlib-ev"
33*4882a593Smuzhiyun
34*4882a593SmuzhiyunFILES:${PN}-testapps += "${datadir}/libwebsockets-test-server/* ${bindir}/libwebsockets-test-*"
35*4882a593SmuzhiyunFILES:${PN}-evlib-event += "${libdir}/libwebsockets-evlib_event.so"
36*4882a593SmuzhiyunFILES:${PN}-evlib-uv += "${libdir}/libwebsockets-evlib_uv.so"
37*4882a593SmuzhiyunFILES:${PN}-evlib-ev += "${libdir}/libwebsockets-evlib_ev.so"
38*4882a593Smuzhiyun
39*4882a593SmuzhiyunRDEPENDS:${PN} += " ${@bb.utils.contains('PACKAGECONFIG', 'libevent', '${PN}-evlib-event', '', d)}"
40*4882a593SmuzhiyunRDEPENDS:${PN} += " ${@bb.utils.contains('PACKAGECONFIG', 'libuv', '${PN}-evlib-uv', '', d)}"
41*4882a593SmuzhiyunRDEPENDS:${PN} += " ${@bb.utils.contains('PACKAGECONFIG', 'libev', '${PN}-evlib-ev', '', d)}"
42*4882a593Smuzhiyun
43*4882a593SmuzhiyunRDEPENDS:${PN}-dev += " ${@bb.utils.contains('PACKAGECONFIG', 'static', '${PN}-staticdev', '', d)}"
44*4882a593Smuzhiyun
45*4882a593Smuzhiyun# Avoid absolute paths to end up in the sysroot.
46*4882a593SmuzhiyunSSTATE_SCAN_FILES += "*.cmake"
47