-
-
Notifications
You must be signed in to change notification settings - Fork 32
/
meson.build
115 lines (107 loc) · 2.82 KB
/
meson.build
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
blueprints = custom_target(
'blueprints',
input: files(
'gtk/details-dialog.blp',
'gtk/game.blp',
'gtk/help-overlay.blp',
'gtk/preferences.blp',
'gtk/window.blp',
),
output: '.',
command: [
find_program('blueprint-compiler'),
'batch-compile',
'@OUTPUT@',
'@CURRENT_SOURCE_DIR@',
'@INPUT@',
],
)
gnome.compile_resources(
'cartridges',
configure_file(
input: 'cartridges.gresource.xml.in',
output: 'cartridges.gresource.xml',
configuration: conf,
),
gresource_bundle: true,
install: true,
install_dir: pkgdatadir,
dependencies: blueprints,
)
if host_machine.system() == 'windows'
desktop_file = configure_file(
input: 'page.kramo.Cartridges.desktop.in',
output: app_id + '.desktop.in',
configuration: conf,
install: true,
install_dir: join_paths(get_option('datadir'), 'applications'),
)
else
desktop_file = i18n.merge_file(
input: configure_file(
input: 'page.kramo.Cartridges.desktop.in',
output: app_id + '.desktop.in',
configuration: conf,
),
output: app_id + '.desktop',
type: 'desktop',
po_dir: '../po',
install: true,
install_dir: join_paths(get_option('datadir'), 'applications'),
)
endif
if host_machine.system() != 'windows'
desktop_utils = find_program('desktop-file-validate', required: false)
if desktop_utils.found()
test('Validate desktop file', desktop_utils, args: [desktop_file])
endif
endif
if host_machine.system() == 'windows'
appstream_file = configure_file(
input: 'page.kramo.Cartridges.metainfo.xml.in',
output: app_id + '.metainfo.xml',
configuration: conf,
install: true,
install_dir: join_paths(get_option('datadir'), 'metainfo'),
)
else
appstream_file = i18n.merge_file(
input: configure_file(
input: 'page.kramo.Cartridges.metainfo.xml.in',
output: app_id + '.metainfo.xml.in',
configuration: conf,
),
output: app_id + '.metainfo.xml',
po_dir: '../po',
install: true,
install_dir: join_paths(get_option('datadir'), 'metainfo'),
)
endif
if host_machine.system() != 'windows'
appstreamcli = find_program('appstreamcli', required: false)
if appstreamcli.found()
test(
'Validate appstream file',
appstreamcli,
args: ['validate', '--no-net', '--explain', appstream_file],
workdir: meson.current_build_dir(),
)
endif
endif
install_data(
configure_file(
input: 'page.kramo.Cartridges.gschema.xml.in',
output: app_id + '.gschema.xml',
configuration: conf,
),
install_dir: join_paths(get_option('datadir'), 'glib-2.0/schemas'),
)
compile_schemas = find_program('glib-compile-schemas', required: false)
if compile_schemas.found()
test(
'Validate schema file',
compile_schemas,
args: ['--strict', '--dry-run', meson.current_source_dir()],
)
endif
subdir('icons')