diff options
author | Tim-Philipp Müller <tim@centricular.com> | 2018-01-30 20:34:52 +0000 |
---|---|---|
committer | Tim-Philipp Müller <tim@centricular.com> | 2018-01-30 20:34:54 +0000 |
commit | 4007aaf3a7953a9002b4921f25de62a36d3daae5 (patch) | |
tree | 928117b9e81f59372ea51a6fc1b4bc3e17ea3418 | |
parent | 63f8d33a6fd6ab6c50069355b6619289b9869e53 (diff) |
meson: use -fno-strict-aliasing where supported
https://bugzilla.gnome.org/show_bug.cgi?id=769183
-rw-r--r-- | ext/sidplay/meson.build | 10 | ||||
-rw-r--r-- | meson.build | 5 |
2 files changed, 11 insertions, 4 deletions
diff --git a/ext/sidplay/meson.build b/ext/sidplay/meson.build index 6310da741b..7781938291 100644 --- a/ext/sidplay/meson.build +++ b/ext/sidplay/meson.build @@ -1,11 +1,13 @@ # sidplay plugin works with libsidplay 1.36.x (not 2.x.x) have_sidplay = false if add_languages('cpp') + 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 if cxx.has_header('sidplay/player.h') @@ -22,7 +24,7 @@ endif if have_sidplay shared_module('gstsid', 'gstsiddec.cc', - cpp_args : ugly_args + cxx_vis_args, + cpp_args : ugly_args + extra_args, include_directories : [configinc], dependencies : [gstaudio_dep, sidplay_dep], install : true, diff --git a/meson.build b/meson.build index eb96b7ba96..72e785a90c 100644 --- a/meson.build +++ b/meson.build @@ -47,6 +47,11 @@ if cc.has_argument('-fvisibility=hidden') 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 = [ ['HAVE_DLFCN_H', 'dlfcn.h'], |