From 8beee7a5ad7ed33adf4f4268e03ba6c04b4243bf Mon Sep 17 00:00:00 2001 From: Lukas Woodtli Date: Wed, 28 Aug 2024 16:22:09 +0200 Subject: [PATCH] cmake: Add Wakaama static library The static library can be configured with CMake variables and then be linked to user applications. --- wakaama.cmake | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/wakaama.cmake b/wakaama.cmake index ddc9e649..e197e44e 100644 --- a/wakaama.cmake +++ b/wakaama.cmake @@ -323,6 +323,25 @@ function(target_sources_shared target) target_include_directories(${target} PUBLIC ${WAKAAMA_EXAMPLE_SHARED_DIRECTORY}) endfunction() +# Static library that users of Wakaama can link against +add_library(wakaama_static STATIC) +target_sources_wakaama(wakaama_static) +target_include_directories(wakaama_static PUBLIC ${WAKAAMA_TOP_LEVEL_DIRECTORY}/include/) + +if(WAKAAMA_TRANSPORT STREQUAL POSIX_UDP) + target_link_libraries(wakaama_static PUBLIC wakaama_transport_posix_udp) +elseif(WAKAAMA_TRANSPORT STREQUAL TINYDTLS) + target_link_libraries(wakaama_static PUBLIC wakaama_transport_tinydtls) +endif() + +if(WAKAAMA_PLATFORM STREQUAL POSIX) + target_link_libraries(wakaama_static PUBLIC wakaama_platform_posix) +endif() + +if(WAKAAMA_CLI) + target_link_libraries(wakaama_static PUBLIC wakaama_command_line) +endif() + # Enforce a certain level of hygiene add_compile_options( -Waggregate-return