Skip to content

Commit

Permalink
Build all the samples for the static library
Browse files Browse the repository at this point in the history
  • Loading branch information
fpagliughi authored and icraggs committed Jan 6, 2025
1 parent 80e8762 commit e4170be
Show file tree
Hide file tree
Showing 2 changed files with 61 additions and 21 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,4 @@
*.swp
*.pyc
/build.paho
.vscode/
81 changes: 60 additions & 21 deletions src/samples/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -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}
Expand Down

0 comments on commit e4170be

Please sign in to comment.