blob: ca46b2d337f83c15b8ac6ef2ea432340f06c4212 [file] [log] [blame]
Will Lianga1d42022019-06-13 14:17:12 +08001project(
2 'phosphor-ecc',
3 'cpp',
4 version: '1.0',
Patrick Williamsc31b23c2025-02-01 08:38:22 -05005 default_options: ['cpp_std=c++23'],
Patrick Williams9a31e9a2023-07-12 11:16:06 -05006 meson_version: '>=1.1.1',
Will Lianga1d42022019-06-13 14:17:12 +08007)
8
9executable(
10 'ecc_main',
Patrick Williamsc31b23c2025-02-01 08:38:22 -050011 ['ecc_main.cpp', 'ecc_manager.cpp'],
Will Lianga1d42022019-06-13 14:17:12 +080012 dependencies: [
13 dependency('sdbusplus'),
14 dependency('sdeventplus'),
15 dependency('phosphor-dbus-interfaces'),
16 dependency('phosphor-logging'),
17 ],
18 install: true,
Patrick Williamsc31b23c2025-02-01 08:38:22 -050019 install_dir: get_option('bindir'),
Will Lianga1d42022019-06-13 14:17:12 +080020)
21
Patrick Williamsc31b23c2025-02-01 08:38:22 -050022install_data(sources: 'maxlog.conf', install_dir: '/etc/ecc')
Will Lianga1d42022019-06-13 14:17:12 +080023
24conf_data = configuration_data()
25conf_data.set('BUSNAME', '"xyz.openbmc_project.memory.ECC"')
26conf_data.set('OBJROOT', '"/xyz/openbmc_project/metrics/memory/"')
27conf_data.set('OBJPATH', '"/xyz/openbmc_project/metrics/memory/BmcECC"')
28conf_data.set('sysfsRootPath', '"/sys/devices/system/edac/mc/mc0/"')
Patrick Williamsc31b23c2025-02-01 08:38:22 -050029conf_data.set(
30 'sysfsEDACReportPath',
31 '"/sys/module/edac_core/parameters/edac_report"',
32)
33conf_data.set(
34 'ECC_PHOSPHOR_LOGGING',
35 get_option('ecc-phosphor-logging').enabled(),
36)
Will Lianga1d42022019-06-13 14:17:12 +080037
Patrick Williamsc31b23c2025-02-01 08:38:22 -050038configure_file(output: 'config.h', configuration: conf_data)
Will Lianga1d42022019-06-13 14:17:12 +080039
George Hung0841f8a2020-09-28 11:12:05 +080040systemd = dependency('systemd')
41conf_data = configuration_data()
42conf_data.set('bindir', get_option('prefix') / get_option('bindir'))
43configure_file(
Patrick Williamsc31b23c2025-02-01 08:38:22 -050044 input: 'phosphor-ecc.service.in',
45 output: 'phosphor-ecc.service',
46 configuration: conf_data,
47 install: true,
48 install_dir: systemd.get_variable('systemdsystemunitdir'),
49)