summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Catanzaro <mcatanzaro@gnome.org>2019-02-21 00:03:21 -0600
committerMichael Catanzaro <mcatanzaro@igalia.com>2019-07-17 21:09:12 -0500
commit4f99cfba1b83eb139edf198fbb91958e37574b04 (patch)
tree0fd67e4387c64ba27145606454b28a071752a3d0
parent59fd11a92d0cf2b576a16c25f18ad1dec3e6d7d7 (diff)
downloadgnome-desktop-4f99cfba1b83eb139edf198fbb91958e37574b04.tar.gz
build: Add a linker version script
Life without -export-symbols-regex, the only useful libtool feature :( I checked with abidiff to ensure this actually worked. Fixes #103
-rw-r--r--libgnome-desktop/meson.build7
-rw-r--r--libgnome-desktop/symbol.map6
2 files changed, 13 insertions, 0 deletions
diff --git a/libgnome-desktop/meson.build b/libgnome-desktop/meson.build
index c365b448..8503215f 100644
--- a/libgnome-desktop/meson.build
+++ b/libgnome-desktop/meson.build
@@ -82,12 +82,19 @@ gnome_desktop_deps = [
seccomp_dep
]
+ldflags = []
+symbol_map = '-Wl,--version-script=@0@'.format(meson.current_source_dir() / 'symbol.map')
+if cc.has_link_argument(symbol_map)
+ ldflags += symbol_map
+endif
+
libgnome_desktop = library('gnome-desktop-3',
libgnome_desktop_sources,
dependencies: [gnome_desktop_deps, m_dep, rt_dep, x_dep],
soversion: soversion,
version: libversion,
c_args: libargs,
+ link_args: ldflags,
install: true
)
diff --git a/libgnome-desktop/symbol.map b/libgnome-desktop/symbol.map
new file mode 100644
index 00000000..671c1560
--- /dev/null
+++ b/libgnome-desktop/symbol.map
@@ -0,0 +1,6 @@
+{
+global:
+ gnome_*;
+local:
+ *;
+};