[cmake] disable c extensions (#10460)

CMake by default enables c extensions. As a result, gnu99 is used
instead of c99. This commit explicitly disables c extensions.
This commit is contained in:
Yakun Xu
2024-07-02 23:53:02 +08:00
committed by GitHub
parent d87be657c6
commit aebecca964
+2
View File
@@ -46,6 +46,7 @@ add_library(ot-config-mtd INTERFACE)
add_library(ot-config-radio INTERFACE)
set(CMAKE_CXX_EXTENSIONS OFF)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_C_EXTENSIONS OFF)
set(CMAKE_C_STANDARD 99)
message(STATUS "OpenThread Source Directory: ${PROJECT_SOURCE_DIR}")
@@ -92,6 +93,7 @@ if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_C_COMPILER_ID MATCHES "(Apple)?[Cc]lang")
set(OT_CFLAGS
$<$<COMPILE_LANGUAGE:C>:${OT_CFLAGS} -Wall -Wextra -Wshadow>
$<$<COMPILE_LANGUAGE:CXX>:${OT_CFLAGS} -Wall -Wextra -Wshadow -Wno-c++14-compat -fno-exceptions>
$<$<CXX_COMPILER_ID:Clang>:-Wc99-extensions>
)
endif()