summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMathieu Duponchelle <mathieu@centricular.com>2018-03-01 18:07:37 +0100
committerMathieu Duponchelle <mathieu@centricular.com>2018-03-01 18:39:09 +0100
commitdc17ac5516b80363a216636df9ee0582bd4640d9 (patch)
tree6406c18b49521077fd6a126194b6337f366b2284
parent604c1bfb4e15db59691c4e69ef60215b14c415fe (diff)
meson: enable more warnings
https://bugzilla.gnome.org/show_bug.cgi?id=793960
-rw-r--r--meson.build49
1 files changed, 49 insertions, 0 deletions
diff --git a/meson.build b/meson.build
index 0247028e9..4e84a8d8a 100644
--- a/meson.build
+++ b/meson.build
@@ -116,6 +116,55 @@ core_conf.set('GST_INSTALL_PLUGINS_HELPER', '"/FIXME"')
core_conf.set('GST_DATADIR', '"/FIXME"')
core_conf.set('GST_LICENSE', '"LGPL"')
+warning_flags = [
+ '-Wmissing-declarations',
+ '-Wredundant-decls',
+ '-Wundef',
+ '-Wwrite-strings',
+ '-Wformat',
+ '-Wformat-nonliteral',
+ '-Wformat-security',
+ '-Winit-self',
+ '-Wmissing-include-dirs',
+ '-Waddress',
+ '-Wno-multichar',
+ '-Wvla',
+ '-Wpointer-arith',
+]
+
+warning_c_flags = [
+ '-Wmissing-prototypes',
+ '-Wdeclaration-after-statement',
+]
+
+warning_cxx_flags = [
+ '-Waggregate-return',
+]
+
+if have_cxx
+ cxx = meson.get_compiler('cpp')
+ foreach extra_arg : warning_cxx_flags
+ if cxx.has_argument (extra_arg)
+ add_project_arguments([extra_arg], language: 'cpp')
+ endif
+ endforeach
+endif
+
+foreach extra_arg : warning_flags
+ if cc.has_argument (extra_arg)
+ add_project_arguments([extra_arg], language: 'c')
+ endif
+ if have_cxx and 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
+
# GStreamer package name and origin url
gst_package_name = get_option('with-package-name')
if gst_package_name == ''