-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathmeson.build
65 lines (55 loc) · 1.47 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
# Project name, programming language and version
project (
'com.github.elfenware.obliviate',
'vala', 'c',
version: '2.4.0'
)
# Translation module
i18n = import ('i18n')
# Translations data
config_data = configuration_data()
config_data.set_quoted('LOCALEDIR', get_option('prefix') / get_option('localedir'))
config_data.set_quoted('GETTEXT_PACKAGE', meson.project_name())
config_file = configure_file(
input: 'src/Config.vala.in',
output: '@BASENAME@',
configuration: config_data
)
# GNOME module
gnome = import('gnome')
# Project arguments
add_project_arguments (
'-DGETTEXT_PACKAGE="@0@"'.format (meson.project_name ()),
language: 'c'
)
# Compiling resources
asresources = gnome.compile_resources (
'as-resources',
join_paths ('data', meson.project_name ()) + '.gresource.xml',
source_dir: 'data',
c_name: 'as'
)
# Listing dependencies
dependencies = [
dependency ('glib-2.0'),
dependency ('granite'),
dependency ('gtk+-3.0'),
dependency ('libhandy-1'),
declare_dependency (dependencies: [
meson.get_compiler ('c').find_library ('libgcrypt'),
meson.get_compiler ('vala').find_library ('gcrypt', dirs: join_paths (meson.current_source_dir (), 'vapi'))
])
]
subdir ('src')
# Executable
executable (
meson.project_name (),
config_file,
asresources,
sources,
dependencies: dependencies,
install: true
)
subdir('data')
subdir('po')
meson.add_install_script ('meson/post_install.py')