xref: /OK3568_Linux_fs/buildroot/package/libwebsockets/libwebsockets.mk (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun################################################################################
2*4882a593Smuzhiyun#
3*4882a593Smuzhiyun# libwebsockets
4*4882a593Smuzhiyun#
5*4882a593Smuzhiyun################################################################################
6*4882a593Smuzhiyun
7*4882a593SmuzhiyunLIBWEBSOCKETS_VERSION = 4.0.21
8*4882a593SmuzhiyunLIBWEBSOCKETS_SITE = $(call github,warmcat,libwebsockets,v$(LIBWEBSOCKETS_VERSION))
9*4882a593SmuzhiyunLIBWEBSOCKETS_LICENSE = MIT with exceptions
10*4882a593SmuzhiyunLIBWEBSOCKETS_LICENSE_FILES = LICENSE
11*4882a593SmuzhiyunLIBWEBSOCKETS_DEPENDENCIES = zlib
12*4882a593SmuzhiyunLIBWEBSOCKETS_INSTALL_STAGING = YES
13*4882a593SmuzhiyunLIBWEBSOCKETS_CONF_OPTS = \
14*4882a593Smuzhiyun	-DLWS_WITHOUT_TESTAPPS=ON \
15*4882a593Smuzhiyun	-DLWS_IPV6=ON \
16*4882a593Smuzhiyun	-DLWS_UNIX_SOCK=ON \
17*4882a593Smuzhiyun	-DLWS_WITHOUT_EXTENSIONS=OFF
18*4882a593Smuzhiyun
19*4882a593Smuzhiyun# If LWS_MAX_SMP=1, then there is no code related to pthreads compiled
20*4882a593Smuzhiyun# in the library. If unset, LWS_MAX_SMP defaults to 32 and a small
21*4882a593Smuzhiyun# amount of pthread mutex code is built into the library.
22*4882a593Smuzhiyunifeq ($(BR2_TOOLCHAIN_HAS_THREADS),)
23*4882a593SmuzhiyunLIBWEBSOCKETS_CONF_OPTS += -DLWS_MAX_SMP=1
24*4882a593Smuzhiyunelse
25*4882a593SmuzhiyunLIBWEBSOCKETS_CONF_OPTS += -DLWS_MAX_SMP=
26*4882a593Smuzhiyunendif
27*4882a593Smuzhiyun
28*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_OPENSSL),y)
29*4882a593SmuzhiyunLIBWEBSOCKETS_DEPENDENCIES += openssl host-openssl
30*4882a593SmuzhiyunLIBWEBSOCKETS_CONF_OPTS += -DLWS_WITH_SSL=ON
31*4882a593Smuzhiyunelse
32*4882a593SmuzhiyunLIBWEBSOCKETS_CONF_OPTS += -DLWS_WITH_SSL=OFF
33*4882a593Smuzhiyunendif
34*4882a593Smuzhiyun
35*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_LIBEV),y)
36*4882a593SmuzhiyunLIBWEBSOCKETS_DEPENDENCIES += libev
37*4882a593SmuzhiyunLIBWEBSOCKETS_CONF_OPTS += \
38*4882a593Smuzhiyun	-DLWS_WITH_LIBEV=ON \
39*4882a593Smuzhiyun	-DLWS_WITH_LIBEVENT=OFF
40*4882a593Smuzhiyunelse ifeq ($(BR2_PACKAGE_LIBEVENT),y)
41*4882a593SmuzhiyunLIBWEBSOCKETS_DEPENDENCIES += libevent
42*4882a593SmuzhiyunLIBWEBSOCKETS_CONF_OPTS += \
43*4882a593Smuzhiyun	-DLWS_WITH_LIBEV=OFF \
44*4882a593Smuzhiyun	-DLWS_WITH_LIBEVENT=ON
45*4882a593Smuzhiyunelse
46*4882a593SmuzhiyunLIBWEBSOCKETS_CONF_OPTS += \
47*4882a593Smuzhiyun	-DLWS_WITH_LIBEV=OFF \
48*4882a593Smuzhiyun	-DLWS_WITH_LIBEVENT=OFF
49*4882a593Smuzhiyunendif
50*4882a593Smuzhiyun
51*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_LIBGLIB2),y)
52*4882a593SmuzhiyunLIBWEBSOCKETS_DEPENDENCIES += libglib2
53*4882a593SmuzhiyunLIBWEBSOCKETS_CONF_OPTS += -DLWS_WITH_GLIB=ON
54*4882a593Smuzhiyunelse
55*4882a593SmuzhiyunLIBWEBSOCKETS_CONF_OPTS += -DLWS_WITH_GLIB=OFF
56*4882a593Smuzhiyunendif
57*4882a593Smuzhiyun
58*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBMOUNT),y)
59*4882a593SmuzhiyunLIBWEBSOCKETS_DEPENDENCIES += util-linux
60*4882a593SmuzhiyunLIBWEBSOCKETS_CONF_OPTS += -DLWS_WITH_FSMOUNT=ON
61*4882a593Smuzhiyunelse
62*4882a593SmuzhiyunLIBWEBSOCKETS_CONF_OPTS += -DLWS_WITH_FSMOUNT=OFF
63*4882a593Smuzhiyunendif
64*4882a593Smuzhiyun
65*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_LIBUV),y)
66*4882a593SmuzhiyunLIBWEBSOCKETS_DEPENDENCIES += libuv
67*4882a593SmuzhiyunLIBWEBSOCKETS_CONF_OPTS += -DLWS_WITH_LIBUV=ON
68*4882a593Smuzhiyunelse
69*4882a593SmuzhiyunLIBWEBSOCKETS_CONF_OPTS += -DLWS_WITH_LIBUV=OFF
70*4882a593Smuzhiyunendif
71*4882a593Smuzhiyun
72*4882a593Smuzhiyunifeq ($(BR2_SHARED_LIBS),y)
73*4882a593SmuzhiyunLIBWEBSOCKETS_CONF_OPTS += -DLWS_WITH_STATIC=OFF
74*4882a593Smuzhiyunendif
75*4882a593Smuzhiyun
76*4882a593Smuzhiyun$(eval $(cmake-package))
77