bindir = join_paths(prefix, get_option('bindir'))
libdir = join_paths(prefix, get_option('libdir'))
+libexecdir = join_paths(prefix, get_option('libexecdir'))
datadir = join_paths(prefix, get_option('datadir'))
localstatedir = join_paths(prefix, get_option('localstatedir'))
sysconfdir = join_paths(prefix, get_option('sysconfdir'))
+pulselibexecdir = join_paths(libexecdir, 'pulse')
+
pulsedspdir = get_option('pulsedspdir')
if pulsedspdir == ''
join_paths(libdir, 'pulseaudio')
cdata.set('HAVE_DBUS', 1)
endif
+gio_dep = dependency('gio-2.0', version : '>= 2.26.0', required : get_option('gsettings'))
+if gio_dep.found()
+ cdata.set('HAVE_GSETTINGS', 1)
+endif
+
glib_dep = dependency('glib-2.0', version : '>= 2.4.0', required: get_option('glib'))
if glib_dep.found()
cdata.set('HAVE_GLIB', 1)
option('glib',
type : 'feature', value : 'auto',
description : 'Optional GLib 2 support')
+option('gsettings',
+ type : 'feature', value : 'auto',
+ description : 'Optional GSettings support')
option('gtk',
type : 'feature', value : 'auto',
description : 'Optional Gtk+ 3 support')
--- /dev/null
+# GSettings helper
+
+gsettings_helper_sources = [
+ 'gsettings-helper.c',
+]
+
+gsettings_helper = executable('gsettings-helper',
+ gsettings_helper_sources,
+ c_args : pa_c_args,
+ include_directories : [configinc, topinc],
+ link_with : [libpulsecommon, libpulse],
+ dependencies : [gio_dep],
+ install_dir : pulselibexecdir,
+ install : true,
+)
+
+# GSettings schemas
+
+compile_schemas = find_program('glib-compile-schemas', required : false)
+if compile_schemas.found()
+ test('Validate schema files in ' + meson.current_source_dir(),
+ compile_schemas,
+ args: ['--strict', '--dry-run', meson.current_source_dir()]
+ )
+endif
+
+install_data('org.freedesktop.pulseaudio.gschema.xml',
+ install_dir : join_paths(datadir, 'glib-2.0', 'schemas')
+)
+
+meson.add_install_script('post-install.sh', datadir)
+
+# Conversion from GConf to GSettings
+
+install_data('pulseaudio.convert',
+ install_dir : join_paths(datadir, 'GConf', 'gsettings')
+)
--- /dev/null
+#!/bin/sh
+
+set -e
+set -u
+
+DATADIR="$1"
+
+echo "Compiling GSettings schemas..."
+glib-compile-schemas "$DATADIR/glib-2.0/schemas"
]
endif
+if gio_dep.found()
+ subdir('gsettings')
+ all_modules += [
+ [ 'module-gsettings',
+ [ 'gsettings/module-gsettings.c', 'stdin-util.c', 'stdin-util.h' ],
+ [], ['-DPA_GSETTINGS_HELPER="' + pulselibexecdir + 'gsettings-helper"'] ]
+ ]
+endif
+
if jack_dep.found()
all_modules += [
[ 'module-jack-sink', 'jack/module-jack-sink.c', [], [], [jack_dep] ],