From 9e303ef71ce18ffd01ed7a63badf59ea015089c7 Mon Sep 17 00:00:00 2001 From: Fabio Alessandrelli Date: Mon, 24 Jun 2019 15:46:24 +0200 Subject: WebSocket module now uses wslay library. Both client and server are supported on native builds (as usual). SSL server is still not supported, but will soon be possible with this new library. The API stays the same, we just need to work out potential issues due to this big library switch. --- modules/websocket/SCsub | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) (limited to 'modules/websocket/SCsub') diff --git a/modules/websocket/SCsub b/modules/websocket/SCsub index be26b08a60..e8d094fd7f 100644 --- a/modules/websocket/SCsub +++ b/modules/websocket/SCsub @@ -5,7 +5,7 @@ Import('env_modules') # Thirdparty source files -env_lws = env_modules.Clone() +env_ws = env_modules.Clone() if env['builtin_libwebsockets'] and not env["platform"] == "javascript": # already builtin for javascript thirdparty_dir = "#thirdparty/libwebsockets/" @@ -90,4 +90,23 @@ if env['builtin_libwebsockets'] and not env["platform"] == "javascript": # alrea env_thirdparty.disable_warnings() env_thirdparty.add_source_files(env.modules_sources, thirdparty_sources) -env_lws.add_source_files(env.modules_sources, "*.cpp") + wslay_dir = "#thirdparty/wslay/" + wslay_sources = [ + "wslay_net.c", + "wslay_event.c", + "wslay_queue.c", + "wslay_stack.c", + "wslay_frame.c", + ] + wslay_sources = [wslay_dir + s for s in wslay_sources] + env_ws.Prepend(CPPPATH=[wslay_dir + "includes/"]) + env_ws.Append(CPPFLAGS=["-DHAVE_CONFIG_H"]) + if env["platform"] == "windows" or env["platform"] == "uwp": + env_ws.Append(CPPFLAGS=["-DHAVE_WINSOCK2_H"]) + else: + env_ws.Append(CPPFLAGS=["-DHAVE_NETINET_IN_H"]) + env_wslay = env_ws.Clone() + env_wslay.disable_warnings() + env_wslay.add_source_files(env.modules_sources, wslay_sources) + +env_ws.add_source_files(env.modules_sources, "*.cpp") -- cgit v1.2.3