blob: 4e84478716bd621a4f5180dfa5e2e44fbe57cb59 [file] [log] [blame]
project(
'libpeci',
'c', 'cpp',
version : '1.0',
meson_version: '>=1.1.1',
default_options: [
'b_ndebug=if-release',
'cpp_rtti=false',
'cpp_std=c++23',
'warning_level=3',
'werror=true',
]
)
if (get_option('raw-peci').allowed())
sdbusplus = dependency('sdbusplus')
systemd = dependency('systemd', required: true)
systemd_system_unit_dir = systemd.get_variable(pkgconfig:
'systemdsystemunitdir'
)
boost = dependency('boost', version: '>=1.82')
add_project_arguments(
[
'-DBOOST_ASIO_DISABLE_THREADS',
'-DBOOST_ASIO_EXCEPTION_DISABLE',
'-DBOOST_ASIO_NO_DEPRECATED',
'-DBOOST_NO_RTTI',
'-DBOOST_NO_TYPEID',
],
language : 'cpp'
)
endif
add_project_arguments(
[
'-Wcast-align',
'-Wconversion',
'-Wdouble-promotion',
'-Wduplicated-branches',
'-Wduplicated-cond',
'-Wformat=2',
'-Wlogical-op',
'-Wsign-conversion',
'-Wunused',
'-Wno-unused-parameter',
'-Wno-psabi',
],
language : 'c'
)
add_project_arguments(
[
'-Wcast-align',
'-Wconversion',
'-Wdouble-promotion',
'-Wduplicated-branches',
'-Wduplicated-cond',
'-Wformat=2',
'-Wlogical-op',
'-Wnull-dereference',
'-Wsign-conversion',
'-Wunused',
'-Wno-psabi',
'-Wno-unused-parameter',
'-fno-rtti',
],
language : 'cpp'
)
libpeci = library(
'peci',
'peci.c',
version: meson.project_version(),
install: true
)
install_headers('peci.h')
libpeci_dep = declare_dependency(
link_with: libpeci,
include_directories: include_directories('.')
)
bindir = get_option('prefix') + '/' + get_option('bindir')
executable(
'peci_cmds',
'peci_cmds.c',
link_with: libpeci,
install: true,
install_dir: bindir
)
if (get_option('raw-peci').allowed())
executable(
'raw-peci',
'dbus_raw_peci.cpp',
dependencies: [
boost,
sdbusplus,
systemd,
],
link_with: libpeci,
install: true,
install_dir: bindir
)
subdir('service_files')
endif
import('pkgconfig').generate(
libpeci,
name: meson.project_name(),
version: meson.project_version(),
description: 'PECI utilities',
)