Sfoglia il codice sorgente

cmake: fix issue with passing cxx_std option for GCC 11, a common workaround

Anton Maklakov 4 anni fa
parent
commit
ea0d2123c8

+ 5 - 1
components/mdns/host_test/components/esp_timer_linux/CMakeLists.txt

@@ -2,4 +2,8 @@ idf_component_register(SRCS esp_timer_linux.c timer_task.cpp
                        INCLUDE_DIRS include
                        INCLUDE_DIRS include
                        REQUIRES esp_system_protocols_linux freertos_linux)
                        REQUIRES esp_system_protocols_linux freertos_linux)
 
 
-target_compile_features(${COMPONENT_LIB} PRIVATE cxx_std_17)
+set_target_properties(${COMPONENT_LIB} PROPERTIES
+    CXX_STANDARD 17
+    CXX_STANDARD_REQUIRED ON
+    CXX_EXTENSIONS ON
+)

+ 6 - 2
components/mdns/host_test/components/freertos_linux/CMakeLists.txt

@@ -4,6 +4,10 @@ idf_component_register(SRCS freertos_linux.c queue_unique_ptr.cpp
 
 
 set(THREADS_PREFER_PTHREAD_FLAG ON)
 set(THREADS_PREFER_PTHREAD_FLAG ON)
 find_package(Threads REQUIRED)
 find_package(Threads REQUIRED)
-target_link_libraries(${COMPONENT_LIB}  PRIVATE Threads::Threads)
+target_link_libraries(${COMPONENT_LIB} PRIVATE Threads::Threads)
 
 
-target_compile_features(${COMPONENT_LIB} PRIVATE cxx_std_17)
+set_target_properties(${COMPONENT_LIB} PROPERTIES
+    CXX_STANDARD 17
+    CXX_STANDARD_REQUIRED ON
+    CXX_EXTENSIONS ON
+)