1
0
Fork 0
mirror of https://github.com/warmcat/libwebsockets.git synced 2025-03-16 00:00:07 +01:00
libwebsockets/minimal-examples/api-tests
Andy Green c6c7ab2b44 event libs: default to building as dynamically loaded plugins
Event lib support as it has been isn't scaling well, at the low level
libevent and libev headers have a namespace conflict so they can't
both be built into the same image, and at the distro level, binding
all the event libs to libwebsockets.so makes a bloaty situation for
packaging, lws will drag in all the event libs every time.

This patch implements the plan discussed here

https://github.com/warmcat/libwebsockets/issues/1980

and refactors the event lib support so they are built into isolated
plugins and bound at runtime according to what the application says
it wants to use.  The event lib plugins can be packaged individually
so that only the needed sets of support are installed (perhaps none
of them if the user code is OK with the default poll() loop).  And
dependent user code can mark the specific event loop plugin package
as required so pieces are added as needed.

The eventlib-foreign example is also refactored to build the selected
lib support isolated.

A readme is added detailing the changes and how to use them.

https://libwebsockets.org/git/libwebsockets/tree/READMEs/README.event-libs.md
2020-08-31 16:51:37 +01:00
..
api-test-async-dns cmake: mark all the subprojects as explicitly C 2020-08-31 16:51:36 +01:00
api-test-dhcpc cmake: mark all the subprojects as explicitly C 2020-08-31 16:51:36 +01:00
api-test-fts cmake: mark all the subprojects as explicitly C 2020-08-31 16:51:36 +01:00
api-test-gencrypto cmake: mark all the subprojects as explicitly C 2020-08-31 16:51:36 +01:00
api-test-jose cmake: mark all the subprojects as explicitly C 2020-08-31 16:51:36 +01:00
api-test-lejp lws_json_simple: allow running into end 2020-07-15 16:18:00 +01:00
api-test-lws_dsh cmake: mark all the subprojects as explicitly C 2020-08-31 16:51:36 +01:00
api-test-lws_sequencer cmake: mark all the subprojects as explicitly C 2020-08-31 16:51:36 +01:00
api-test-lws_smd cmake: mark all the subprojects as explicitly C 2020-08-31 16:51:36 +01:00
api-test-lws_struct-json event libs: default to building as dynamically loaded plugins 2020-08-31 16:51:37 +01:00
api-test-lws_struct_sqlite cmake: mark all the subprojects as explicitly C 2020-08-31 16:51:36 +01:00
api-test-lws_tokenize cmake: mark all the subprojects as explicitly C 2020-08-31 16:51:36 +01:00
api-test-lwsac cmake: mark all the subprojects as explicitly C 2020-08-31 16:51:36 +01:00
api-test-secure-streams cmake: mark all the subprojects as explicitly C 2020-08-31 16:51:36 +01:00
api-test-smtp_client cmake: mark all the subprojects as explicitly C 2020-08-31 16:51:36 +01:00
README.md smtp: make abstract 2019-05-04 08:28:31 +01:00

These are buildable test apps that run in CI to confirm correct api operation.

name tests
api-test-lwsac LWS Allocated Chunks api
api-test-lws_struct-json Selftests for lws_struct JSON serialization and deserialization
api-test-lws_tokenize Generic secure string tokenizer api
api-test-fts LWS Full-text Search api
api-test-gencrypto LWS Generic Crypto apis
api-test-jose LWS JOSE apis
api-test-smtp_client SMTP client for sending emails