xref: /openbmc/entity-manager/meson.build (revision b4459915)
1project(
2    'entity-manager',
3    'cpp',
4    default_options: [
5        'warning_level=3',
6        'werror=true',
7        'cpp_std=c++17'
8    ],
9    license: 'Apache-2.0',
10    version: '0.1',
11)
12
13boost_args = [
14    '-DBOOST_SYSTEM_NO_DEPRECATED',
15    '-DBOOST_ERROR_CODE_HEADER_ONLY',
16    '-DBOOST_NO_RTTI',
17    '-DBOOST_NO_TYPEID',
18    '-DBOOST_ALL_NO_LIB',
19]
20build_tests = get_option('tests')
21boost = dependency('boost')
22i2c = meson.get_compiler('cpp').find_library('i2c')
23sdbusplus = dependency('sdbusplus')
24systemd = dependency('systemd')
25systemd_system_unit_dir = systemd.get_pkgconfig_variable(
26    'systemdsystemunitdir',
27    define_variable: ['prefix', get_option('prefix')])
28packagedir = join_paths(
29    get_option('prefix'),
30    get_option('datadir'),
31    meson.project_name(),
32)
33threads = dependency('threads')
34
35install_data('blacklist.json')
36
37configs = [
38    '1Ux16 Riser.json',
39    '2Ux8 Riser.json',
40    '8X25 HSBP.json',
41    'A2UL16RISER.json',
42    'A2UX8X4RISER.json',
43    'AHW1UM2RISER.json',
44    'AXX1P100HSSI_AIC.json',
45    'AXX2PRTHDHD.json',
46    'BNP Baseboard.json',
47    'Delta DPS-750XB PSU.json',
48    'F1U12X25 HSBP.json',
49    'F1U4X25 HSBP.json',
50    'F2U12X35 HSBP.json',
51    'F2U8X25 HSBP.json',
52    'FBTP.json',
53    'FBYV2.json',
54    'Flextronics S-1100ADU00-201 PSU.json',
55    'Intel Front Panel.json',
56    'NVME P4000.json',
57    'PCIE SSD Retimer.json',
58    'PSSF132202A.json',
59    'PSSF162205A.json',
60    'PSSF212201A.json',
61    'PSSF222201A.json',
62    'R1000 Chassis.json',
63    'R2000 Chassis.json',
64    'SAS Module.json',
65    'SOLUM_PSSF162202_PSU.json',
66    'STP Baseboard.json',
67    'STP P4000 Chassis.json',
68    'WFT Baseboard.json',
69]
70
71foreach c : configs
72    install_data(
73        join_paths('configurations', c),
74        install_dir: join_paths(
75            packagedir,
76            'configurations',
77        )
78    )
79endforeach
80
81schemas = [
82    'global.json',
83    'Pid.json',
84    'Pid.Zone.json',
85    'Stepwise.json',
86]
87
88foreach s : schemas
89    install_data(
90        join_paths('schemas', s),
91        install_dir: join_paths(
92            packagedir,
93            'configurations',
94            'schemas',
95        )
96    )
97endforeach
98
99subdir('service_files')
100subdir('src')
101subdir('test')
102