summaryrefslogtreecommitdiff
path: root/gsettings/meson.build
diff options
context:
space:
mode:
Diffstat (limited to 'gsettings/meson.build')
-rw-r--r--gsettings/meson.build29
1 files changed, 8 insertions, 21 deletions
diff --git a/gsettings/meson.build b/gsettings/meson.build
index a28892d..9463453 100644
--- a/gsettings/meson.build
+++ b/gsettings/meson.build
@@ -1,32 +1,19 @@
-# We use the libraries directly, as the dependency objects use
-# link_whole; this avoids the gsettings backend module exposing
-# symbols other than g_io_module_*
backend_deps = [
- libdconf_common_hidden,
- libdconf_gdbus_thread,
+ libdconf_common_dep,
+ libdconf_gdbus_thread_dep,
]
+symbol_map = join_paths(meson.current_source_dir(), 'symbol.map')
+ldflags = cc.get_supported_link_arguments('-Wl,--version-script,@0@'.format(symbol_map))
+
libdconf_settings = shared_library(
'dconfsettings',
sources: 'dconfsettingsbackend.c',
include_directories: top_inc,
- link_with: backend_deps,
- dependencies: gio_dep,
+ dependencies: backend_deps,
c_args: dconf_c_args,
+ link_args: ldflags,
+ link_depends: symbol_map,
install: true,
install_dir: gio_module_dir,
)
-
-envs = test_env + [
- 'G_TEST_SRCDIR=' + meson.current_source_dir(),
- 'G_TEST_BUILDDIR=' + meson.current_build_dir(),
- 'GSETTINGS_LIB=' + libdconf_settings.full_path(),
-]
-
-unit_test = 'abicheck'
-
-test(
- unit_test,
- find_program(unit_test + '.sh'),
- env: envs,
-)