project('libdnf-plugin-txnupd', 'cpp',
version : '0.1.4',
license : 'LGPL-2.1-or-later',
default_options : [
'buildtype=debugoptimized',
'b_asneeded=True',
'b_lundef=True',
'b_pie=true',
'cpp_std=gnu++17',
'warning_level=3',
],
meson_version : '>=0.49.0')
cc = meson.get_compiler('cpp')
test_cppflags = [
'-fstrict-aliasing',
'-Wformat=2',
'-Wunused',
'-Wuninitialized',
'-Wstrict-prototypes',
'-Wmissing-prototypes',
'-Werror=init-self',
'-Werror=main',
]
foreach cppflag : test_cppflags
if cc.has_argument(cppflag)
add_project_arguments(cppflag, language : 'cpp')
endif
endforeach
libdnf_plugin_libdir = join_paths(get_option('prefix'), get_option('libdir'), 'libdnf', 'plugins')
add_project_arguments(
'-DTXNUPD_PLUGIN_VERSION="@0@"'.format(meson.project_version()),
language : 'cpp',
)
libdnf = dependency('libdnf', version : '>=0.60')
tukit = dependency('tukit', version : '>=3.6.2')
libdnf_plugin_src = files(
'src/txnupd.cpp',
)
libdnf_plugin = shared_module('txnupd',
libdnf_plugin_src,
dependencies : [libdnf, tukit],
name_prefix : '',
name_suffix : 'so',
install : true,
install_dir : libdnf_plugin_libdir,
)