Authenticator/data/meson.build

123 lines
3.4 KiB
Meson
Raw Normal View History

2019-09-03 00:07:06 +00:00
ui_config = configuration_data()
ui_config.set('app-id', application_id)
ui_config.set('version', meson.project_version() + version_suffix)
ui_preconfigured_files = files(
'resources/ui/about_dialog.ui.in',
'resources/ui/settings.ui.in',
'resources/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
resources = gnome.compile_resources(
application_id,
'com.belmoussaoui.Authenticator.gresource.xml',
gresource_bundle: true,
dependencies: ui_dependencies
)
# GSchema
gschema_conf = configuration_data()
gschema_conf.set('app-id', application_id)
gschema_conf.set('gettext-package', gettext_package)
configure_file(
input: 'com.belmoussaoui.Authenticator.gschema.xml.in',
output: '@0@.gschema.xml'.format(application_id),
configuration: gschema_conf,
install: true,
install_dir: datadir / 'glib-2.0' / 'schemas'
)
# Validata GSchema
if glib_compile_schemas.found()
test(
'validate-gschema', glib_compile_schemas,
args: [
'--strict', '--dry-run', meson.current_source_dir()
]
)
endif
# GNOME Shell Search Provider Service
search_service_provider_conf = configuration_data()
search_service_provider_conf.set('app-id', application_id)
configure_file(
configuration: search_service_provider_conf,
input: 'com.belmoussaoui.Authenticator.SearchProvider.service.in',
install_dir: 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('app-id', application_id)
search_provider_conf.set('profile', profile)
configure_file(
configuration: search_provider_conf,
input: 'com.belmoussaoui.Authenticator.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('icon', application_id)
desktop_file = i18n.merge_file(
'desktop',
input: configure_file(
input: 'com.belmoussaoui.Authenticator.desktop.in.in',
output: '@BASENAME@',
configuration: desktop_conf
),
output: '@0@.desktop'.format(application_id),
po_dir: podir,
type: 'desktop',
install: true,
install_dir: 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('app-id', application_id)
appdata_conf.set('gettext-package', gettext_package)
appdata_file = i18n.merge_file(
'appdata',
input: configure_file(
input: 'com.belmoussaoui.Authenticator.appdata.xml.in.in',
output: '@BASENAME@',
configuration: appdata_conf
),
output: '@0@.appdata.xml'.format(application_id),
po_dir: podir,
install: true,
install_dir: 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', '--nonet', appdata_file.full_path()]
)
endif
subdir('icons')