-
Notifications
You must be signed in to change notification settings - Fork 292
/
meson.build
135 lines (124 loc) · 3.88 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
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
project(
'Tilix', 'd',
version: '1.9.7',
license: 'MPL-2.0',
meson_version: '>= 0.56'
)
compiler = meson.get_compiler('d')
if compiler.get_id() == 'llvm'
d_extra_args = ['-vcolumns']
d_link_args = []
else
d_extra_args = []
d_link_args = []
endif
project_id = 'com.gexperts.Tilix'
project_name = meson.project_name()
gnome = import('gnome')
i18n = import('i18n')
prefix = get_option('prefix')
bindir = prefix / get_option('bindir')
datadir = prefix / get_option('datadir')
pkgdatadir = datadir / project_name.to_lower()
schemadir = datadir / 'glib-2.0' / 'schemas'
iconsdir = datadir / 'icons' / 'hicolor'
appdir = datadir / 'applications'
tilix_sources = [
'source/gx/gtk/actions.d',
'source/gx/gtk/cairo.d',
'source/gx/gtk/clipboard.d',
'source/gx/gtk/color.d',
'source/gx/gtk/dialog.d',
'source/gx/gtk/resource.d',
'source/gx/gtk/settings.d',
'source/gx/gtk/threads.d',
'source/gx/gtk/util.d',
'source/gx/gtk/vte.d',
'source/gx/gtk/x11.d',
'source/gx/i18n/l10n.d',
'source/gx/tilix/bookmark/bmchooser.d',
'source/gx/tilix/bookmark/bmeditor.d',
'source/gx/tilix/bookmark/bmtreeview.d',
'source/gx/tilix/bookmark/manager.d',
'source/gx/tilix/prefeditor/advdialog.d',
'source/gx/tilix/prefeditor/bookmarkeditor.d',
'source/gx/tilix/prefeditor/common.d',
'source/gx/tilix/prefeditor/prefdialog.d',
'source/gx/tilix/prefeditor/profileeditor.d',
'source/gx/tilix/prefeditor/titleeditor.d',
'source/gx/tilix/terminal/actions.d',
'source/gx/tilix/terminal/activeprocess.d',
'source/gx/tilix/terminal/advpaste.d',
'source/gx/tilix/terminal/exvte.d',
'source/gx/tilix/terminal/layout.d',
'source/gx/tilix/terminal/monitor.d',
'source/gx/tilix/terminal/password.d',
'source/gx/tilix/terminal/regex.d',
'source/gx/tilix/terminal/search.d',
'source/gx/tilix/terminal/terminal.d',
'source/gx/tilix/terminal/util.d',
'source/gx/tilix/application.d',
'source/gx/tilix/appwindow.d',
'source/gx/tilix/closedialog.d',
'source/gx/tilix/cmdparams.d',
'source/gx/tilix/colorschemes.d',
'source/gx/tilix/common.d',
'source/gx/tilix/constants.d',
'source/gx/tilix/customtitle.d',
'source/gx/tilix/encoding.d',
'source/gx/tilix/preferences.d',
'source/gx/tilix/session.d',
'source/gx/tilix/shortcuts.d',
'source/gx/tilix/sidebar.d',
'source/gx/util/array.d',
'source/gx/util/path.d',
'source/gx/util/string.d',
'source/secret/Collection.d',
'source/secret/Item.d',
'source/secret/Prompt.d',
'source/secret/Schema.d',
'source/secret/SchemaAttribute.d',
'source/secret/Secret.d',
'source/secret/Service.d',
'source/secret/Value.d',
'source/secretc/secret.d',
'source/secretc/secrettypes.d',
'source/x11/X.d',
'source/x11/Xlib.d',
'source/app.d'
]
sources_dir = include_directories('source/')
# Dependencies
gtkd_dep = dependency('gtkd-3', version: '>=3.8.5')
vted_dep = dependency('vted-3', version: '>=3.8.5')
xlib_dep = dependency('x11')
libunwind_dep = dependency('libunwind')
libsecret_dep = dependency('libsecret-1', required: false)
subdir('po')
subdir('data')
# Build & Test
executable('tilix',
[tilix_sources, gresource],
include_directories : sources_dir,
dependencies : [gtkd_dep,
vted_dep,
xlib_dep,
libunwind_dep,
libsecret_dep],
d_args: d_extra_args,
d_module_versions: ['StdLoggerDisableTrace'],
link_args: d_link_args,
install : true
)
tilix_test_exe = executable('tilix_test',
[tilix_sources],
include_directories : [sources_dir],
dependencies : [gtkd_dep,
vted_dep,
xlib_dep],
d_args: d_extra_args,
link_args: d_link_args,
d_unittest: true
)
test('tilix_test', tilix_test_exe)
meson.add_install_script('meson_post_install.py')