yuanjm 3 лет назад
Родитель
Сommit
5a7b17ff7d
2 измененных файлов с 13 добавлено и 4 удалено
  1. 7 4
      components/mqtt/CMakeLists.txt
  2. 6 0
      components/mqtt/Kconfig

+ 7 - 4
components/mqtt/CMakeLists.txt

@@ -1,7 +1,10 @@
-idf_component_register(SRCS "esp-mqtt/mqtt_client.c"
-                            "esp-mqtt/lib/mqtt_msg.c"
-                            "esp-mqtt/lib/mqtt_outbox.c"
-                            "esp-mqtt/lib/platform_esp32_idf.c"
+set(srcs esp-mqtt/mqtt_client.c esp-mqtt/lib/mqtt_msg.c esp-mqtt/lib/mqtt_outbox.c esp-mqtt/lib/platform_esp32_idf.c)
+
+if(CONFIG_MQTT_PROTOCOL_5)
+    list(APPEND srcs esp-mqtt/lib/mqtt5_msg.c esp-mqtt/mqtt5_client.c)
+endif()
+
+idf_component_register(SRCS "${srcs}"
                     INCLUDE_DIRS esp-mqtt/include
                     PRIV_INCLUDE_DIRS "esp-mqtt/lib/include"
                     PRIV_REQUIRES esp_timer

+ 6 - 0
components/mqtt/Kconfig

@@ -6,6 +6,12 @@ menu "ESP-MQTT Configurations"
         help
             If not, this library will use MQTT protocol 3.1
 
+    config MQTT_PROTOCOL_5
+        bool "Enable MQTT protocol 5.0"
+        default n
+        help
+            If not, this library will not support MQTT 5.0
+
     config MQTT_TRANSPORT_SSL
         bool "Enable MQTT over SSL"
         default y