Skip to content

Commit c2dad50

Browse files
committed
fixes and optional websockets
1 parent 919d480 commit c2dad50

5 files changed

Lines changed: 28 additions & 27 deletions

File tree

.github/workflows/config.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ jobs:
7676

7777
- name: Configure and build
7878
run: |
79-
cmake . -B build -DSIMPLE_SOCKET_BUILD_TESTS=ON -DSIMPLE_SOCKET_WITH_TLS=OFF -DSIMPLE_SOCKET_WITH_MQTT=OFF -DSIMPLE_SOCKET_WITH_MODBUS=OFF -DSIMPLE_SOCKET_WITH_MEMORY=OFF -DCMAKE_BUILD_TYPE="Release"
79+
cmake . -B build -DSIMPLE_SOCKET_BUILD_TESTS=ON -DSIMPLE_SOCKET_WITH_TLS=OFF -DSIMPLE_SOCKET_WITH_MQTT=OFF -DSIMPLE_SOCKET_WITH_MODBUS=OFF -DSIMPLE_SOCKET_WITH_MEMORY=OFF -DSIMPLE_SOCKET_WITH_WEBSOCKETS=OFF -DCMAKE_BUILD_TYPE="Release"
8080
cmake --build build
8181
8282
- name: Test

CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ option(SIMPLE_SOCKET_WITH_TLS "Enable TLS (OpenSSL) for WSS" OFF)
66
option(SIMPLE_SOCKET_WITH_MQTT "Enable MQTT support" ON)
77
option(SIMPLE_SOCKET_WITH_MODBUS "Enable Modbus support" ON)
88
option(SIMPLE_SOCKET_WITH_MEMORY "Enable in-memory transport support" ON)
9+
option(SIMPLE_SOCKET_WITH_WEBSOCKETS "Enable WebSocket support" ON)
910

1011
set(CMAKE_CXX_STANDARD 20)
1112

src/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,7 @@ add_library(simple_socket "${publicHeadersFull}" "${privateHeaders}" "${sources}
9292
target_compile_features(simple_socket PUBLIC "cxx_std_20")
9393
if (UNIX)
9494
set_target_properties(simple_socket PROPERTIES POSITION_INDEPENDENT_CODE ON)
95+
target_link_libraries(simple_socket PRIVATE pthread)
9596
endif ()
9697
if (WIN32)
9798
target_link_libraries(simple_socket PRIVATE "ws2_32")

tests/CMakeLists.txt

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,16 @@ add_executable(test_un test_un.cpp)
1111
add_test(NAME test_un COMMAND test_un)
1212
target_link_libraries(test_un PRIVATE simple_socket Catch2::Catch2WithMain)
1313

14-
add_executable(test_ws test_ws.cpp)
15-
add_test(NAME test_ws COMMAND test_ws)
16-
target_link_libraries(test_ws PRIVATE simple_socket Catch2::Catch2WithMain)
17-
18-
if (SIMPLE_SOCKET_WITH_TLS)
19-
add_executable(test_wss_client test_wss_client.cpp)
20-
add_test(NAME test_wss_client COMMAND test_wss_client)
21-
target_link_libraries(test_wss_client PRIVATE simple_socket Catch2::Catch2WithMain)
14+
if (SIMPLE_SOCKET_WITH_WEBSOCKETS)
15+
add_executable(test_ws test_ws.cpp)
16+
add_test(NAME test_ws COMMAND test_ws)
17+
target_link_libraries(test_ws PRIVATE simple_socket Catch2::Catch2WithMain)
18+
19+
if (SIMPLE_SOCKET_WITH_TLS)
20+
add_executable(test_wss_client test_wss_client.cpp)
21+
add_test(NAME test_wss_client COMMAND test_wss_client)
22+
target_link_libraries(test_wss_client PRIVATE simple_socket Catch2::Catch2WithMain)
23+
endif ()
2224
endif ()
2325

2426
add_executable(test_conversion test_conversion.cpp)

tests/integration/CMakeLists.txt

Lines changed: 15 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -8,20 +8,25 @@ target_link_libraries(run_tcp_server PRIVATE simple_socket)
88
add_executable(run_tcp_client run_tcp_client.cpp)
99
target_link_libraries(run_tcp_client PRIVATE simple_socket)
1010

11-
add_executable(run_ws run_ws.cpp)
12-
target_link_libraries(run_ws PRIVATE simple_socket)
11+
if (SIMPLE_SOCKET_WITH_WEBSOCKETS)
12+
add_executable(run_ws run_ws.cpp)
13+
target_link_libraries(run_ws PRIVATE simple_socket)
1314

14-
if (SIMPLE_SOCKET_WITH_TLS)
15-
add_executable(run_wss run_wss.cpp)
16-
target_link_libraries(run_wss PRIVATE simple_socket)
17-
endif ()
15+
if (SIMPLE_SOCKET_WITH_TLS)
16+
add_executable(run_wss run_wss.cpp)
17+
target_link_libraries(run_wss PRIVATE simple_socket)
18+
endif ()
1819

19-
add_executable(memory_server memory_server.cpp)
20-
target_link_libraries(memory_server PRIVATE simple_socket)
20+
file(COPY ws_client.html DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
21+
endif ()
2122

22-
add_executable(memory_client memory_client.cpp)
23-
target_link_libraries(memory_client PRIVATE simple_socket)
23+
if (SIMPLE_SOCKET_WITH_MEMORY)
24+
add_executable(memory_server memory_server.cpp)
25+
target_link_libraries(memory_server PRIVATE simple_socket)
2426

27+
add_executable(memory_client memory_client.cpp)
28+
target_link_libraries(memory_client PRIVATE simple_socket)
29+
endif ()
2530

2631
if (SIMPLE_SOCKET_WITH_MODBUS)
2732
add_executable(modbus_client modbus_client.cpp)
@@ -39,11 +44,3 @@ if (SIMPLE_SOCKET_WITH_MQTT)
3944
target_link_libraries(run_mqtt_client_broker PRIVATE simple_socket)
4045
endif ()
4146

42-
43-
if (UNIX)
44-
target_link_libraries(run_tcp_server PRIVATE pthread)
45-
target_link_libraries(run_tcp_client PRIVATE pthread)
46-
target_link_libraries(run_ws PRIVATE pthread)
47-
endif ()
48-
49-
file(COPY ws_client.html DESTINATION ${CMAKE_CURRENT_BINARY_DIR})

0 commit comments

Comments
 (0)