1- if (CONFIG_ZENOH_PICO)
1+ if (NOT CONFIG_ZENOH_PICO)
2+ return ()
3+ endif ()
24
3- zephyr_compile_definitions(ZENOH_ZEPHYR)
45zephyr_include_directories(../include )
56zephyr_library()
67
7- function (configure_zenoh_feature config)
8- string (REPLACE CONFIG_ZENOH_PICO Z_FEATURE feature ${config} )
9- if (${config} )
10- zephyr_compile_definitions(${feature} =1)
11- else ()
12- zephyr_compile_definitions(${feature} =0)
13- endif ()
14- endfunction ()
15-
16-
17- configure_zenoh_feature(CONFIG_ZENOH_PICO_LINK_SERIAL)
18- configure_zenoh_feature(CONFIG_ZENOH_PICO_MULTI_THREAD)
19- configure_zenoh_feature(CONFIG_ZENOH_PICO_PUBLICATION)
20- configure_zenoh_feature(CONFIG_ZENOH_PICO_SUBSCRIPTION)
21- configure_zenoh_feature(CONFIG_ZENOH_PICO_QUERY)
22- configure_zenoh_feature(CONFIG_ZENOH_PICO_QUERYABLE)
23- configure_zenoh_feature(CONFIG_ZENOH_PICO_RAWETH_TRANSPORT)
24- configure_zenoh_feature(CONFIG_ZENOH_PICO_LINK_TCP)
25- configure_zenoh_feature(CONFIG_ZENOH_PICO_LINK_UDP_UNICAST)
26- configure_zenoh_feature(CONFIG_ZENOH_PICO_LINK_UDP_MULTICAST)
27- configure_zenoh_feature(CONFIG_ZENOH_PICO_SCOUTING)
28- configure_zenoh_feature(CONFIG_ZENOH_PICO_LINK_WS)
8+ zephyr_compile_definitions(ZENOH_ZEPHYR)
9+ zephyr_compile_definitions(ZENOH_DEBUG=0)
10+
11+ file (READ ${CMAKE_CURRENT_SOURCE_DIR} /../version .txt version )
12+ set (ZENOH_PICO ${PROJECT_VERSION} )
13+ set (ZENOH_PICO_MAJOR ${PROJECT_VERSION_MAJOR} )
14+ set (ZENOH_PICO_MINOR ${PROJECT_VERSION_MINOR} )
15+ set (ZENOH_PICO_PATCH ${PROJECT_VERSION_PATCH} )
16+ set (ZENOH_PICO_TWEAK ${PROJECT_VERSION_TWEAK} )
17+
18+ configure_file (
19+ ${CMAKE_CURRENT_SOURCE_DIR} /../include /zenoh-pico.h.in
20+ ${CMAKE_CURRENT_SOURCE_DIR} /../include /zenoh-pico.h
21+ @ONLY
22+ )
23+
24+ configure_file (
25+ ${CMAKE_CURRENT_SOURCE_DIR} /../library.json.in
26+ ${CMAKE_CURRENT_SOURCE_DIR} /../library.json
27+ @ONLY
28+ )
29+
30+ # Zenoh pico feature configuration options
31+ set (FRAG_MAX_SIZE 4096 CACHE STRING "Use this to override the maximum size for fragmented messages" )
32+ set (BATCH_UNICAST_SIZE 2048 CACHE STRING "Use this to override the maximum unicast batch size" )
33+ set (BATCH_MULTICAST_SIZE 2048 CACHE STRING "Use this to override the maximum multicast batch size" )
34+ set (Z_CONFIG_SOCKET_TIMEOUT 100 CACHE STRING "Default socket timeout in milliseconds" )
35+ set (Z_TRANSPORT_LEASE 10000 CACHE STRING "Use this to override transport lease time" )
36+ set (ZP_PERIODIC_SCHEDULER_MAX_TASKS 64 CACHE STRING "Use this to override maximum number of periodic tasks" )
2937
38+ set (Z_FEATURE_UNSTABLE_API 0 CACHE STRING "Toggle unstable Zenoh-C API" )
39+ set (Z_FEATURE_PUBLICATION CONFIG_ZENOH_PICO_PUBLICATION CACHE STRING "Toggle publication feature" )
40+ set (Z_FEATURE_SUBSCRIPTION CONFIG_ZENOH_PICO_SUBSCRIPTION CACHE STRING "Toggle subscription feature" )
41+ set (Z_FEATURE_QUERY CONFIG_ZENOH_PICO_QUERY CACHE STRING "Toggle query feature" )
42+ set (Z_FEATURE_QUERYABLE CONFIG_ZENOH_PICO_QUERYABLE CACHE STRING "Toggle queryable feature" )
43+ set (Z_FEATURE_LIVELINESS CONFIG_ZENOH_PICO_LIVELINESS CACHE STRING "Toggle liveliness feature" )
44+ set (Z_FEATURE_INTEREST CONFIG_ZENOH_PICO_INTEREST CACHE STRING "Toggle interests" )
45+ set (Z_FEATURE_FRAGMENTATION CONFIG_ZENOH_PICO_FRAGMENTATION CACHE STRING "Toggle fragmentation" )
46+ set (Z_FEATURE_ENCODING_VALUES CONFIG_ZENOH_PICO_ENCODING_VALUES CACHE STRING "Toggle encoding values" )
47+ set (Z_FEATURE_MULTI_THREAD 1 CACHE STRING "Toggle multithread" )
48+
49+ set (Z_FEATURE_LINK_TCP CONFIG_ZENOH_PICO_LINK_TCP CACHE STRING "Toggle TCP links" )
50+ set (Z_FEATURE_LINK_BLUETOOTH 0 CACHE STRING "Toggle Bluetooth links" )
51+ set (Z_FEATURE_LINK_WS 0 CACHE STRING "Toggle WebSocket links" )
52+ set (Z_FEATURE_LINK_SERIAL CONFIG_ZENOH_PICO_LINK_SERIAL CACHE STRING "Toggle Serial links" )
53+ set (Z_FEATURE_LINK_SERIAL_USB 0 CACHE STRING "Toggle Serial USB links" )
54+ set (Z_FEATURE_SCOUTING CONFIG_ZENOH_PICO_SCOUTING CACHE STRING "Toggle UDP scouting" )
55+ set (Z_FEATURE_LINK_UDP_MULTICAST CONFIG_ZENOH_PICO_LINK_UDP_MULTICAST CACHE STRING "Toggle UDP multicast links" )
56+ set (Z_FEATURE_LINK_UDP_UNICAST CONFIG_ZENOH_PICO_LINK_UDP_UNICAST CACHE STRING "Toggle UDP unicast links" )
57+ set (Z_FEATURE_MULTICAST_TRANSPORT CONFIG_ZENOH_PICO_MULTICAST_TRANSPORT CACHE STRING "Toggle multicast transport" )
58+ set (Z_FEATURE_UNICAST_TRANSPORT CONFIG_ZENOH_PICO_UNICAST_TRANSPORT CACHE STRING "Toggle unicast transport" )
59+ set (Z_FEATURE_RAWETH_TRANSPORT 0 CACHE STRING "Toggle raw ethernet transport" )
60+ set (Z_FEATURE_TCP_NODELAY 1 CACHE STRING "Toggle TCP_NODELAY" )
61+ set (Z_FEATURE_LOCAL_SUBSCRIBER 0 CACHE STRING "Toggle local subscriptions" )
62+ set (Z_FEATURE_SESSION_CHECK 1 CACHE STRING "Toggle publisher/querier session check" )
63+ set (Z_FEATURE_BATCHING 1 CACHE STRING "Toggle batching" )
64+ set (Z_FEATURE_MATCHING 1 CACHE STRING "Toggle matching feature" )
65+ set (Z_FEATURE_RX_CACHE 0 CACHE STRING "Toggle RX_CACHE" )
66+ set (Z_FEATURE_UNICAST_PEER CONFIG_ZENOH_PICO_UNICAST_PEER_MODE CACHE STRING "Toggle Unicast peer mode" )
67+ set (Z_FEATURE_AUTO_RECONNECT CONFIG_ZENOH_PICO_AUTO_RECONNECT CACHE STRING "Toggle automatic reconnection" )
68+ set (Z_FEATURE_LINK_TLS 0 CACHE STRING "Toggle TLS link" )
69+ set (Z_FEATURE_BATCH_TX_MUTEX 0 CACHE STRING "Toggle batch tx mutex" )
70+ set (Z_FEATURE_BATCH_PEER_MUTEX 0 CACHE STRING "Toggle batch peer mutex" )
71+ set (Z_FEATURE_PERIODIC_TASKS 0 CACHE STRING "Toggle periodic task support" )
72+ set (Z_FEATURE_ADVANCED_PUBLICATION 0 CACHE STRING "Toggle advanced publication" )
73+ set (Z_FEATURE_ADVANCED_SUBSCRIPTION 0 CACHE STRING "Toggle advanced subscription" )
74+ set (Z_FEATURE_MULTICAST_DECLARATIONS 0 CACHE STRING "Toggle multicast declarations" )
75+
76+ configure_file (
77+ ${CMAKE_CURRENT_SOURCE_DIR} /../include /zenoh-pico/config.h.in
78+ ${CMAKE_CURRENT_SOURCE_DIR} /../include /zenoh-pico/config.h
79+ @ONLY
80+ )
3081
3182file (GLOB_RECURSE Sources
3283 "../src/api/*.c"
@@ -42,5 +93,5 @@ file(GLOB_RECURSE Sources
4293
4394file (GLOB Sources_Zephyr "../src/system/zephyr/*.c" )
4495list (APPEND Sources ${Sources_Zephyr} )
96+
4597zephyr_library_sources(${Sources} )
46- endif ()
0 commit comments