diff --git a/Tools/ardupilotwaf/boards.py b/Tools/ardupilotwaf/boards.py index 051a403f14..c7bd358fca 100644 --- a/Tools/ardupilotwaf/boards.py +++ b/Tools/ardupilotwaf/boards.py @@ -71,6 +71,18 @@ class Board: '-Wno-redundant-decls', ] + if 'clang' in cfg.env.COMPILER_CC: + env.CFLAGS += [ + '-fcolor-diagnostics', + + '-Wno-gnu-designator', + '-Wno-inconsistent-missing-override', + '-Wno-mismatched-tags', + '-Wno-gnu-variable-sized-type-not-at-end', + '-Wno-unknown-pragmas', + '-Wno-c++11-narrowing' + ] + env.CXXFLAGS += [ '-std=gnu++11', @@ -92,12 +104,27 @@ class Board: '-Wno-redundant-decls', '-Werror=format-security', '-Werror=array-bounds', - '-Werror=unused-but-set-variable', '-Werror=uninitialized', '-Werror=init-self', '-Wfatal-errors', ] + if 'clang++' in cfg.env.COMPILER_CXX: + env.CXXFLAGS += [ + '-fcolor-diagnostics', + + '-Wno-gnu-designator', + '-Wno-inconsistent-missing-override', + '-Wno-mismatched-tags', + '-Wno-gnu-variable-sized-type-not-at-end', + '-Wno-unknown-pragmas', + '-Wno-c++11-narrowing' + ] + else: + env.CXXFLAFS += [ + '-Werror=unused-but-set-variable' + ] + env.LINKFLAGS += [ '-Wl,--gc-sections', ]