blob: e32711ef7954e003ee007f1cdd5a55610103ffc7 [file] [log] [blame]
Vishwanatha Subbanna5fe31d42017-01-09 15:00:38 +05301SUMMARY = "Phosphor LED Group Management Daemon"
2DESCRIPTION = "Daemon to cater to triggering actions on LED groups"
Vishwanatha Subbannad7844692020-03-30 07:16:17 -05003DEPENDS += "${PYTHON_PN}-native"
4DEPENDS += "${PYTHON_PN}-pyyaml-native"
5DEPENDS += "${PYTHON_PN}-inflection-native"
Andrew Geisslerd0e4f502022-03-21 14:50:10 +00006DEPENDS += "cli11"
7DEPENDS += "nlohmann-json"
8DEPENDS += "phosphor-logging"
Patrick Williams4b32c9a2020-03-31 16:43:15 -05009DEPENDS += "sdbusplus ${PYTHON_PN}-sdbus++-native"
Brad Bishop44f3cce2019-03-22 23:41:42 -040010DEPENDS += "systemd"
Ed Tanous9936f862022-09-19 09:13:20 -070011PACKAGECONFIG ??= "\
12 ${@oe.utils.conditional( \
13 'PREFERRED_PROVIDER_virtual/${PN}-config-native', \
14 'phosphor-led-manager-config-example-native', \
15 'use-json', 'use-yaml', d)} \
16"
17PACKAGECONFIG[use-json] = "-Duse-json=enabled,,,,,use-yaml"
18PACKAGECONFIG[use-yaml] = "-Duse-json=disabled,,virtual/${PN}-config-native,,,use-json"
19PACKAGECONFIG[use-lamp-test] = "-Duse-lamp-test=enabled, -Duse-lamp-test=disabled"
20PACKAGECONFIG[monitor-operational-status] = "-Dmonitor-operational-status=enabled, \
21 -Dmonitor-operational-status=disabled"
22PV = "1.0+git${SRCPV}"
23PR = "r1"
Ratan Gupta0e642912017-03-14 14:50:04 +053024
Ed Tanous9936f862022-09-19 09:13:20 -070025SYSTEMD_PACKAGES = "${PN} ${PN}-faultmonitor"
Vishwanatha Subbanna5fe31d42017-01-09 15:00:38 +053026S = "${WORKDIR}/git"
Patrick Williams12fc9392021-08-06 09:16:53 -050027SYSTEMD_SERVICE:${PN} += "obmc-led-group-start@.service obmc-led-group-stop@.service"
28SYSTEMD_SERVICE:${PN}-faultmonitor += "obmc-fru-fault-monitor.service"
Patrick Williamse83c2202021-09-01 16:17:33 -050029SYSTEMD_LINK:${PN} += "../obmc-led-group-start@.service:multi-user.target.wants/obmc-led-group-start@bmc_booted.service"
Vishwanatha Subbanna95b31512017-03-27 14:36:58 +053030STATES = "start stop"
Patrick Williamse83c2202021-09-01 16:17:33 -050031SYSTEMD_LINK:${PN} += "${@compose_list_zip(d, 'FMT', 'CHASSIS_TARGETS', 'STATES')}"
NodeMan97e41c3fd2022-07-13 15:15:54 -050032SYSTEMD_LINK:${PN} += "${@compose_list(d, 'CHASSIS_LED_BLACKOUT_FMT', 'OBMC_CHASSIS_INSTANCES' )}"
Vishwanatha Subbannae922ca62017-07-19 02:25:13 -050033# Install the override to set up a Conflicts relation
Patrick Williamse83c2202021-09-01 16:17:33 -050034SYSTEMD_OVERRIDE:${PN} += "bmc_booted.conf:obmc-led-group-start@bmc_booted.service.d/bmc_booted.conf"
Vishwanatha Subbanna95b31512017-03-27 14:36:58 +053035
Ed Tanous9936f862022-09-19 09:13:20 -070036inherit meson pkgconfig python3native
37inherit obmc-phosphor-dbus-service obmc-phosphor-systemd
38
Patrick Williamsed104d42021-08-31 13:19:27 -050039EXTRA_OEMESON:append = " -Dtests=disabled"
Seires Li220e1942021-06-10 02:11:11 +080040
Patrick Williams12fc9392021-08-06 09:16:53 -050041do_compile:prepend() {
Seires Li220e1942021-06-10 02:11:11 +080042 if [ -f "${LED_YAML_PATH}/led.yaml" ]; then
43 cp "${LED_YAML_PATH}/led.yaml" "${S}/led.yaml"
44 elif [ -f "${STAGING_DATADIR_NATIVE}/${PN}/led.yaml" ]; then
45 cp "${STAGING_DATADIR_NATIVE}/${PN}/led.yaml" "${S}/led.yaml"
46 elif [ -f "${WORKDIR}/led.yaml" ]; then
47 cp "${WORKDIR}/led.yaml" "${S}/led.yaml"
48 fi
49}
Ed Tanous9936f862022-09-19 09:13:20 -070050
51RDEPENDS:${PN} += "bash"
52
53FILES:${PN}-faultmonitor += "${bindir}/phosphor-fru-fault-monitor"
54
55require ${PN}.inc
56
57PACKAGE_BEFORE_PN += "${PN}-faultmonitor"
58DBUS_SERVICE:${PN} += "xyz.openbmc_project.LED.GroupManager.service"
59CHASSIS_TARGETS = "poweron poweroff"
60TMPLFMT = "obmc-led-group-{1}@.service"
61TGTFMT = "obmc-chassis-{0}@0.target"
62INSTFMT = "obmc-led-group-{1}@power_on.service"
63FMT = "../${TMPLFMT}:${TGTFMT}.wants/${INSTFMT}"
64CHASSIS_BLACKOUT_TGT = "obmc-chassis-blackout@{0}.target"
65LED_STOP_SVC = "obmc-led-group-stop@.service"
66LED_POWER_STOP_SVC = "obmc-led-group-stop@power_on.service"
67CHASSIS_LED_BLACKOUT_FMT = "../${LED_STOP_SVC}:${CHASSIS_BLACKOUT_TGT}.wants/${LED_POWER_STOP_SVC}"