49 lines
961 B
Meson
49 lines
961 B
Meson
project('minesweeper', 'cpp',
|
|
version : '0.2.0',
|
|
default_options : ['warning_level=3', 'cpp_std=c++20'])
|
|
|
|
gnome = import('gnome')
|
|
|
|
res = gnome.compile_resources(
|
|
'resources', 'resources/gresource.xml',
|
|
source_dir: 'resources',
|
|
c_name: 'gresources'
|
|
)
|
|
|
|
# Dependencies
|
|
deps = [
|
|
dependency('gtkmm-4.0'),
|
|
dependency('sigc++-3.0')
|
|
]
|
|
|
|
# Source files
|
|
src = [
|
|
'src/main.cpp',
|
|
'src/window.cpp',
|
|
'src/window.hpp',
|
|
'src/minefield.hpp',
|
|
'src/minefield.cpp',
|
|
'src/board_widget.hpp',
|
|
'src/board_widget.cpp',
|
|
res
|
|
]
|
|
|
|
# Executable
|
|
executable('minesweeper',
|
|
src,
|
|
dependencies : deps,
|
|
install : true
|
|
)
|
|
|
|
# Install icons
|
|
install_data(
|
|
'resources/minesweeper.svg',
|
|
install_dir: join_paths(get_option('datadir'), 'icons/hicolor/scalable/apps')
|
|
)
|
|
|
|
# Install desktop file
|
|
install_data(
|
|
'resources/org.gtkmm.minesweeper.desktop',
|
|
install_dir: join_paths(get_option('datadir'), 'applications')
|
|
)
|