xref: /openbmc/s2600wf-misc/subprojects/callback-manager/meson.build (revision 2ac1af7085679fbb90c0ba26dab0df8286165c16)
1*# Compiler flags
2*cpp_args = [
3*    '-Werror',
4*    '-Wall',
5*    '-Wextra',
6*    '-Wshadow',
7*    '-Wnon-virtual-dtor',
8*    '-Wold-style-cast',
9*    '-Wcast-align',
10*    '-Wunused',
11*    '-Woverloaded-virtual',
12*    '-Wpedantic',
13*    '-Wconversion',
14*    '-Wmisleading-indentation',
15*    '-Wduplicated-cond',
16*    '-Wduplicated-branches',
17*    '-Wlogical-op',
18*    '-Wnull-dereference',
19*    '-Wuseless-cast',
20*    '-Wdouble-promotion',
21*    '-Wformat=2',
22*    '-fno-rtti',
23*]
24*
25*# Boost library
26*boost_dep = dependency('boost', required: true)
27*
28*# Definitions
29*add_project_arguments(
30*    '-DBOOST_ERROR_CODE_HEADER_ONLY',
31*    '-DBOOST_SYSTEM_NO_DEPRECATED',
32*    '-DBOOST_ALL_NO_LIB',
33*    '-DBOOST_NO_RTTI',
34*    '-DBOOST_NO_TYPEID',
35*    '-DBOOST_ASIO_DISABLE_THREADS',
36*    language: 'cpp',
37*)
38*
39*# Include directories
40*inc = include_directories('include')
41*
42*# Executable
43*
44*
45*boost = dependency('boost', version: '1.73.0', required: false)
46*sdbusplus = dependency('sdbusplus', required: false)
47*
48*executable(
49*    'callback-manager',
50*    'src/callback_manager.cpp',
51*    include_directories: inc,
52*    cpp_args: cpp_args,
53*    dependencies: [boost_dep],
54*    link_with: ['systemd', 'i2c', 'sdbusplus', 'stdc++fs', 'gpiodcxx'],
55*)
56*
57*systemd_dep = dependency('systemd', required: true)
58*incdir = include_directories('include')
59*executable(
60*    'callback-manager',
61*    'src/callback_manager.cpp',
62*    include_directories: incdir,
63*    dependencies: [boost, sdbusplus, systemd_dep],
64*)
65*# Systemd service files
66*systemd_system_unit_dir = systemd_dep.get_pkgconfig_variable(
67*    'systemdsystemunitdir',
68*)
69*
70*install_data(
71*    'service_files/callback-manager.service',
72*    install_dir: systemd_system_unit_dir,
73*)
74*