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') )