diff options
Diffstat (limited to 'src/transport')
| -rw-r--r-- | src/transport/inproc/CMakeLists.txt | 14 | ||||
| -rw-r--r-- | src/transport/ipc/CMakeLists.txt | 14 | ||||
| -rw-r--r-- | src/transport/tcp/CMakeLists.txt | 14 | ||||
| -rw-r--r-- | src/transport/tls/CMakeLists.txt | 15 | ||||
| -rw-r--r-- | src/transport/ws/CMakeLists.txt | 30 | ||||
| -rw-r--r-- | src/transport/zerotier/CMakeLists.txt | 21 |
6 files changed, 78 insertions, 30 deletions
diff --git a/src/transport/inproc/CMakeLists.txt b/src/transport/inproc/CMakeLists.txt index 7c016bce..79264253 100644 --- a/src/transport/inproc/CMakeLists.txt +++ b/src/transport/inproc/CMakeLists.txt @@ -9,11 +9,15 @@ # # inproc protocol +option (NNG_TRANSPORT_INPROC "Enable inproc transport." ON) +mark_as_advanced(NNG_TRANSPORT_INPROC) if (NNG_TRANSPORT_INPROC) - set(INPROC_SOURCES transport/inproc/inproc.c transport/inproc/inproc.h) - set(INPROC_HEADERS transport/inproc/inproc.h) -endif() + set(_SRCS transport/inproc/inproc.c transport/inproc/inproc.h) + set(_HDRS transport/inproc/inproc.h) + set(_DEFS -DNNG_TRANSPORT_INPROC) -set(NNG_SOURCES ${NNG_SOURCES} ${INPROC_SOURCES} PARENT_SCOPE) -set(NNG_HEADERS ${NNG_HEADERS} ${INPROC_HEADERS} PARENT_SCOPE) + set(NNG_SRCS ${NNG_SRCS} ${_SRCS} PARENT_SCOPE) + set(NNG_HDRS ${NNG_HDRS} ${_HDRS} PARENT_SCOPE) + set(NNG_DEFS ${NNG_DEFS} ${_DEFS} PARENT_SCOPE) +endif() diff --git a/src/transport/ipc/CMakeLists.txt b/src/transport/ipc/CMakeLists.txt index fbae69ef..885b62b6 100644 --- a/src/transport/ipc/CMakeLists.txt +++ b/src/transport/ipc/CMakeLists.txt @@ -9,11 +9,15 @@ # # ipc protocol +option (NNG_TRANSPORT_IPC "Enable IPC transport." ON) +mark_as_advanced(NNG_TRANSPORT_IPC) if (NNG_TRANSPORT_IPC) - set(IPC_SOURCES transport/ipc/ipc.c transport/ipc/ipc.h) - set(IPC_HEADERS transport/ipc/ipc.h) -endif() + set(_DEFS -DNNG_TRANSPORT_IPC) + set(_SRCS transport/ipc/ipc.c transport/ipc/ipc.h) + set(_HDRS transport/ipc/ipc.h) -set(NNG_SOURCES ${NNG_SOURCES} ${IPC_SOURCES} PARENT_SCOPE) -set(NNG_HEADERS ${NNG_HEADERS} ${IPC_HEADERS} PARENT_SCOPE) + set(NNG_DEFS ${NNG_DEFS} ${_DEFS} PARENT_SCOPE) + set(NNG_SRCS ${NNG_SRCS} ${_SRCS} PARENT_SCOPE) + set(NNG_HDRS ${NNG_HDRS} ${_HDRS} PARENT_SCOPE) +endif() diff --git a/src/transport/tcp/CMakeLists.txt b/src/transport/tcp/CMakeLists.txt index 27b62e10..9390c048 100644 --- a/src/transport/tcp/CMakeLists.txt +++ b/src/transport/tcp/CMakeLists.txt @@ -9,11 +9,15 @@ # # TCP protocol +option (NNG_TRANSPORT_TCP "Enable TCP transport." ON) +mark_as_advanced(NNG_TRANSPORT_TCP) if (NNG_TRANSPORT_TCP) - set(TCP_SOURCES transport/tcp/tcp.c transport/tcp/tcp.h) - set(TCP_HEADERS transport/tcp/tcp.h) -endif() + set(_DEFS -DNNG_TRANSPORT_TCP) + set(_SRCS transport/tcp/tcp.c transport/tcp/tcp.h) + set(_HDRS transport/tcp/tcp.h) -set(NNG_SOURCES ${NNG_SOURCES} ${TCP_SOURCES} PARENT_SCOPE) -set(NNG_HEADERS ${NNG_HEADERS} ${TCP_HEADERS} PARENT_SCOPE) + set(NNG_SRCS ${NNG_SRCS} ${_SRCS} PARENT_SCOPE) + set(NNG_HDRS ${NNG_HDRS} ${_HDRS} PARENT_SCOPE) + set(NNG_DEFS ${NNG_DEFS} ${_DEFS} PARENT_SCOPE) +endif() diff --git a/src/transport/tls/CMakeLists.txt b/src/transport/tls/CMakeLists.txt index d55a9e92..80bc60af 100644 --- a/src/transport/tls/CMakeLists.txt +++ b/src/transport/tls/CMakeLists.txt @@ -9,11 +9,16 @@ # # TLS transport +CMAKE_DEPENDENT_OPTION(NNG_TRANSPORT_TLS "Enable TLS transport" ON + "NNG_ENABLE_TLS" OFF) +mark_as_advanced(NNG_TRANSPORT_TLS) if (NNG_TRANSPORT_TLS) - set(TLS_SOURCES transport/tls/tls.c transport/tls/tls.h) - set(TLS_HEADERS transport/tls/tls.h) -endif() + set(_DEFS -DNNG_TRANSPORT_TLS) + set(_SRCS transport/tls/tls.c transport/tls/tls.h) + set(_HDRS transport/tls/tls.h) -set(NNG_SOURCES ${NNG_SOURCES} ${TLS_SOURCES} PARENT_SCOPE) -set(NNG_HEADERS ${NNG_HEADERS} ${TLS_HEADERS} PARENT_SCOPE) + set(NNG_DEFS ${NNG_DEFS} ${_DEFS} PARENT_SCOPE) + set(NNG_SRCS ${NNG_SRCS} ${_SRCS} PARENT_SCOPE) + set(NNG_HDRS ${NNG_HDRS} ${_HDRS} PARENT_SCOPE) +endif() diff --git a/src/transport/ws/CMakeLists.txt b/src/transport/ws/CMakeLists.txt index 71e2aefa..8104d83c 100644 --- a/src/transport/ws/CMakeLists.txt +++ b/src/transport/ws/CMakeLists.txt @@ -9,11 +9,33 @@ # # WebSocket transport +option (NNG_TRANSPORT_WS "Enable WebSocket transport." ON) +mark_as_advanced(NNG_TRANSPORT_WS) + +CMAKE_DEPENDENT_OPTION(NNG_TRANSPORT_WSS "Enable WSS transport" ON + "NNG_ENABLE_TLS" OFF) +mark_as_advanced(NNG_TRANSPORT_WSS) + +set(_DEFS) if (NNG_TRANSPORT_WS) - set(WS_SOURCES transport/ws/websocket.c transport/ws/websocket.h) - set(WS_HEADERS transport/ws/websocket.h) + list(APPEND _DEFS -DNNG_TRANSPORT_WS) +endif() +if (NNG_TRANSPORT_WSS) + list(APPEND _DEFS -DNNG_TRANSPORT_WSS) endif() -set(NNG_SOURCES ${NNG_SOURCES} ${WS_SOURCES} PARENT_SCOPE) -set(NNG_HEADERS ${NNG_HEADERS} ${WS_HEADERS} PARENT_SCOPE) +if (NNG_TRANSPORT_WS OR NNG_TRANSPORT_WSS) + + # Make sure things we *MUST* have are enabled. + set(NNG_SUPP_WEBSOCKET ON PARENT_SCOPE) + set(NNG_SUPP_HTTP ON PARENT_SCOPE) + set(NNG_SUPP_BASE64 ON PARENT_SCOPE) + set(NNG_SUPP_SHA1 ON PARENT_SCOPE) + + set(_SRCS transport/ws/websocket.c transport/ws/websocket.h) + set(_HDRS transport/ws/websocket.h) + set(NNG_DEFS ${NNG_DEFS} ${_DEFS} PARENT_SCOPE) + set(NNG_SRCS ${NNG_SRCS} ${_SRCS} PARENT_SCOPE) + set(NNG_HDRS ${NNG_HDRS} ${_HDRS} PARENT_SCOPE) +endif() diff --git a/src/transport/zerotier/CMakeLists.txt b/src/transport/zerotier/CMakeLists.txt index d8dbb566..686a0a8a 100644 --- a/src/transport/zerotier/CMakeLists.txt +++ b/src/transport/zerotier/CMakeLists.txt @@ -10,6 +10,9 @@ # ZeroTier protocol +option (NNG_TRANSPORT_ZEROTIER "Enable ZeroTier transport (requires libzerotiercore)." OFF) +mark_as_advanced(NNG_TRANSPORT_ZEROTIER) + if (NNG_TRANSPORT_ZEROTIER) # The zerotiercore project will have been found at the top level @@ -27,12 +30,18 @@ if (NNG_TRANSPORT_ZEROTIER) Consult a lawyer and the license files for details. ************************************************************") - set(NNG_REQUIRED_LIBRARIES ${NNG_REQUIRED_LIBRARIES} zerotiercore::zerotiercore) - set(NNG_REQUIRED_LIBRARIES ${NNG_REQUIRED_LIBRARIES} PARENT_SCOPE) + find_package(zerotiercore REQUIRED) + set(_PKGS zerotiercore) + set(_LIBS zerotiercore::zerotiercore) + set(_DEFS -DNNG_TRANSPORT_ZEROTIER) + + set(_SRCS transport/zerotier/zerotier.c transport/zerotier/zerotier.h) + set(_HDRS transport/zerotier/zerotier.h) - set(ZT_SOURCES transport/zerotier/zerotier.c transport/zerotier/zerotier.h) - set(ZT_HEADERS transport/zerotier/zerotier.h) + set(NNG_DEFS ${NNG_DEFS} ${_DEFS} PARENT_SCOPE) + set(NNG_LIBS ${NNG_LIBS} ${_LIBS} PARENT_SCOPE) + set(NNG_PKGS ${NNG_PKGS} ${_PKGS} PARENT_SCOPE) + set(NNG_SRCS ${NNG_SRCS} ${_SRCS} PARENT_SCOPE) + set(NNG_HDRS ${NNG_HDRS} ${_HDRS} PARENT_SCOPE) - set(NNG_SOURCES ${NNG_SOURCES} ${ZT_SOURCES} PARENT_SCOPE) - set(NNG_HEADERS ${NNG_HEADERS} ${ZT_HEADERS} PARENT_SCOPE) endif() |
