service: Rename a method to make its behaviour more apparent
[dconf.git] / meson.build
blob788cea9da7a1b6cd6bade174fc8b7e29e6c226bc
1 project(
2   'dconf', ['c', 'vala'],
3   version: '0.29.2',
4   license: 'LGPL2.1+',
5   meson_version: '>= 0.46.0',
8 dconf_prefix = get_option('prefix')
9 dconf_datadir = join_paths(dconf_prefix, get_option('datadir'))
10 dconf_libdir = join_paths(dconf_prefix, get_option('libdir'))
11 dconf_libexecdir = join_paths(dconf_prefix, get_option('libexecdir'))
12 dconf_mandir = join_paths(dconf_prefix, get_option('mandir'))
13 dconf_sysconfdir = join_paths(dconf_prefix, get_option('sysconfdir'))
15 dconf_namespace = 'ca.desrt.dconf'
17 soversion = 1
18 current = 0
19 revision = 0
20 libversion = '@0@.@1@.@2@'.format(soversion, current, revision)
22 cc = meson.get_compiler('c')
23 valac = meson.get_compiler('vala')
25 # compiler flags
26 common_flags = ['-DSYSCONFDIR="@0@"'.format(dconf_sysconfdir)]
28 if get_option('buildtype').contains('debug')
29   common_flags += cc.get_supported_arguments([
30     '-fno-common',
31     '-Wmissing-prototypes',
32     '-Wwrite-strings',
33   ])
34 endif
36 add_project_arguments(common_flags, language: 'c')
38 dconf_c_args = [
39   '-DG_LOG_DOMAIN="dconf"',
40   '-DG_LOG_USE_STRUCTURED=1',
43 gio_req_version = '>= 2.25.7'
45 gio_dep = dependency('gio-2.0', version: gio_req_version)
46 gio_unix_dep = dependency('gio-unix-2.0', version: gio_req_version)
47 glib_dep = dependency('glib-2.0', version: '>= 2.44.0')
49 gio_module_dir = gio_dep.get_pkgconfig_variable('giomoduledir', define_variable: ['libdir', dconf_libdir])
50 dbus_session_service_dir = dependency('dbus-1').get_pkgconfig_variable('session_bus_services_dir', define_variable: ['datadir', dconf_datadir])
51 vapi_dir = dependency('vapigen').get_pkgconfig_variable('vapidir', define_variable: ['datadir', dconf_datadir])
53 enable_bash_completion = get_option('bash_completion')
54 if enable_bash_completion
55   # FIXME: the `.pc` file is wrong because `completionsdir` should be relative to `datadir`, not `prefix`
56   completions_dir = dependency('bash-completion').get_pkgconfig_variable('completionsdir', define_variable: ['prefix', dconf_prefix])
57 endif
59 configure_file(
60   output: 'config.h',
61   configuration: configuration_data(),
64 test_env = [
65   'G_DEBUG=gc-friendly,fatal-warnings',
66   'MALLOC_CHECK_=2',
67   'LC_ALL=C.UTF-8',
70 gnome = import('gnome')
71 pkg = import('pkgconfig')
73 top_inc = include_directories('.')
75 subdir('shm')
76 subdir('gvdb')
77 subdir('common')
78 subdir('engine')
79 subdir('service')
80 subdir('gdbus')
81 subdir('gsettings')
82 subdir('client')
83 subdir('bin')
84 subdir('docs')
85 subdir('tests')
87 meson.add_install_script('meson_post_install.py', gio_module_dir)