summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorJose Fonseca <jfonseca@vmware.com>2015-12-10 10:57:12 +0000
committerJose Fonseca <jfonseca@vmware.com>2015-12-11 06:37:36 +0000
commitd34b3f7719172dd191193a8abd561847635b35a8 (patch)
tree3088be6841c644acab15af6f869c9c4a17560e08 /CMakeLists.txt
parent5b106419d0eb822018f9dd47ea1ab46d89f15bc9 (diff)
cmake: Target C99.
GCC 5.x and 4.x have different defaults, so it's better to explicitly specify the target C standard to keep builds consistent. Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt6
1 files changed, 6 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 4df0202db..2da1e6f74 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -224,6 +224,12 @@ if (NOT MSVC)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall")
ENDIF (CXX_COMPILER_FLAG_WALL)
+ # Target C99. GCC's default is gnu11 for 5.0 and newer, gnu89 for
+ # older versions.
+ check_c_compiler_flag ("-std=gnu99" C_COMPILER_FLAG_STD_GNU99)
+ if (C_COMPILER_FLAG_STD_GNU99)
+ set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu99")
+ endif ()
# MSVC does not support C99 variable length arrays
CHECK_C_COMPILER_FLAG("-Werror=vla" C_COMPILER_FLAG_WEVLA)
IF (C_COMPILER_FLAG_WEVLA)