Skip to content

Commit adde046

Browse files
use CMAKE_C_STANDARD to set C standard
1 parent 6688253 commit adde046

File tree

3 files changed

+18
-9
lines changed

3 files changed

+18
-9
lines changed

api_test/CMakeLists.txt

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,12 @@ elseif(CMAKE_COMPILER_IS_GNUCC OR "${CMAKE_C_COMPILER_ID}" STREQUAL "Clang")
3030
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -std=c99 -pedantic")
3131
endif()
3232

33-
# On MSVC 15.0 and newer, compile with C11 standard
34-
if (MSVC AND MSVC_VERSION GREATER_EQUAL 1910)
35-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /std:c11")
33+
# set a required C standard so we can load stdbool.h
34+
if(MSVC)
35+
set(CMAKE_C_STANDARD 11)
36+
else()
37+
set(CMAKE_C_STANDARD 99)
3638
endif()
39+
set(CMAKE_C_STANDARD_REQUIRED YES)
3740

3841
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DCMARK_USE_CMAKE_HEADERS")

extensions/CMakeLists.txt

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -124,10 +124,13 @@ if(MSVC AND MSVC_VERSION LESS 1800)
124124
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /TP")
125125
endif()
126126

127-
# On MSVC 15.0 and newer, compile with C11 standard
128-
if (MSVC AND MSVC_VERSION GREATER_EQUAL 1910)
129-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /std:c11")
127+
# set a required C standard so we can load stdbool.h
128+
if(MSVC)
129+
set(CMAKE_C_STANDARD 11)
130+
else()
131+
set(CMAKE_C_STANDARD 99)
130132
endif()
133+
set(CMAKE_C_STANDARD_REQUIRED YES)
131134

132135
if(CMAKE_BUILD_TYPE STREQUAL "Ubsan")
133136
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsanitize=undefined")

src/CMakeLists.txt

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -195,10 +195,13 @@ if(MSVC AND MSVC_VERSION LESS 1800)
195195
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /TP")
196196
endif()
197197

198-
# On MSVC 15.0 and newer, compile with C11 standard
199-
if (MSVC AND MSVC_VERSION GREATER_EQUAL 1910)
200-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /std:c11")
198+
# set a required C standard so we can load stdbool.h
199+
if(MSVC)
200+
set(CMAKE_C_STANDARD 11)
201+
else()
202+
set(CMAKE_C_STANDARD 99)
201203
endif()
204+
set(CMAKE_C_STANDARD_REQUIRED YES)
202205

203206
if(CMAKE_BUILD_TYPE STREQUAL "Ubsan")
204207
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsanitize=undefined")

0 commit comments

Comments
 (0)