1a081956fSMike Cappsphosphor_fan_monitor_include_directories = include_directories(
2a081956fSMike Capps    '.',
3a081956fSMike Capps    '..'
4a081956fSMike Capps)
5a081956fSMike Capps
6a081956fSMike Cappssources=[
7a081956fSMike Capps    'conditions.cpp',
8a081956fSMike Capps    'fan.cpp',
9a081956fSMike Capps    'fan_error.cpp',
10a081956fSMike Capps    'json_parser.cpp',
11a081956fSMike Capps    'logging.cpp',
12a081956fSMike Capps    'main.cpp',
13a081956fSMike Capps    'power_interface.cpp',
14a081956fSMike Capps    'system.cpp',
15a081956fSMike Capps    'tach_sensor.cpp',
16a081956fSMike Capps    '../hwmon_ffdc.cpp'
17a081956fSMike Capps]
18a081956fSMike Capps
19a081956fSMike Cappsdeps=[
20ef17a25aSPatrick Williams    nlohmann_json_dep,
21a081956fSMike Capps    phosphor_dbus_interfaces_dep,
22a081956fSMike Capps    phosphor_logging_dep,
23a081956fSMike Capps    sdbusplus_dep,
24a081956fSMike Capps    sdeventplus_dep
25a081956fSMike Capps]
26a081956fSMike Capps
27a081956fSMike Capps# Only needed for YAML config
28a081956fSMike Cappsif get_option('json-config').disabled()
29a081956fSMike Capps    fan_monitor_defs_cpp_dep = custom_target(
30a081956fSMike Capps        'fan_monitor_defs.cpp',
31a081956fSMike Capps        input: files(
32a081956fSMike Capps            './gen-fan-monitor-defs.py',
33a081956fSMike Capps            conf.get_unquoted('FAN_MONITOR_YAML_FILE'),
34a081956fSMike Capps        ),
35a081956fSMike Capps        command: [
36a081956fSMike Capps            python_prog, '@INPUT0@',
37a081956fSMike Capps            '-m','@INPUT1@',
38a081956fSMike Capps            '-o','monitor'
39a081956fSMike Capps        ],
40a081956fSMike Capps        output: 'fan_monitor_defs.cpp'
41a081956fSMike Capps    )
42a081956fSMike Capps
43a081956fSMike Capps    sources += fan_monitor_defs_cpp_dep
44a081956fSMike Cappsendif
45a081956fSMike Capps
46a081956fSMike Cappsphosphor_fan_monitor = executable(
47a081956fSMike Capps    'phosphor-fan-monitor',
48a081956fSMike Capps    sources,
49a081956fSMike Capps    dependencies: deps,
50a081956fSMike Capps    implicit_include_directories: false,
51a081956fSMike Capps    include_directories: phosphor_fan_monitor_include_directories,
52a081956fSMike Capps    install: true
53a081956fSMike Capps)
54a081956fSMike Capps
55*388fc572SPatrick Williamsif(get_option('tests').allowed())
56a081956fSMike Capps    subdir('test')
57a081956fSMike Cappsendif
58a081956fSMike Capps
59