summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilip Withnall <philip@tecnocode.co.uk>2018-08-11 21:37:08 +0000
committerPhilip Withnall <philip@tecnocode.co.uk>2018-08-11 21:37:08 +0000
commit20223ed7dab543caeb075ec9f2b7cfbda5e0bec0 (patch)
tree76605a5e2110b6966702db6e3533ef15dff4db32
parent159757dbd00c43cc3df091d2656a85c2c4e5ff3a (diff)
parent6fcde2e56fa71421dcd9cbee98eb90e45f5d2244 (diff)
downloaddconf-20223ed7dab543caeb075ec9f2b7cfbda5e0bec0.tar.gz
Merge branch 'meson' into 'master'
Various meson related improvements See merge request GNOME/dconf!11
-rw-r--r--.gitlab-ci.yml4
-rw-r--r--bin/meson.build19
-rw-r--r--client/meson.build53
-rw-r--r--common/meson.build38
-rw-r--r--docs/meson.build20
-rw-r--r--engine/meson.build26
-rw-r--r--gdbus/meson.build48
-rw-r--r--gsettings/meson.build24
-rw-r--r--gvdb/meson.build24
-rw-r--r--meson.build70
-rw-r--r--meson_options.txt8
-rw-r--r--meson_post_install.py2
-rw-r--r--service/meson.build34
-rw-r--r--shm/meson.build21
-rw-r--r--tests/meson.build24
15 files changed, 164 insertions, 251 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index fb023cd..74633f6 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -4,8 +4,8 @@ before_script:
- apt update -qq
- apt install -y -qq build-essential meson pkg-config gtk-doc-tools
libxml2-utils gobject-introspection dbus dbus-x11
- libgirepository1.0-dev libglib2.0-dev
- lcov valac
+ libdbus-1-dev libgirepository1.0-dev libglib2.0-dev
+ bash-completion lcov valac
- export LANG=C.UTF-8
stages:
diff --git a/bin/meson.build b/bin/meson.build
index 5dc5035..5c6e6bc 100644
--- a/bin/meson.build
+++ b/bin/meson.build
@@ -2,25 +2,26 @@ sources = gvdb_builder + libdconf_vapi + files(
'dconf-dump.vala',
'dconf-update.vala',
'dconf.vala',
- 'gvdb.vapi'
+ 'gvdb.vapi',
)
deps = [
+ libdconf_common_dep,
libdconf_dep,
- valac.find_library('posix')
+ valac.find_library('posix'),
]
executable(
- meson.project_name(),
+ 'dconf',
sources,
include_directories: top_inc,
dependencies: deps,
- c_args: '-w',
install: true,
- install_dir: dconf_bindir
)
-install_data(
- 'completion/dconf',
- install_dir: join_paths(dconf_datadir, 'bash-completion', 'completions')
-)
+if enable_bash_completion
+ install_data(
+ 'completion/dconf',
+ install_dir: completions_dir,
+ )
+endif
diff --git a/client/meson.build b/client/meson.build
index cb94deb..9153b06 100644
--- a/client/meson.build
+++ b/client/meson.build
@@ -2,69 +2,62 @@ client_inc = include_directories('.')
install_headers(
'dconf.h',
- subdir: meson.project_name()
+ subdir: 'dconf',
)
install_headers(
'dconf-client.h',
- subdir: join_paths(meson.project_name(), 'client')
+ subdir: join_paths('dconf', 'client'),
)
sources = files('dconf-client.c')
-cflags = '-DG_LOG_DOMAIN="@0@"'.format(meson.project_name())
+cflags = '-DG_LOG_DOMAIN="dconf"'
libdconf_client = static_library(
- meson.project_name() + '-client',
+ 'dconf-client',
sources: sources,
include_directories: top_inc,
- dependencies: gio_unix_dep,
+ dependencies: libdconf_gdbus_thread_dep,
c_args: cflags,
- pic: true
+ pic: true,
+)
+
+libdconf_client_dep = declare_dependency(
+ dependencies: gio_dep,
+ link_with: libdconf_client,
)
libdconf = shared_library(
- meson.project_name(),
+ 'dconf',
sources: sources,
version: libversion,
soversion: soversion,
include_directories: top_inc,
- dependencies: gio_unix_dep,
+ dependencies: deps,
c_args: cflags,
- link_with: [
- libdconf_common_shared,
- libdconf_engine_shared,
- libdconf_gdbus_thread_shared,
- libdconf_shm_shared,
- libgvdb_shared
- ],
install: true,
- install_dir: dconf_libdir
)
libdconf_dep = declare_dependency(
- link_with: libdconf,
include_directories: client_inc,
- dependencies: gio_unix_dep
+ dependencies: gio_dep,
+ link_with: libdconf,
)
pkg.generate(
- libraries: libdconf,
- version: dconf_version,
- name: meson.project_name(),
- description: meson.project_name() + ' client library',
- filebase: meson.project_name(),
- subdirs: meson.project_name(),
- requires: 'gio-unix-2.0 ' + gio_unix_req_version,
- variables: 'exec_prefix=' + dconf_libexecdir,
- install_dir: join_paths(dconf_libdir, 'pkgconfig')
+ libdconf,
+ description: 'dconf client library',
+ subdirs: 'dconf',
+ requires: 'gio-2.0 ' + gio_req_version,
+ variables: 'exec_prefix=${prefix}',
)
-libdconf_vapi = files(meson.project_name() + '.vapi')
+libdconf_vapi = files('dconf.vapi')
-vapi_data = libdconf_vapi + files(meson.project_name() + '.deps')
+vapi_data = libdconf_vapi + files('dconf.deps')
install_data(
vapi_data,
- install_dir: join_paths(dconf_datadir, 'vala', 'vapi')
+ install_dir: vapi_dir,
)
diff --git a/common/meson.build b/common/meson.build
index c431fe9..6cf38b5 100644
--- a/common/meson.build
+++ b/common/meson.build
@@ -3,52 +3,48 @@ common_inc = include_directories('.')
headers = files(
'dconf-changeset.h',
'dconf-enums.h',
- 'dconf-paths.h'
+ 'dconf-paths.h',
)
install_headers(
headers,
- subdir: join_paths(meson.project_name(), 'common')
+ subdir: join_paths('dconf', 'common'),
)
-name = meson.project_name() + '-common'
-
sources = files(
'dconf-changeset.c',
'dconf-error.c',
- 'dconf-paths.c'
+ 'dconf-paths.c',
)
-cflags = ['-DG_LOG_DOMAIN="@0@"'.format(meson.project_name())]
+cflags = ['-DG_LOG_DOMAIN="dconf"']
libdconf_common = static_library(
- name,
+ 'dconf-common',
sources: sources,
include_directories: top_inc,
dependencies: glib_dep,
- c_args: cflags
+ c_args: cflags,
+ pic: true,
)
-libdconf_common_shared = static_library(
- name + '-shared',
- sources: sources,
- include_directories: top_inc,
+libdconf_common_dep = declare_dependency(
dependencies: glib_dep,
- c_args: cflags,
- pic: true
+ link_with: libdconf_common,
)
-test_cflag = '-fvisibility=hidden'
-
-if cc.has_argument(test_cflag)
- cflags += [test_cflag]
-endif
+cflags += cc.get_supported_arguments('-fvisibility=hidden')
libdconf_common_hidden = static_library(
- name + '-hidden',
+ 'dconf-common-hidden',
sources: sources,
include_directories: top_inc,
dependencies: glib_dep,
c_args: cflags,
- pic: true
+ pic: true,
+)
+
+libdconf_common_hidden_dep = declare_dependency(
+ dependencies: glib_dep,
+ link_with: libdconf_common_hidden,
)
diff --git a/docs/meson.build b/docs/meson.build
index 47f9062..d510464 100644
--- a/docs/meson.build
+++ b/docs/meson.build
@@ -1,22 +1,22 @@
-if get_option('enable-gtk-doc')
+if get_option('gtk_doc')
gnome.gtkdoc(
- meson.project_name(),
- main_xml: meson.project_name() + '-docs.xml',
+ 'dconf',
+ main_xml: 'dconf-docs.xml',
src_dir: [
common_inc,
client_inc
],
dependencies: libdconf_dep,
scan_args: '--rebuild-types',
- gobject_typesfile: meson.project_name() + '.types',
+ gobject_typesfile: 'dconf.types',
install: true,
- install_dir: join_paths(dconf_datadir, 'gtk-doc', 'html', meson.project_name())
+ install_dir: join_paths(dconf_prefix, gnome.gtkdoc_html_dir('dconf')),
)
endif
-if get_option('enable-man')
+if get_option('man')
xsltproc = find_program('xsltproc', required: false)
- assert(xsltproc.found(), 'xsltproc is required for enable-man')
+ assert(xsltproc.found(), 'xsltproc is required for man generation')
xsltproc_cmd = [
xsltproc,
@@ -28,13 +28,13 @@ if get_option('enable-man')
'--stringparam', 'man.authors.section.enabled', '0',
'--stringparam', 'man.copyright.section.enabled', '0',
'http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl',
- '@INPUT@'
+ '@INPUT@',
]
mans = [
['dconf-service.xml', 'dconf-service', '1'],
['dconf-tool.xml', 'dconf', '1'],
- ['dconf-overview.xml', 'dconf', '7']
+ ['dconf-overview.xml', 'dconf', '7'],
]
foreach man: mans
@@ -47,7 +47,7 @@ if get_option('enable-man')
output: output,
command: xsltproc_cmd,
install: true,
- install_dir: join_paths(dconf_mandir, man_dir)
+ install_dir: join_paths(dconf_mandir, man_dir),
)
endforeach
endif
diff --git a/engine/meson.build b/engine/meson.build
index 58b648f..e81d6c1 100644
--- a/engine/meson.build
+++ b/engine/meson.build
@@ -1,5 +1,3 @@
-name = meson.project_name() + '-engine'
-
sources = files(
'dconf-engine.c',
'dconf-engine-profile.c',
@@ -7,24 +5,24 @@ sources = files(
'dconf-engine-source-file.c',
'dconf-engine-source-user.c',
'dconf-engine-source-service.c',
- 'dconf-engine-source-system.c'
+ 'dconf-engine-source-system.c',
)
-cflags = '-DG_LOG_DOMAIN="@0@"'.format(meson.project_name())
+deps = [
+ libdconf_common_dep,
+ libgvdb_dep,
+]
libdconf_engine = static_library(
- name,
+ 'dconf-engine',
sources: sources,
include_directories: top_inc,
- dependencies: glib_dep,
- c_args: cflags
+ dependencies: deps + [libdconf_shm_dep],
+ c_args: '-DG_LOG_DOMAIN="dconf"',
+ pic: true,
)
-libdconf_engine_shared = static_library(
- name + '-shared',
- sources: sources,
- include_directories: top_inc,
- dependencies: glib_dep,
- c_args: cflags,
- pic: true
+libdconf_engine_dep = declare_dependency(
+ dependencies: deps,
+ link_with: libdconf_engine,
)
diff --git a/gdbus/meson.build b/gdbus/meson.build
index 4dda78d..ca07019 100644
--- a/gdbus/meson.build
+++ b/gdbus/meson.build
@@ -1,43 +1,29 @@
-name = meson.project_name() + '-gdbus-thread'
-
-sources = files('dconf-gdbus-thread.c')
-
-cflags = '-DG_LOG_DOMAIN="@0@"'.format(meson.project_name())
+cflags = '-DG_LOG_DOMAIN="dconf"'
libdconf_gdbus_thread = static_library(
- name,
- sources: sources,
- include_directories: top_inc,
- dependencies: gio_unix_dep,
- c_args: cflags
-)
-
-libdconf_gdbus_thread_shared = static_library(
- name + '-shared',
- sources: sources,
+ 'dconf-gdbus-thread',
+ sources: 'dconf-gdbus-thread.c',
include_directories: top_inc,
- dependencies: gio_unix_dep,
+ dependencies: libdconf_engine_dep,
c_args: cflags,
- pic: true
+ pic: true,
)
-name = meson.project_name() + '-gdbus-filter'
-
-sources = files('dconf-gdbus-filter.c')
+libdconf_gdbus_thread_dep = declare_dependency(
+ dependencies: libdconf_engine_dep,
+ link_with: libdconf_gdbus_thread,
+)
libdconf_gdbus_filter = static_library(
- name,
- sources: sources,
+ 'dconf-gdbus-filter',
+ sources: 'dconf-gdbus-filter.c',
include_directories: top_inc,
- dependencies: gio_unix_dep,
- c_args: cflags
+ dependencies: libdconf_engine_dep,
+ c_args: cflags,
+ pic: true,
)
-libdconf_gdbus_filter_shared = static_library(
- name + '-shared',
- sources: sources,
- include_directories: top_inc,
- dependencies: gio_unix_dep,
- c_args: cflags,
- pic: true
+libdconf_gdbus_filter_dep = declare_dependency(
+ dependencies: libdconf_engine_dep,
+ link_with: libdconf_gdbus_filter,
)
diff --git a/gsettings/meson.build b/gsettings/meson.build
index a1d0207..aca21f0 100644
--- a/gsettings/meson.build
+++ b/gsettings/meson.build
@@ -1,22 +1,16 @@
-sources = files('dconfsettingsbackend.c')
-
-cflags = '-DG_LOG_DOMAIN="@0@"'.format(meson.project_name())
+deps = [
+ libdconf_common_hidden_dep,
+ libdconf_gdbus_thread_dep,
+]
libdconf_settings = shared_library(
- meson.project_name() + 'settings',
- sources: sources,
+ 'dconfsettings',
+ sources: 'dconfsettingsbackend.c',
include_directories: top_inc,
- dependencies: gio_unix_dep,
- c_args: cflags,
- link_with: [
- libdconf_common_hidden,
- libdconf_engine_shared,
- libdconf_gdbus_thread_shared,
- libdconf_shm_shared,
- libgvdb_shared
- ],
+ dependencies: deps,
+ c_args: '-DG_LOG_DOMAIN="dconf"',
install: true,
- install_dir: join_paths(dconf_libdir, 'gio', 'modules')
+ install_dir: gio_module_dir,
)
envs = test_env + [
diff --git a/gvdb/meson.build b/gvdb/meson.build
index 4543430..3f774dd 100644
--- a/gvdb/meson.build
+++ b/gvdb/meson.build
@@ -1,24 +1,22 @@
-name = 'gvdb'
-
gvdb_builder = files('gvdb-builder.c')
sources = gvdb_builder + files('gvdb-reader.c')
-cflags = '-DG_LOG_DOMAIN="gvdb (via @0@)"'.format(meson.project_name())
+deps = [
+ gio_dep,
+ glib_dep,
+]
libgvdb = static_library(
- name,
+ 'gvdb',
sources: sources,
include_directories: top_inc,
- dependencies: glib_dep,
- c_args: cflags
+ dependencies: deps,
+ c_args: '-DG_LOG_DOMAIN="gvdb (via dconf)"',
+ pic: true,
)
-libgvdb_shared = static_library(
- name + '-shared',
- sources: sources,
- include_directories: top_inc,
- dependencies: glib_dep,
- c_args: cflags,
- pic: true
+libgvdb_dep = declare_dependency(
+ dependencies: deps,
+ link_with: libgvdb,
)
diff --git a/meson.build b/meson.build
index 7f9767e..a7497f1 100644
--- a/meson.build
+++ b/meson.build
@@ -2,23 +2,11 @@ project(
'dconf', ['c', 'vala'],
version: '0.28.0',
license: 'LGPL2.1+',
- default_options: [
- 'buildtype=debugoptimized',
- 'warning_level=1'
- ],
- meson_version: '>= 0.41.0'
+ meson_version: '>= 0.46.0',
)
-dconf_version = meson.project_version()
-version_array = dconf_version.split('.')
-dconf_major_version = version_array[0].to_int()
-dconf_minor_version = version_array[1].to_int()
-dconf_micro_version = version_array[2].to_int()
-
dconf_prefix = get_option('prefix')
-dconf_bindir = join_paths(dconf_prefix, get_option('bindir'))
dconf_datadir = join_paths(dconf_prefix, get_option('datadir'))
-dconf_includedir = join_paths(dconf_prefix, get_option('includedir'))
dconf_libdir = join_paths(dconf_prefix, get_option('libdir'))
dconf_libexecdir = join_paths(dconf_prefix, get_option('libexecdir'))
dconf_mandir = join_paths(dconf_prefix, get_option('mandir'))
@@ -33,62 +21,38 @@ libversion = '@0@.@1@.@2@'.format(soversion, current, revision)
cc = meson.get_compiler('c')
valac = meson.get_compiler('vala')
-config_h = configuration_data()
-
-# package
-set_defines = [
- ['PACKAGE', meson.project_name()],
- ['PACKAGE_BUGREPORT', 'https://gitlab.gnome.org/GNOME/dconf/issues'],
- ['PACKAGE_NAME', meson.project_name()],
- ['PACKAGE_STRING', '@0@ @1@'.format(meson.project_name(), dconf_version)],
- ['PACKAGE_TARNAME', meson.project_name()],
- ['PACKAGE_URL', 'https://wiki.gnome.org/Projects/dconf'],
- ['PACKAGE_VERSION', dconf_version],
- ['VERSION', dconf_version],
- ['GETTEXT_PACKAGE', meson.project_name()]
-]
-
-foreach define: set_defines
- config_h.set_quoted(define[0], define[1])
-endforeach
-
# compiler flags
-common_flags = ['-DHAVE_CONFIG_H']
+common_flags = []
if get_option('buildtype').contains('debug')
- test_cflags = [
+ common_flags += cc.get_supported_arguments([
'-fno-common',
'-Wmissing-prototypes',
- '-Wwrite-strings'
- ]
-
- foreach cflag: test_cflags
- if cc.has_argument(cflag)
- common_flags += [cflag]
- endif
- endforeach
+ '-Wwrite-strings',
+ ])
endif
add_project_arguments(common_flags, language: 'c')
-gio_unix_req_version = '>= 2.25.7'
+gio_req_version = '>= 2.25.7'
+gio_dep = dependency('gio-2.0', version: gio_req_version)
+gio_unix_dep = dependency('gio-unix-2.0', version: gio_req_version)
glib_dep = dependency('glib-2.0', version: '>= 2.44.0')
-gio_unix_dep = dependency('gio-unix-2.0', version: gio_unix_req_version)
-gio_querymodules = find_program('gio-querymodules', required: false)
-if gio_querymodules.found()
- gio_modules_dir = get_option('with-gio-modules-dir').strip()
- if gio_modules_dir == ''
- gio_modules_dir = join_paths(dconf_libdir, 'gio', 'modules')
- endif
+gio_module_dir = gio_dep.get_pkgconfig_variable('giomoduledir', define_variable: ['libdir', dconf_libdir])
+dbus_session_service_dir = dependency('dbus-1').get_pkgconfig_variable('session_bus_services_dir', define_variable: ['datadir', dconf_datadir])
+vapi_dir = dependency('vapigen').get_pkgconfig_variable('vapidir', define_variable: ['datadir', dconf_datadir])
- meson.add_install_script('meson_post_install.py', gio_querymodules.path(), gio_modules_dir)
+enable_bash_completion = get_option('bash_completion')
+if enable_bash_completion
+ # FIXME: the `.pc` file is wrong because `completionsdir` should be relative to `datadir`, not `prefix`
+ completions_dir = dependency('bash-completion').get_pkgconfig_variable('completionsdir', define_variable: ['prefix', dconf_prefix])
endif
configure_file(
output: 'config.h',
- configuration: config_h
+ configuration: configuration_data(),
)
test_env = [
@@ -113,3 +77,5 @@ subdir('client')
subdir('bin')
subdir('docs')
subdir('tests')
+
+meson.add_install_script('meson_post_install.py', gio_module_dir)
diff --git a/meson_options.txt b/meson_options.txt
index fb01218..9c8e3e6 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -1,5 +1,3 @@
-option('enable-man', type: 'boolean', value: true, description: 'generate man pages')
-option('with-gio-modules-dir', type: 'string', value: '', description: 'choose directory for the GIO module [default=LIBDIR/gio/modules]')
-option('with-dbus-service-dir', type: 'string', value: '', description: 'choose directory for dbus service files [default=PREFIX/share/dbus-1/services]')
-option('with-dbus-system-service-dir', type: 'string', value: '', description: 'choose directory for dbus system service files [default=PREFIX/share/dbus-1/system-services]')
-option('enable-gtk-doc', type: 'boolean', value: false, description: 'use gtk-doc to build documentation')
+option('bash_completion', type: 'boolean', value: true, description: 'install bash completion files')
+option('man', type: 'boolean', value: true, description: 'generate man pages')
+option('gtk_doc', type: 'boolean', value: false, description: 'use gtk-doc to build documentation')
diff --git a/meson_post_install.py b/meson_post_install.py
index 8960540..3082d42 100644
--- a/meson_post_install.py
+++ b/meson_post_install.py
@@ -6,4 +6,4 @@ import sys
if not os.environ.get('DESTDIR'):
print('GIO module cache creation...')
- subprocess.call([sys.argv[1], sys.argv[2]])
+ subprocess.call(['gio-querymodules', sys.argv[1]])
diff --git a/service/meson.build b/service/meson.build
index f651e25..342c883 100644
--- a/service/meson.build
+++ b/service/meson.build
@@ -1,13 +1,3 @@
-dbus_service_dir = get_option('with-dbus-service-dir').strip()
-if dbus_service_dir == ''
- dbus_service_dir = join_paths(dconf_datadir, 'dbus-1', 'services')
-endif
-
-dbus_system_service_dir = get_option('with-dbus-system-service-dir').strip()
-if dbus_system_service_dir == ''
- dbus_system_service_dir = join_paths(dconf_datadir, 'dbus-1', 'system-services')
-endif
-
service_conf = configuration_data()
service_conf.set('libexecdir', dconf_libexecdir)
@@ -16,9 +6,9 @@ service = dconf_namespace + '.service'
configure_file(
input: service + '.in',
output: service,
+ configuration: service_conf,
install: true,
- install_dir: dbus_service_dir,
- configuration: service_conf
+ install_dir: dbus_session_service_dir,
)
sources = [
@@ -28,26 +18,28 @@ sources = [
'dconf-service.c',
'dconf-shm-writer.c',
'dconf-writer.c',
- 'main.c'
+ 'main.c',
]
sources += gnome.gdbus_codegen(
'dconf-generated',
dconf_namespace + '.xml',
interface_prefix: dconf_namespace + '.',
- namespace: 'DConfDBus'
+ namespace: 'DConfDBus',
)
+deps = [
+ gio_unix_dep,
+ libdconf_common_dep,
+ libdconf_shm_dep,
+ libgvdb_dep,
+]
+
executable(
'dconf-service',
sources,
include_directories: top_inc,
- dependencies: gio_unix_dep,
- link_with: [
- libdconf_common,
- libdconf_shm,
- libgvdb
- ],
+ dependencies: deps,
install: true,
- install_dir: dconf_libexecdir
+ install_dir: dconf_libexecdir,
)
diff --git a/shm/meson.build b/shm/meson.build
index 01ced55..57a9852 100644
--- a/shm/meson.build
+++ b/shm/meson.build
@@ -1,22 +1,13 @@
-name = meson.project_name() + '-shm'
-
-sources = files('dconf-shm.c')
-
-cflags = '-DG_LOG_DOMAIN="@0@"'.format(meson.project_name())
-
libdconf_shm = static_library(
- name,
- sources: sources,
+ 'dconf-shm',
+ sources: 'dconf-shm.c',
include_directories: top_inc,
dependencies: glib_dep,
- c_args: cflags
+ c_args: '-DG_LOG_DOMAIN="dconf"',
+ pic: true,
)
-libdconf_shm_shared = static_library(
- name + '-shared',
- sources: sources,
- include_directories: top_inc,
+libdconf_shm_dep = declare_dependency(
dependencies: glib_dep,
- c_args: cflags,
- pic: true
+ link_with: libdconf_shm,
)
diff --git a/tests/meson.build b/tests/meson.build
index 0ec6cbe..ef0b940 100644
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -1,13 +1,13 @@
sources = files(
'dconf-mock-dbus.c',
'dconf-mock-gvdb.c',
- 'dconf-mock-shm.c'
+ 'dconf-mock-shm.c',
)
libdconf_mock = static_library(
- meson.project_name() + '-mock',
+ 'dconf-mock',
sources: sources,
- dependencies: glib_dep
+ dependencies: glib_dep,
)
envs = test_env + [
@@ -22,14 +22,14 @@ m_dep = cc.find_library('m')
unit_tests = [
# [name, sources, c_args, dependencies, link_with]
- ['paths', 'paths.c', [], glib_dep, libdconf_common],
- ['changeset', 'changeset.c', [], glib_dep, libdconf_common],
- ['shm', ['shm.c', 'tmpdir.c'], [], [glib_dep, dl_dep], libdconf_shm],
- ['gvdb', 'gvdb.c', '-DSRCDIR="@0@"'.format(test_dir), glib_dep, libgvdb],
- ['gdbus-thread', 'dbus.c', '-DDBUS_BACKEND="/gdbus/thread"', gio_unix_dep, libdconf_gdbus_thread],
- ['gdbus-filter', 'dbus.c', '-DDBUS_BACKEND="/gdbus/filter"', gio_unix_dep, libdconf_gdbus_filter],
- ['engine', 'engine.c', '-DSRCDIR="@0@"'.format(test_dir), [glib_dep, dl_dep, m_dep], [libdconf_engine, libdconf_common, libdconf_mock]],
- ['client', 'client.c', '-DSRCDIR="@0@"'.format(test_dir), gio_unix_dep, [libdconf_client, libdconf_engine, libdconf_common, libdconf_mock]]
+ ['paths', 'paths.c', [], libdconf_common_dep, []],
+ ['changeset', 'changeset.c', [], libdconf_common_dep, []],
+ ['shm', ['shm.c', 'tmpdir.c'], [], [dl_dep, libdconf_common_dep, libdconf_shm_dep], []],
+ ['gvdb', 'gvdb.c', '-DSRCDIR="@0@"'.format(test_dir), libgvdb_dep, []],
+ ['gdbus-thread', 'dbus.c', '-DDBUS_BACKEND="/gdbus/thread"', libdconf_gdbus_thread_dep, []],
+ ['gdbus-filter', 'dbus.c', '-DDBUS_BACKEND="/gdbus/filter"', libdconf_gdbus_filter_dep, []],
+ ['engine', 'engine.c', '-DSRCDIR="@0@"'.format(test_dir), [dl_dep, libdconf_engine_dep, m_dep], libdconf_mock],
+ ['client', 'client.c', '-DSRCDIR="@0@"'.format(test_dir), [libdconf_client_dep, libdconf_engine_dep], libdconf_mock],
]
foreach unit_test: unit_tests
@@ -38,7 +38,7 @@ foreach unit_test: unit_tests
unit_test[1],
c_args: unit_test[2],
dependencies: unit_test[3],
- link_with: unit_test[4]
+ link_with: unit_test[4],
)
test(unit_test[0], exe, is_parallel: false, env: envs)