1phosphor_regulators_include_directories = include_directories(
2    '.',
3    '../..',
4    'actions'
5)
6
7phosphor_regulators_library_source_files = [
8    'chassis.cpp',
9    'config_file_parser.cpp',
10    'configuration.cpp',
11    'dbus_sensor.cpp',
12    'dbus_sensors.cpp',
13    'device.cpp',
14    'error_logging.cpp',
15    'error_logging_utils.cpp',
16    'exception_utils.cpp',
17    'ffdc_file.cpp',
18    'id_map.cpp',
19    'journal.cpp',
20    'phase_fault_detection.cpp',
21    'pmbus_utils.cpp',
22    'presence_detection.cpp',
23    'presence_service.cpp',
24    'rail.cpp',
25    'sensor_monitoring.cpp',
26    'system.cpp',
27    'vpd.cpp',
28
29    'actions/compare_presence_action.cpp',
30    'actions/compare_vpd_action.cpp',
31    'actions/if_action.cpp',
32    'actions/i2c_capture_bytes_action.cpp',
33    'actions/i2c_compare_bit_action.cpp',
34    'actions/i2c_compare_byte_action.cpp',
35    'actions/i2c_compare_bytes_action.cpp',
36    'actions/i2c_write_bit_action.cpp',
37    'actions/i2c_write_byte_action.cpp',
38    'actions/i2c_write_bytes_action.cpp',
39    'actions/pmbus_read_sensor_action.cpp',
40    'actions/pmbus_write_vout_command_action.cpp'
41]
42
43phosphor_regulators_library = static_library(
44    'phosphor-regulators',
45    phosphor_regulators_library_source_files,
46    implicit_include_directories: false,
47    dependencies: [
48        nlohmann_json_dep,
49        phosphor_dbus_interfaces,
50        phosphor_logging,
51        sdbusplus,
52    ],
53    include_directories: [
54        phosphor_regulators_include_directories,
55        libi2c_inc
56    ]
57)
58
59phosphor_regulators = executable(
60    'phosphor-regulators',
61    'interfaces/manager_interface.cpp',
62    'main.cpp',
63    'manager.cpp',
64    dependencies: [
65        libi2c_dep,
66        nlohmann_json_dep,
67        phosphor_logging,
68        sdbusplus,
69        sdeventplus,
70        stdplus,
71    ],
72    link_with: [
73        phosphor_regulators_library,
74        libpower
75    ],
76    implicit_include_directories: false,
77    include_directories: phosphor_regulators_include_directories,
78    install: true
79)
80
81regsctl = executable(
82    'regsctl',
83    'regsctl/main.cpp',
84    dependencies: [
85        cli11_dep,
86        sdbusplus,
87    ],
88    install: true
89)
90