dbus_service = gvfs_namespace + '.Metadata' dbus_exec = 'gvfsd-metadata' dbus_systemd_service = '' if install_systemd_systemduserunitdir service = 'gvfs-metadata.service' configure_file( input: service + '.in', output: '@BASENAME@', configuration: service_conf, install: true, install_dir: systemd_systemduserunitdir, ) dbus_systemd_service = 'SystemdService=' + service endif dbus_service_conf = configuration_data() dbus_service_conf.set('service', dbus_service) dbus_service_conf.set('exec', gvfs_prefix / gvfs_libexecdir / dbus_exec) dbus_service_conf.set('systemd_service', dbus_systemd_service) metadata_service = configure_file( input: dbus_service_in, output: dbus_service + '.service', configuration: dbus_service_conf, install: true, install_dir: dbus_session_bus_services_dir, ) dbus_sources = gnome.gdbus_codegen( 'metadata-dbus', 'dbus-interface.xml', interface_prefix: gvfs_namespace + '.', namespace: 'GVfs', autocleanup: 'objects', ) sources = files( 'crc32.c', 'metabuilder.c', 'metatree.c', ) deps = [ gio_dep, glib_dep, ] cflags = [ '-DDBUS_API_SUBJECT_TO_CHANGE', '-DG_LOG_DOMAIN="@0@"'.format(gvfs_name.to_upper()), '-DGVFS_LOCALEDIR="@0@"'.format(gvfs_prefix / gvfs_localedir), ] libmetadata = static_library( 'metadata', sources: sources + [dbus_sources], include_directories: [top_inc, common_inc], dependencies: deps + [gio_unix_dep], c_args: cflags, pic: true, ) libmetadata_dep = declare_dependency( sources: dbus_sources[1], include_directories: include_directories('.'), dependencies: deps, link_with: libmetadata, ) deps = [ libgvfscommon_dep, libmetadata_dep, ] if enable_gudev deps += gudev_dep endif executable( 'gvfsd-metadata', 'meta-daemon.c', include_directories: top_inc, dependencies: deps, c_args: cflags, install: true, install_rpath: gvfs_rpath, install_dir: gvfs_libexecdir, ) if enable_devel_utils apps = [ 'meta-ls', 'meta-get', 'meta-set', 'meta-get-tree', ] foreach app: apps executable( app, app + '.c', include_directories: top_inc, dependencies: [ libgvfscommon_dep, libmetadata_dep, ], c_args: cflags, ) endforeach if have_libxml executable( 'convert-nautilus-metadata', 'metadata-nautilus.c', include_directories: top_inc, dependencies: [ libmetadata_dep, libxml_dep, ], c_args: cflags, ) endif endif