blob: cbbea5407deee9d313ea7aef8e2eab2aad010b37 [file] [log] [blame]
include_dirs = ['.', '..']
deps = [
phosphor_dbus_interfaces_dep,
phosphor_logging_dep,
sdbusplus_dep,
sdeventplus_dep,
cereal_dep,
]
sources = ['main.cpp']
if conf.has('CONTROL_USE_JSON')
deps += nlohmann_json_dep
include_dirs += ['./json', './json/actions', './json/triggers']
sources += [
'json/dbus_zone.cpp',
'json/event.cpp',
'json/fan.cpp',
'json/group.cpp',
'json/manager.cpp',
'json/profile.cpp',
'json/zone.cpp',
'json/actions/count_state_floor.cpp',
'json/actions/count_state_target.cpp',
'json/actions/default_floor.cpp',
'json/actions/get_managed_objects.cpp',
'json/actions/mapped_floor.cpp',
'json/actions/missing_owner_target.cpp',
'json/actions/net_target_decrease.cpp',
'json/actions/net_target_increase.cpp',
'json/actions/override_fan_target.cpp',
'json/actions/pcie_card_floors.cpp',
'json/actions/request_target_base.cpp',
'json/actions/set_parameter_from_group_max.cpp',
'json/actions/target_from_group_max.cpp',
'json/actions/timer_based_actions.cpp',
'json/utils/flight_recorder.cpp',
'json/utils/modifier.cpp',
'json/utils/pcie_card_metadata.cpp',
'json/triggers/init.cpp',
'json/triggers/parameter.cpp',
'json/triggers/signal.cpp',
'json/triggers/timer.cpp',
]
else
fan_zone_defs_cpp_dep = custom_target(
'fan_zone_defs.cpp',
input: files(
conf.get_unquoted('FAN_DEF_YAML_FILE'),
conf.get_unquoted('FAN_ZONE_YAML_FILE'),
conf.get_unquoted('ZONE_EVENTS_YAML_FILE'),
conf.get_unquoted('ZONE_CONDITIONS_YAML_FILE'),
'./gen-fan-zone-defs.py',
),
command: [
python_prog,
'@INPUT0@',
'-f',
'@INPUT1@',
'-z',
'@INPUT2@',
'-e',
'@INPUT3@',
'-c',
'@INPUT4@',
'-o',
'control',
],
output: 'fan_zone_defs.cpp',
)
sources += [
'actions.cpp',
'fan.cpp',
fan_zone_defs_cpp_dep,
'manager.cpp',
'preconditions.cpp',
'triggers.cpp',
'utility.cpp',
'zone.cpp',
]
endif
phosphor_fan_control_include_directories = include_directories(include_dirs)
phosphor_fan_control = executable(
'phosphor-fan-control',
sources,
dependencies: deps,
implicit_include_directories: false,
include_directories: phosphor_fan_control_include_directories,
install: true,
)
fanctl = executable(
'fanctl',
'fanctl.cpp',
dependencies: [
cli11_dep,
nlohmann_json_dep,
phosphor_logging_dep,
sdbusplus_dep,
],
include_directories: phosphor_fan_control_include_directories,
install: true,
)