mirror of
https://gitlab.gnome.org/World/Authenticator.git
synced 2025-03-06 09:40:59 +01:00
118 lines
3.7 KiB
Meson
118 lines
3.7 KiB
Meson
ui_config = configuration_data()
|
|
ui_config.set('APP_ID', application_id)
|
|
ui_config.set('VERSION', meson.project_version())
|
|
|
|
ui_preconfigured_files = files(
|
|
'ui/about_dialog.ui.in',
|
|
'ui/settings.ui.in',
|
|
'ui/window.ui.in',
|
|
)
|
|
ui_dependencies = []
|
|
foreach ui_file: ui_preconfigured_files
|
|
ui_dependencies += configure_file(
|
|
input: ui_file,
|
|
output: '@BASENAME@',
|
|
configuration: ui_config
|
|
)
|
|
endforeach
|
|
|
|
gnome.compile_resources(
|
|
application_id,
|
|
meson.project_name() + '.gresource.xml',
|
|
gresource_bundle: true,
|
|
install_dir: join_paths(get_option('datadir'), meson.project_name()),
|
|
install: true,
|
|
dependencies: ui_dependencies
|
|
)
|
|
|
|
# Install gschema
|
|
gschema_conf = configuration_data()
|
|
gschema_conf.set('app-id', application_id)
|
|
gschema_conf.set('gettext-package', gettext_package)
|
|
if get_option('profile') == 'development'
|
|
gschema_conf.set('schema-path', '/com/github/bilelmoussaoui/Authenticator/')
|
|
else
|
|
gschema_conf.set('schema-path', '/com/github/bilelmoussaoui/AuthenticatorDevel/')
|
|
endif
|
|
configure_file(
|
|
configuration: gschema_conf,
|
|
input: files(meson.project_name() + '.gschema.xml.in'),
|
|
install_dir: join_paths(get_option('datadir'), 'glib-2.0', 'schemas'),
|
|
output: '@0@.gschema.xml'.format(application_id)
|
|
)
|
|
|
|
# GNOME Shell Search Provider Service
|
|
search_service_provider_conf = configuration_data()
|
|
search_service_provider_conf.set('appid', application_id)
|
|
search_service_provider_conf.set('profile', profile)
|
|
search_service_provider_conf.set('libexecdir', LIBEXEC_DIR)
|
|
configure_file(
|
|
configuration: search_service_provider_conf,
|
|
input: files(meson.project_name() + '.SearchProvider.service.in'),
|
|
install_dir: join_paths(get_option('datadir'), 'gnome-shell', 'search-providers'),
|
|
output: '@0@.SearchProvider.service'.format(application_id)
|
|
)
|
|
# GNOME Shell Search Provider
|
|
search_provider_conf = configuration_data()
|
|
search_provider_conf.set('appid', application_id)
|
|
search_provider_conf.set('profile', profile)
|
|
configure_file(
|
|
configuration: search_provider_conf,
|
|
input: files(meson.project_name() + '.SearchProvider.ini.in'),
|
|
install_dir: join_paths(get_option('datadir'), 'gnome-shell', 'search-providers'),
|
|
output: '@0@.SearchProvider.ini'.format(application_id)
|
|
)
|
|
|
|
# FreeDesktop Desktop File
|
|
desktop_conf = configuration_data()
|
|
desktop_conf.set('appid', application_id)
|
|
desktop_file = i18n.merge_file(
|
|
'desktop',
|
|
input: configure_file(
|
|
input: files(meson.project_name() + '.desktop.in.in'),
|
|
output: '@0@.desktop.in'.format(application_id),
|
|
configuration: desktop_conf
|
|
),
|
|
output: '@0@.desktop'.format(application_id),
|
|
po_dir: join_paths(meson.source_root(), 'po'),
|
|
type: 'desktop',
|
|
install: true,
|
|
install_dir: join_paths(get_option('datadir'), 'applications')
|
|
)
|
|
# Validate Desktop File
|
|
desktop_file_validate = find_program('desktop-file-validate', required: false)
|
|
if desktop_file_validate.found()
|
|
test (
|
|
'Validate desktop file',
|
|
desktop_file_validate,
|
|
args: desktop_file.full_path()
|
|
)
|
|
endif
|
|
|
|
# Freedesktop AppData File
|
|
appdata_conf = configuration_data()
|
|
appdata_conf.set('appid', application_id)
|
|
appdata_conf.set('gettext-package', gettext_package)
|
|
appdata_file = i18n.merge_file(
|
|
'appdata',
|
|
input: configure_file(
|
|
input: files(meson.project_name() + '.appdata.xml.in.in'),
|
|
output: '@0@.appdata.xml.in'.format(application_id),
|
|
configuration: appdata_conf
|
|
),
|
|
output: '@0@.appdata.xml'.format(application_id),
|
|
po_dir: join_paths(meson.source_root(), 'po'),
|
|
install: true,
|
|
install_dir: join_paths(get_option('datadir'), 'metainfo')
|
|
)
|
|
# Validate AppData File
|
|
appstream_util = find_program('appstream-util', required: false)
|
|
if appstream_util.found()
|
|
test (
|
|
'Validate appdata file',
|
|
appstream_util,
|
|
args: ['validate-relax', '--nonet', appdata_file.full_path()]
|
|
)
|
|
endif
|
|
|
|
subdir('icons')
|