meson: use -fno-strict-aliasing where supported

https://bugzilla.gnome.org/show_bug.cgi?id=769183
diff --git a/ext/taglib/meson.build b/ext/taglib/meson.build
index 6729890..241f9b5 100644
--- a/ext/taglib/meson.build
+++ b/ext/taglib/meson.build
@@ -7,17 +7,19 @@
 taglib_dep = dependency('taglib', version : '>= 1.5', required : false)
 
 if taglib_dep.found() and add_languages('cpp', required : false)
+  extra_args = []
   cxx = meson.get_compiler('cpp')
   if cxx.has_argument('-fvisibility=hidden')
-    cxx_vis_args = ['-fvisibility=hidden']
-  else
-    cxx_vis_args = []
+    extra_args += ['-fvisibility=hidden']
+  endif
+  if cxx.has_argument('-fno-strict-aliasing')
+    extra_args += ['-fno-strict-aliasing']
   endif
 
   gsttaglib = library('gsttaglib',
     taglib_sources,
     c_args : gst_plugins_good_args + ['-DGST_USE_UNSTABLE_API'],
-    cpp_args : gst_plugins_good_args + ['-DGST_USE_UNSTABLE_API'] + cxx_vis_args,
+    cpp_args : gst_plugins_good_args + ['-DGST_USE_UNSTABLE_API'] + extra_args,
     include_directories : [configinc, libsinc],
     dependencies : [gsttag_dep, taglib_dep],
     install : true,
diff --git a/meson.build b/meson.build
index c62cba7..63b0cd3 100644
--- a/meson.build
+++ b/meson.build
@@ -47,6 +47,11 @@
   add_project_arguments('-fvisibility=hidden', language: 'c')
 endif
 
+# Disable strict aliasing
+if cc.has_argument('-fno-strict-aliasing')
+  add_project_arguments('-fno-strict-aliasing', language: 'c')
+endif
+
 cdata = configuration_data()
 
 check_headers = [