diff --git a/conftest.syms b/conftest.syms new file mode 100644 index 000000000..7d8590ff3 --- /dev/null +++ b/conftest.syms @@ -0,0 +1,6 @@ +VERSION_1 { + global: + main; + local: + *; +}; diff --git a/meson.build b/meson.build index 6acf90676..b37a85119 100644 --- a/meson.build +++ b/meson.build @@ -87,6 +87,12 @@ dl_dep = cc.find_library('dl', required : false) WITH_DRM = not get_option('disable_drm') and (host_machine.system() != 'windows') libdrm_dep = dependency('libdrm', version : '>= 2.4.60', required : (host_machine.system() != 'windows')) +ld_supports_version_script = cc.links( + 'int main() { return 0; }', + name : '-Wl,--version-script', + args : ['-shared', '-Wl,--version-script,' + '@0@/@1@'.format(meson.current_source_dir(), 'conftest.syms')] +) + WITH_X11 = false if get_option('with_x11') != 'no' x11_dep = dependency('x11', required : get_option('with_x11') == 'yes') diff --git a/va/meson.build b/va/meson.build index 372ae89ff..33c6cc8d3 100644 --- a/va/meson.build +++ b/va/meson.build @@ -60,7 +60,7 @@ libva_sym_arg = '-Wl,-version-script,' + '@0@/@1@'.format(meson.current_source_d libva_link_args = [] libva_link_depends = [] -if cc.links('', name: '-Wl,--version-script', args: ['-shared', libva_sym_arg]) +if ld_supports_version_script libva_link_args = libva_sym_arg libva_link_depends = libva_sym endif