Browse Source

CMakeList: Check that compiler supports -Wimplicit-fallthrough

This is a GCC >= 7 feature, not all compilers support it.

Fixes: 908a9f4f1027 ("CMakeLists.txt: add -Wimplicit-fallthrough to the compiler flags")
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Florian Fainelli 5 years ago
parent
commit
0059335c5b
1 changed files with 11 additions and 1 deletions
  1. 11 1
      CMakeLists.txt

+ 11 - 1
CMakeLists.txt

@@ -1,7 +1,17 @@
 cmake_minimum_required(VERSION 2.6)
 
 PROJECT(netifd C)
-ADD_DEFINITIONS(-Os -Wall -Werror --std=gnu99 -Wmissing-declarations -Wno-unknown-warning-option -Wno-format-truncation -Wimplicit-fallthrough)
+
+IF(NOT ${CMAKE_VERSION} LESS 3.0)
+  include(CheckCCompilerFlag)
+  check_c_compiler_flag(-Wimplicit-fallthrough HAS_IMPLICIT_FALLTHROUGH)
+ENDIF()
+
+ADD_DEFINITIONS(-Os -Wall -Werror --std=gnu99 -Wmissing-declarations -Wno-unknown-warning-option -Wno-format-truncation)
+
+IF(HAS_IMPLICIT_FALLTHROUGH)
+  ADD_DEFINITIONS(-Wimplicit-fallthrough)
+ENDIF()
 
 SET(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS "")