diff options
Diffstat (limited to '')
-rw-r--r-- | gnome-session/meson.build | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/gnome-session/meson.build b/gnome-session/meson.build new file mode 100644 index 0000000..7d2f3c0 --- /dev/null +++ b/gnome-session/meson.build @@ -0,0 +1,111 @@ +script_conf = configuration_data() +script_conf.set('libexecdir', session_libexecdir) + +script = 'gnome-session' + +configure_file( + input: script + '.in', + output: script, + install: true, + install_dir: session_bindir, + configuration: script_conf +) + +libgsmutil = static_library( + 'gsmutil', + sources: 'gsm-util.c', + include_directories: top_inc, + dependencies: session_deps +) + +sources = files( + 'gsm-app.c', + 'gsm-autostart-app.c', + 'gsm-client.c', + 'gsm-dbus-client.c', + 'gsm-fail-whale.c', + 'gsm-inhibitor.c', + 'gdm-log.c', + 'gsm-manager.c', + 'gsm-presence.c', + 'gsm-process-helper.c', + 'gsm-session-fill.c', + 'gsm-session-save.c', + 'gsm-shell-extensions.c', + 'gsm-shell.c', + 'gsm-store.c', + 'gsm-system.c', + 'gsm-systemd.c', + 'gsm-xsmp-client.c', + 'gsm-xsmp-server.c', + 'main.c' +) + +dbus_ifaces = [ + ['org.gnome.SessionManager', 'ExportedManager'], + ['org.gnome.SessionManager.Client', 'ExportedClient'], + ['org.gnome.SessionManager.ClientPrivate', 'ExportedClientPrivate'], + ['org.gnome.SessionManager.App', 'ExportedApp'], + ['org.gnome.SessionManager.Inhibitor', 'ExportedInhibitor'], + ['org.gnome.SessionManager.Presence', 'ExportedPresence'] +] + +foreach iface: dbus_ifaces + sources += gnome.gdbus_codegen( + iface[0], + iface[0] + '.xml', + interface_prefix: iface[0] + '.', + namespace: 'Gsm', + annotations: [iface[0], 'org.gtk.GDBus.C.Name', iface[1]] + ) +endforeach + +if enable_consolekit + sources += files('gsm-consolekit.c') +endif + +cflags = [ + '-DLOCALE_DIR="@0@"'.format(session_localedir), + '-DDATA_DIR="@0@"'.format(session_pkgdatadir), + '-DLIBEXECDIR="@0@"'.format(session_libexecdir) +] + +executable( + meson.project_name() + '-binary', + sources, + include_directories: top_inc, + dependencies: session_bin_deps, + c_args: cflags, + link_with: libgsmutil, + install: true, + install_dir: session_libexecdir +) + +sources = files('gsm-fail-whale-dialog.c') + +cflags = '-DLOCALE_DIR="@0@"'.format(session_localedir) + +executable( + meson.project_name() + '-failed', + sources, + include_directories: top_inc, + dependencies: gtk_dep, + c_args: cflags, + install: true, + install_dir: session_libexecdir +) + +units = [ + ['test-inhibit', [], session_deps + [gtk_dep]], + ['test-client-dbus', [], [gio_dep]], + ['test-process-helper', files('gsm-process-helper.c'), [gio_dep]] +] + +foreach unit: units + executable( + unit[0], + [unit[0] + '.c'] + unit[1], + include_directories: top_inc, + dependencies: unit[2] + ) +endforeach |