-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathmeson.build
76 lines (59 loc) · 2.18 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
project('wapanel', 'cpp',
version: '1.0.0',
default_options: [
'cpp_std=c++2a',
'build.cpp_std=c++2a'
])
add_languages('c', required: true, native: false)
dynlink = meson.get_compiler('cpp').find_library('dl', required: true)
pkgconfig = import('pkgconfig')
gtklayershell = dependency('gtk-layer-shell-0', version: '>= 0.6', fallback: ['gtk-layer-shell', 'gtk_layer_shell'])
gtk3 = dependency('gtk+-3.0')
gio2 = dependency('gio-2.0')
gio2unix = dependency('gio-unix-2.0')
deps = [
gtk3,
gio2,
gtklayershell,
dynlink
]
sources = [
'src/main.cc',
'src/panel.cc',
'src/config.cc',
'src/applets.cc',
'src/wap_t_convert.cc'
]
subdir('thirdparty')
appletapi_lib = static_library('wapanel-appletapi', ['src/lib/appletapi.c'], install: true)
install_headers('src/lib/appletapi.h', subdir: 'wapanel-appletapi')
pkgconfig.generate(appletapi_lib)
applet_install_dir = get_option('libdir') / meson.project_name() / 'applets'
subdir('src/applets')
install_data('3RD_PARTY_LICENSES', install_dir : get_option('datadir') / meson.project_name())
install_data('wapanel.toml', install_dir : get_option('datadir') / meson.project_name())
install_data('wapanel.css', install_dir : get_option('datadir') / meson.project_name())
install_data('resources/wapa-logo-nocolor-dark.svg',
install_dir : get_option('datadir') / meson.project_name() / 'icons/hicolor/scalable/apps')
install_data([
'resources/icons/wapa-account.svg',
'resources/icons/wapa-cog.svg',
'resources/icons/wapa-folder.svg'
], install_dir : get_option('datadir') / meson.project_name() / 'icons/hicolor/scalable/actions')
conf_data = configuration_data()
conf_data.set('app_version', meson.project_version())
if get_option('buildtype').startswith('release')
conf_data.set('BUILD_RELEASE', true)
endif
conf_data.set('data_dir', get_option('prefix') / get_option('datadir'))
conf_data.set('lib_dir', get_option('prefix') / get_option('libdir'))
configure_file(input : 'config_data.hh.in',
output : 'config_data.hh',
configuration : conf_data)
executable(
'wapanel',
sources,
dependencies: deps,
install: true,
include_directories : wapanel_include_directories
)