CMakeLists.txt 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. cmake_minimum_required(VERSION 3.15)
  2. project(mqtt-client)
  3. #设置mqtt_config相关配置的路径
  4. set(LIB_CONFIG_INCLUDE_PATH ${PROJECT_SOURCE_DIR}/config)
  5. #设置mqtt_log相关路径
  6. set(LIB_LOG_INCLUDE_PATH ${PROJECT_SOURCE_DIR}/log/include)
  7. set(MQTT_LOG mqtt_log)
  8. add_subdirectory(log/source)
  9. #设置mqtt_common相关路径
  10. set(LIB_COMMON_INCLUDE_PATH ${PROJECT_SOURCE_DIR}/common/include)
  11. set(MQTT_COMMON mqtt_common)
  12. add_subdirectory(common/source)
  13. #设置mqtt相关路径
  14. set(LIB_MQTT_INCLUDE_PATH ${PROJECT_SOURCE_DIR}/mqtt/include)
  15. set(MQTT mqtt)
  16. add_subdirectory(mqtt/source)
  17. #设置mqtt_platform相关路径
  18. set(LIB_PLATFORM_INCLUDE_PATH ${PROJECT_SOURCE_DIR}/platform/include)
  19. set(MQTT_PLATFORM mqtt_platform)
  20. add_subdirectory(platform/source)
  21. #设置mqtt_mbedtls相关路径
  22. set(LIB_MBEDTLS_INCLUDE_PATH ${PROJECT_SOURCE_DIR}/mbedtls/include)
  23. set(MQTT_MBEDTLS mqtt_mbedtls)
  24. add_subdirectory(mbedtls)
  25. #设置mqtt_network相关路径
  26. set(LIB_NETWORK_INCLUDE_PATH ${PROJECT_SOURCE_DIR}/network/include)
  27. set(MQTT_NETWORK mqtt_network)
  28. add_subdirectory(network/source)
  29. #设置mqtt_client相关路径
  30. set(LIB_CLIENT_INCLUDE_PATH ${PROJECT_SOURCE_DIR}/mqttclient/include)
  31. set(MQTT_CLIENT mqtt_client)
  32. add_subdirectory(mqttclient/source)
  33. #设置各模块的依赖关系
  34. link_directories(${LIBRARY_OUTPUT_PATH})
  35. target_link_libraries(${MQTT_COMMON} ${MQTT_LOG})
  36. target_link_libraries(${MQTT_PLATFORM} ${MQTT_COMMON})
  37. target_link_libraries(${MQTT_MBEDTLS} ${MQTT_PLATFORM})
  38. target_link_libraries(${MQTT_NETWORK} ${MQTT_MBEDTLS})
  39. target_link_libraries(${MQTT_CLIENT} ${MQTT} ${MQTT_NETWORK} )
  40. #供外部调用的mqtt
  41. add_subdirectory(sys_mqtt/source)
  42. target_link_libraries(${LIB_SYSTEM_MQTT} ${MQTT_CLIENT})