project('hostlistfilter', 'cpp') mod_qt5 = import('qt5') dep_qt5 = dependency('qt5', modules: [ 'Core', 'Network', 'WebEngineWidgets' ], include_type: 'system' ) dep_catch = dependency('catch2', required: true, fallback: ['catch2', 'catch2_dep'] ) smolbote_interface = include_directories(get_option('interface')) message(get_option('interface')) lib_hostlistfilter = static_library('hostlistfilter', [ 'filterlist.cpp' ], include_directories: smolbote_interface, dependencies: [dep_qt5] ) dep_hostlistfilter = declare_dependency( include_directories: [ '.', smolbote_interface ], link_with: lib_hostlistfilter ) # plugin plugin = shared_library('smolblokHostlistPlugin', [ 'plugin/plugin.cpp', mod_qt5.preprocess(include_directories: smolbote_interface, moc_headers: 'plugin/plugin.h', dependencies: dep_qt5) ], include_directories: smolbote_interface, dependencies: [ dep_hostlistfilter, dep_qt5 ], install: true, install_dir: get_option('libdir')/'smolbote/plugins' ) # tests test('rule parsing', executable('rule', sources: 'test/rule.cpp', dependencies: [dep_qt5, dep_catch, dep_hostlistfilter])) test('filterlist', executable('filterlist', sources: 'test/filterlist.cpp', dependencies: [dep_qt5, dep_catch, dep_hostlistfilter]), env: 'HOSTLIST_TXT='+meson.current_source_dir()/'test/hostlist.txt' )