From e4170be269b0054006a6a7a4858a2654ac46dd88 Mon Sep 17 00:00:00 2001 From: fpagliughi Date: Sun, 5 Jan 2025 14:43:27 -0500 Subject: [PATCH] Build all the samples for the static library --- .gitignore | 1 + src/samples/CMakeLists.txt | 81 ++++++++++++++++++++++++++++---------- 2 files changed, 61 insertions(+), 21 deletions(-) diff --git a/.gitignore b/.gitignore index 5b2b31f84..a574079dc 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ *.swp *.pyc /build.paho +.vscode/ \ No newline at end of file diff --git a/src/samples/CMakeLists.txt b/src/samples/CMakeLists.txt index 143834686..72216d69d 100644 --- a/src/samples/CMakeLists.txt +++ b/src/samples/CMakeLists.txt @@ -53,24 +53,29 @@ if(PAHO_BUILD_SHARED) RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ) - endif() - foreach(TARGET MQTTAsync_subscribe MQTTAsync_publish MQTTAsync_publish_time - MQTTClient_subscribe MQTTClient_publish MQTTClient_publish_async) + foreach(TARGET + MQTTAsync_subscribe + MQTTAsync_publish + MQTTAsync_publish_time + MQTTClient_subscribe + MQTTClient_publish + MQTTClient_publish_async + ) add_executable(${TARGET} ${TARGET}.c) set_target_properties(${TARGET} PROPERTIES COMPILE_DEFINITIONS "PAHO_MQTT_IMPORTS=1" - ) + ) endforeach() - target_link_libraries(MQTTAsync_subscribe paho-mqtt3a) - target_link_libraries(MQTTAsync_publish paho-mqtt3a) - target_link_libraries(MQTTAsync_publish_time paho-mqtt3a) + foreach(TARGET MQTTAsync_subscribe MQTTAsync_publish MQTTAsync_publish_time) + target_link_libraries(${TARGET} paho-mqtt3a) + endforeach() - target_link_libraries(MQTTClient_subscribe paho-mqtt3c) - target_link_libraries(MQTTClient_publish paho-mqtt3c) - target_link_libraries(MQTTClient_publish_async paho-mqtt3c) + foreach(TARGET MQTTClient_subscribe MQTTClient_publish MQTTClient_publish_async) + target_link_libraries(${TARGET} paho-mqtt3c) + endforeach() install( TARGETS @@ -86,23 +91,57 @@ if(PAHO_BUILD_SHARED) ) endif() -if(PAHO_BUILD_STATIC AND PAHO_WITH_SSL) - foreach(TARGET paho_c_pub paho_c_sub paho_cs_pub paho_cs_sub) - add_executable(${TARGET}_static ${TARGET}.c pubsub_opts.c) +if(PAHO_BUILD_STATIC) + if(PAHO_WITH_SSL) + foreach(TARGET paho_c_pub paho_c_sub paho_cs_pub paho_cs_sub) + add_executable(${TARGET}_static ${TARGET}.c pubsub_opts.c) + endforeach() + + target_link_libraries(paho_c_pub_static paho-mqtt3as-static) + target_link_libraries(paho_c_sub_static paho-mqtt3as-static) + + target_link_libraries(paho_cs_pub_static paho-mqtt3cs-static) + target_link_libraries(paho_cs_sub_static paho-mqtt3cs-static) + + install( + TARGETS + paho_c_sub_static + paho_c_pub_static + paho_cs_sub_static + paho_cs_pub_static + + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + ) + endif() + + foreach(TARGET + MQTTAsync_subscribe + MQTTAsync_publish + MQTTAsync_publish_time + MQTTClient_subscribe + MQTTClient_publish + MQTTClient_publish_async + ) + add_executable(${TARGET}_static ${TARGET}.c) endforeach() - target_link_libraries(paho_c_pub_static paho-mqtt3as-static) - target_link_libraries(paho_c_sub_static paho-mqtt3as-static) + foreach(TARGET MQTTAsync_subscribe MQTTAsync_publish MQTTAsync_publish_time) + target_link_libraries(${TARGET}_static paho-mqtt3a-static) + endforeach() - target_link_libraries(paho_cs_pub_static paho-mqtt3cs-static) - target_link_libraries(paho_cs_sub_static paho-mqtt3cs-static) + foreach(TARGET MQTTClient_subscribe MQTTClient_publish MQTTClient_publish_async) + target_link_libraries(${TARGET}_static paho-mqtt3c-static) + endforeach() install( TARGETS - paho_c_sub_static - paho_c_pub_static - paho_cs_sub_static - paho_cs_pub_static + MQTTAsync_subscribe_static + MQTTAsync_publish_static + MQTTAsync_publish_time_static + MQTTClient_subscribe_static + MQTTClient_publish_static + MQTTClient_publish_async_static RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}