# Define warning flags for c and cpp
warning_flags = [
+ '-Werror=address',
+ '-Werror=array-bounds',
+ '-Werror=empty-body',
+ '-Werror=format=2',
+ '-Werror=init-self',
+ '-Werror=int-to-pointer-cast',
+ '-Werror=main',
+ '-Werror=missing-braces',
+ '-Werror=nonnull',
+ '-Werror=return-type',
+ '-Werror=sequence-point',
+ '-Werror=trigraphs',
+ '-Werror=write-strings',
+ '-Wredundant-decls',
+ '-Wmissing-braces',
+ '-Wmaybe-uninitialized',
'-Wwrite-strings',
'-Wformat',
'-Wformat-nonliteral',
]
warning_c_flags = [
+ '-Werror=implicit',
+ '-Werror=pointer-to-int-cast',
+ '-Werror=undef',
'-Wmissing-declarations',
'-Wmissing-include-dirs',
'-Wmissing-prototypes',
endif
# Setup warning flags for c and cpp
-foreach extra_arg : warning_flags
- if cc.has_argument (extra_arg)
- add_project_arguments([extra_arg], language: 'c')
- endif
- if cxx.has_argument (extra_arg)
- add_project_arguments([extra_arg], language: 'cpp')
- endif
-endforeach
-
-foreach extra_arg : warning_c_flags
- if cc.has_argument (extra_arg)
- add_project_arguments([extra_arg], language: 'c')
- endif
-endforeach
+add_project_arguments(cc.get_supported_arguments(warning_c_flags), language: 'c')
+add_project_arguments(cc.get_supported_arguments(warning_flags), language: 'c')
+add_project_arguments(cxx.get_supported_arguments(warning_flags), language: 'cpp')
# Set project args
if get_option('enable-tizen')