diff -durN libsoup-2.66.1.orig/libsoup/meson.build libsoup-2.66.1/libsoup/meson.build --- libsoup-2.66.1.orig/libsoup/meson.build 2019-04-09 11:43:30.000000000 +0300 +++ libsoup-2.66.1/libsoup/meson.build 2019-04-09 13:11:56.979195500 +0300 @@ -223,6 +223,12 @@ platform_deps ] +libsoup_compat_map = 'libsoup-compat.map' +libsoup_compat_lds = 'libsoup-compat.lds' +libsoup_compat_map_flag = '-Wl,--version-script,@0@/@1@'.format(meson.current_source_dir(), libsoup_compat_map) +libsoup_compat_lds_flag = '-Wl,@0@/@1@'.format(meson.current_source_dir(), libsoup_compat_lds) +libsoup_compat_ldflags = [ libsoup_compat_map_flag, libsoup_compat_lds_flag, ] + libsoup = library('soup-@0@'.format(apiversion), soup_sources, soup_headers, @@ -231,6 +237,8 @@ soversion : soversion, darwin_versions: darwin_versions, c_args : libsoup_c_args + hidden_visibility_flag, + link_args: [ libsoup_compat_ldflags ], + link_depends: [ libsoup_compat_map, libsoup_compat_lds, ], include_directories : configinc, install : true, dependencies : deps) @@ -257,12 +265,20 @@ soup_gnome_installed_headers, subdir : includedir) +libsoup_gnome_compat_map = 'libsoup-gnome-compat.map' +libsoup_gnome_compat_lds = 'libsoup-gnome-compat.lds' +libsoup_gnome_compat_map_flag = '-Wl,--version-script,@0@/@1@'.format(meson.current_source_dir(), libsoup_gnome_compat_map) +libsoup_gnome_compat_lds_flag = '-Wl,@0@/@1@'.format(meson.current_source_dir(), libsoup_gnome_compat_lds) +libsoup_gnome_compat_ldflags = [ libsoup_gnome_compat_map_flag, libsoup_gnome_compat_lds_flag, ] + libsoup_gnome = library(soup_gnome_api_name, soup_gnome_sources + soup_gnome_headers, version : libversion, soversion : soversion, darwin_versions: darwin_versions, c_args : libsoup_c_args + hidden_visibility_flag, + link_args: [ libsoup_gnome_compat_ldflags ], + link_depends: [ libsoup_gnome_compat_map, libsoup_gnome_compat_lds, ], include_directories : configinc, install : true, dependencies : deps + [libsoup_dep])