2022-08-17 14:43:13 +00:00
|
|
|
data_builddir = meson.current_build_dir()
|
|
|
|
|
2017-05-25 00:16:27 +00:00
|
|
|
desktop_files = [
|
|
|
|
'org.gnome.Shell.desktop',
|
2020-04-02 14:53:40 +00:00
|
|
|
'org.gnome.Shell.Extensions.desktop',
|
2017-05-25 00:16:27 +00:00
|
|
|
]
|
|
|
|
service_files = []
|
|
|
|
|
|
|
|
if have_networkmanager
|
|
|
|
desktop_files += 'org.gnome.Shell.PortalHelper.desktop'
|
|
|
|
service_files += 'org.gnome.Shell.PortalHelper.service'
|
|
|
|
endif
|
|
|
|
|
|
|
|
desktopconf = configuration_data()
|
|
|
|
# We substitute in bindir so it works as an autostart
|
|
|
|
# file when built in a non-system prefix
|
|
|
|
desktopconf.set('bindir', bindir)
|
2019-08-05 19:46:05 +00:00
|
|
|
desktopconf.set('systemd_hidden', have_systemd ? 'true' : 'false')
|
|
|
|
|
2017-05-25 00:16:27 +00:00
|
|
|
foreach desktop_file : desktop_files
|
2021-12-23 16:18:16 +00:00
|
|
|
i18n.merge_file(
|
2017-05-25 00:16:27 +00:00
|
|
|
input: configure_file(
|
|
|
|
input: desktop_file + '.in.in',
|
|
|
|
output: desktop_file + '.in',
|
|
|
|
configuration: desktopconf
|
|
|
|
),
|
|
|
|
output: desktop_file,
|
2019-04-26 10:33:58 +00:00
|
|
|
po_dir: po_dir,
|
2017-05-25 00:16:27 +00:00
|
|
|
install: true,
|
|
|
|
install_dir: desktopdir,
|
|
|
|
type: 'desktop'
|
|
|
|
)
|
|
|
|
endforeach
|
|
|
|
|
|
|
|
serviceconf = configuration_data()
|
|
|
|
serviceconf.set('libexecdir', libexecdir)
|
|
|
|
foreach service_file : service_files
|
|
|
|
configure_file(
|
|
|
|
input: service_file + '.in',
|
|
|
|
output: service_file,
|
|
|
|
configuration: serviceconf,
|
|
|
|
install_dir: servicedir
|
|
|
|
)
|
|
|
|
endforeach
|
|
|
|
|
2020-12-28 23:01:03 +00:00
|
|
|
theme_deps = []
|
2017-05-25 00:16:27 +00:00
|
|
|
|
2018-09-06 14:29:26 +00:00
|
|
|
subdir('dbus-interfaces')
|
2020-04-02 14:53:40 +00:00
|
|
|
subdir('icons')
|
2017-05-25 00:16:27 +00:00
|
|
|
subdir('theme')
|
|
|
|
|
2018-09-06 00:04:47 +00:00
|
|
|
data_resources = [
|
2022-01-31 22:55:57 +00:00
|
|
|
{'name': 'dbus-interfaces'},
|
2022-01-31 15:10:58 +00:00
|
|
|
{'name': 'icons'},
|
2022-01-31 22:55:57 +00:00
|
|
|
{'name': 'osk-layouts'},
|
|
|
|
{'name': 'theme', 'deps': theme_deps}
|
2018-09-06 00:04:47 +00:00
|
|
|
]
|
|
|
|
foreach resource : data_resources
|
2022-01-31 22:55:57 +00:00
|
|
|
name = resource.get('name')
|
|
|
|
deps = resource.get('deps', [])
|
|
|
|
|
2018-09-06 00:04:47 +00:00
|
|
|
gnome.compile_resources(
|
2022-01-31 22:55:57 +00:00
|
|
|
'gnome-shell-' + name,
|
|
|
|
'gnome-shell-@0@.gresource.xml'.format(name),
|
|
|
|
source_dir: name,
|
|
|
|
dependencies: deps,
|
2018-09-06 00:04:47 +00:00
|
|
|
gresource_bundle: true,
|
|
|
|
install: true,
|
|
|
|
install_dir: pkgdatadir
|
|
|
|
)
|
|
|
|
endforeach
|
2017-08-10 19:06:25 +00:00
|
|
|
|
2017-05-25 00:16:27 +00:00
|
|
|
perfconf = configuration_data()
|
|
|
|
perfconf.set('datadir', datadir)
|
|
|
|
configure_file(
|
|
|
|
input: 'perf-background.xml.in',
|
|
|
|
output: 'perf-background.xml',
|
|
|
|
configuration: perfconf,
|
|
|
|
install_dir: pkgdatadir
|
|
|
|
)
|
|
|
|
|
2021-04-07 19:18:39 +00:00
|
|
|
keybinding_files = [
|
|
|
|
'50-gnome-shell-launchers.xml',
|
2022-01-15 16:06:49 +00:00
|
|
|
'50-gnome-shell-screenshots.xml',
|
2021-04-07 19:18:39 +00:00
|
|
|
'50-gnome-shell-system.xml',
|
|
|
|
]
|
2017-05-25 00:16:27 +00:00
|
|
|
|
2017-07-19 23:43:38 +00:00
|
|
|
install_data('gnome-shell.portal', install_dir: portaldir)
|
2021-04-07 19:18:39 +00:00
|
|
|
install_data(keybinding_files, install_dir: keysdir)
|
2017-05-25 00:16:27 +00:00
|
|
|
|
|
|
|
|
|
|
|
schemaconf = configuration_data()
|
|
|
|
schemaconf.set('GETTEXT_PACKAGE', meson.project_name())
|
2017-08-19 08:43:38 +00:00
|
|
|
schema = configure_file(
|
2017-05-25 00:16:27 +00:00
|
|
|
input: 'org.gnome.shell.gschema.xml.in',
|
|
|
|
output: 'org.gnome.shell.gschema.xml',
|
|
|
|
configuration: schemaconf,
|
|
|
|
install_dir: schemadir
|
|
|
|
)
|
2017-08-16 19:15:48 +00:00
|
|
|
install_data('00_org.gnome.shell.gschema.override', install_dir: schemadir)
|
2017-05-25 00:16:27 +00:00
|
|
|
|
2018-01-17 15:56:17 +00:00
|
|
|
if have_systemd
|
|
|
|
unitconf = configuration_data()
|
|
|
|
unitconf.set('bindir', bindir)
|
|
|
|
|
2019-04-19 22:21:55 +00:00
|
|
|
configure_file(
|
2020-06-09 11:01:39 +00:00
|
|
|
input: 'org.gnome.Shell@x11.service.in',
|
|
|
|
output: 'org.gnome.Shell@x11.service',
|
2019-04-19 22:21:55 +00:00
|
|
|
configuration: unitconf,
|
|
|
|
install_dir: systemduserunitdir
|
|
|
|
)
|
|
|
|
|
|
|
|
configure_file(
|
2020-06-09 11:01:39 +00:00
|
|
|
input: 'org.gnome.Shell@wayland.service.in',
|
|
|
|
output: 'org.gnome.Shell@wayland.service',
|
2018-01-17 15:56:17 +00:00
|
|
|
configuration: unitconf,
|
|
|
|
install_dir: systemduserunitdir
|
|
|
|
)
|
|
|
|
|
2020-06-09 11:01:39 +00:00
|
|
|
units = files('org.gnome.Shell.target',
|
2020-02-13 17:39:32 +00:00
|
|
|
'org.gnome.Shell-disable-extensions.service')
|
2018-01-17 15:56:17 +00:00
|
|
|
|
|
|
|
install_data(units, install_dir: systemduserunitdir)
|
|
|
|
endif
|
|
|
|
|
2017-08-19 08:43:38 +00:00
|
|
|
# for unit tests - gnome.compile_schemas() only looks in srcdir
|
|
|
|
custom_target('compile-schemas',
|
|
|
|
input: schema,
|
|
|
|
output: 'gschemas.compiled',
|
2022-08-17 14:43:13 +00:00
|
|
|
command: [find_program('glib-compile-schemas'), data_builddir],
|
2017-08-19 08:43:38 +00:00
|
|
|
build_by_default: true)
|