81 lines
2.2 KiB
Meson
81 lines
2.2 KiB
Meson
gtkmm = dependency('gtkmm-4.0', required: true)
|
|
glibmm = dependency('glibmm-2.68', required: true)
|
|
giomm = dependency('giomm-2.68', required: true)
|
|
libsystemd = dependency('libsystemd', required: true)
|
|
shumate = dependency('shumate-1.0', required: true)
|
|
jsondep = dependency('nlohmann_json', required: true)
|
|
threads = dependency('threads', required: true)
|
|
|
|
sources = [
|
|
'src/main.cpp',
|
|
'src/Application.cpp',
|
|
'src/MainWindow.cpp',
|
|
'src/ipc/UIServer.cpp',
|
|
'src/util/ProxyDetect.cpp',
|
|
'src/util/GeoResolver.cpp',
|
|
'src/util/AppResolver.cpp',
|
|
'src/dialogs/AlertDialog.cpp',
|
|
'src/dialogs/LanguageDialog.cpp',
|
|
'src/pages/ConnectionsPage.cpp',
|
|
'src/pages/AppsPage.cpp',
|
|
'src/pages/NetworkPage.cpp',
|
|
'src/pages/RulesPage.cpp',
|
|
'src/pages/StatsPage.cpp',
|
|
'src/pages/AboutPage.cpp',
|
|
'src/pages/SettingsPage.cpp',
|
|
'src/TrayIcon.cpp',
|
|
]
|
|
|
|
inc = include_directories('src')
|
|
|
|
deps = [
|
|
gtkmm, glibmm, giomm, libsystemd, shumate, jsondep, threads,
|
|
]
|
|
|
|
executable('bastionguard-sc-ui',
|
|
sources,
|
|
include_directories : [inc, common_include_dir, root_include_dir],
|
|
dependencies : deps,
|
|
install : true,
|
|
install_dir : get_option('bindir'),
|
|
)
|
|
|
|
install_data(
|
|
'data/bastionguard-sc.desktop',
|
|
install_dir : join_paths(get_option('datadir'), 'applications'),
|
|
)
|
|
|
|
install_data(
|
|
'data/bastionguard-sc-autostart.desktop',
|
|
install_dir : join_paths(get_option('sysconfdir'), 'xdg', 'autostart'),
|
|
)
|
|
|
|
install_data(
|
|
'data/BSC.css',
|
|
'data/BSC-dark.css',
|
|
'data/icon-close.png',
|
|
'data/icon-minimize.png',
|
|
'data/logo-sidebar.png',
|
|
'data/logo.svg',
|
|
install_dir : join_paths(get_option('datadir'), 'bastionguard-sc', 'data'),
|
|
)
|
|
|
|
install_data(
|
|
'data/icons/connections.svg',
|
|
'data/icons/apps.svg',
|
|
'data/icons/network.svg',
|
|
'data/icons/rules.svg',
|
|
'data/icons/stats.svg',
|
|
'data/icons/about.svg',
|
|
install_dir : join_paths(get_option('datadir'), 'bastionguard-sc', 'data/icons'),
|
|
)
|
|
|
|
install_data(
|
|
'data/icons/bastionguard-sc.svg',
|
|
install_dir : join_paths(get_option('datadir'), 'icons', 'hicolor', 'scalable', 'apps'),
|
|
)
|
|
|
|
meson.add_install_script(
|
|
'sh', '-c',
|
|
'gtk-update-icon-cache -qtf "$MESON_INSTALL_DESTDIR_PREFIX/' + get_option('datadir') + '/icons/hicolor" || true'
|
|
)
|