package/libwebsockets: needs dynamic library

kismets fails to build statically with libwebsockets since commit
14522a8f9d because libwebsockets does not
specify any Libs.Private field in its pkg-config file resulting in the
following failure:

configure:10659: checking for lws_client_connect_via_info in -lwebsockets
configure:10684: /usr/lfs/hdd_v1/rc-buildroot-test/scripts/instance-1/output-1/host/bin/arm-linux-g++ -std=gnu++17 -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -O2   -static -static -O3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.cpp -lwebsockets  -latomic -lz >&5
/usr/lfs/hdd_v1/rc-buildroot-test/scripts/instance-1/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/9.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: /usr/lfs/hdd_v1/rc-buildroot-test/scripts/instance-1/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libwebsockets.a(tls.c.o): in function `alpn_cb':
tls.c:(.text+0x24): undefined reference to `SSL_select_next_proto'

As it is not trivial to specify Libs.Private with cmake buildsystem
(i.e. LIB_LIST contains the list of libraries but in the "cmake format"
with full paths and ';'), just disable static build with libwebsockets.

Fixes:
 - http://autobuild.buildroot.org/results/9fc7891b61b1c487b95f07c59b802dd98ef71e3a

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Fabrice Fontaine 2021-03-19 22:29:00 +01:00 committed by Thomas Petazzoni
parent 985c8bc9f1
commit 46a1e2847f
3 changed files with 5 additions and 5 deletions

View File

@ -1,5 +1,6 @@
config BR2_PACKAGE_LIBWEBSOCKETS
bool "libwebsockets"
depends on !BR2_STATIC_LIBS
select BR2_PACKAGE_ZLIB
help
Libwebsockets is a lightweight pure C library built to use
@ -7,3 +8,6 @@ config BR2_PACKAGE_LIBWEBSOCKETS
in both directions.
https://libwebsockets.org/
comment "libwebsockets needs a toolchain w/ dynamic library"
depends on BR2_STATIC_LIBS

View File

@ -69,10 +69,6 @@ else
LIBWEBSOCKETS_CONF_OPTS += -DLWS_WITH_LIBUV=OFF
endif
ifeq ($(BR2_STATIC_LIBS),y)
LIBWEBSOCKETS_CONF_OPTS += -DLWS_WITH_SHARED=OFF
endif
ifeq ($(BR2_SHARED_LIBS),y)
LIBWEBSOCKETS_CONF_OPTS += -DLWS_WITH_STATIC=OFF
endif

View File

@ -1,6 +1,6 @@
config BR2_PACKAGE_TTYD
bool "ttyd"
depends on !BR2_STATIC_LIBS # libuv
depends on !BR2_STATIC_LIBS # libuv, libwebsockets
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv
depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libuv, json-c
depends on BR2_USE_MMU # libuv