project('screen_cast', 'cpp', version : '0.1.0', default_options : [ 'cpp_std=c++20', 'warning_level=3', 'werror=false', 'buildtype=release', ]) # Public and private include directories are declared in `src/meson.build`. subdir('src') # The GUI is a sender panel and needs the capture backend. if get_option('gui') and not get_option('sender') error('The GUI is a sender panel and requires -Dsender=true') endif # Manual smoke tools are sender-side. if get_option('sender') subdir('tools') endif # Tests enable_tests = get_option('tests') if enable_tests subdir('tests') endif # Install the application icon into the hicolor theme: the waybar widget CSS # and any future .desktop file reference it. install_data('screencast_icon/screencast_256.png', install_dir : get_option('datadir') / 'icons/hicolor/256x256/apps', rename : 'screencast.png') # Summary for the user summary({ 'tests': enable_tests, }, section: 'Build options')