Gunnar Mills | 02ac806 | 2017-01-27 13:13:24 -0600 | [diff] [blame] | 1 | SUMMARY = "Phosphor Software Management" |
| 2 | DESCRIPTION = "Phosphor Software Manager provides a set of system software \ |
| 3 | management daemons. It is suitable for use on a wide variety of OpenBMC \ |
| 4 | platforms." |
Ed Tanous | 9936f86 | 2022-09-19 09:13:20 -0700 | [diff] [blame] | 5 | DEPENDS += " \ |
| 6 | openssl \ |
| 7 | phosphor-dbus-interfaces \ |
| 8 | phosphor-logging \ |
| 9 | ${PYTHON_PN}-sdbus++-native \ |
| 10 | sdbusplus \ |
| 11 | " |
Konstantin Aladyshev | ba31938 | 2023-04-20 10:20:00 +0300 | [diff] [blame] | 12 | PACKAGECONFIG[verify_signature] = "-Dverify-signature=enabled, -Dverify-signature=disabled" |
Ed Tanous | 9936f86 | 2022-09-19 09:13:20 -0700 | [diff] [blame] | 13 | PACKAGECONFIG[sync_bmc_files] = "-Dsync-bmc-files=enabled, -Dsync-bmc-files=disabled" |
| 14 | PACKAGECONFIG[usb_code_update] = "-Dusb-code-update=enabled, -Dusb-code-update=disabled, cli11" |
| 15 | PACKAGECONFIG[side_switch_on_boot] = "-Dside-switch-on-boot=enabled, -Dside-switch-on-boot=disabled, cli11" |
| 16 | PACKAGECONFIG[ubifs_layout] = "-Dbmc-layout=ubi" |
| 17 | PACKAGECONFIG[mmc_layout] = "-Dbmc-layout=mmc" |
| 18 | PACKAGECONFIG[flash_bios] = "-Dhost-bios-upgrade=enabled, -Dhost-bios-upgrade=disabled" |
| 19 | PACKAGECONFIG[static-dual-image] = "-Dbmc-static-dual-image=enabled, -Dbmc-static-dual-image=disabled" |
Patrick Venture | 1bf12f5 | 2018-10-27 08:40:53 -0700 | [diff] [blame] | 20 | PV = "1.0+git${SRCPV}" |
Ed Tanous | 9936f86 | 2022-09-19 09:13:20 -0700 | [diff] [blame] | 21 | PR = "r1" |
Gunnar Mills | 02ac806 | 2017-01-27 13:13:24 -0600 | [diff] [blame] | 22 | |
| 23 | SOFTWARE_MGR_PACKAGES = " \ |
| 24 | ${PN}-version \ |
Deepak Kodihalli | b74ceea | 2017-04-13 23:23:42 -0500 | [diff] [blame] | 25 | ${PN}-download-mgr \ |
Gunnar Mills | cfe0084 | 2017-05-15 15:40:58 -0500 | [diff] [blame] | 26 | ${PN}-updater \ |
Adriana Kobylak | c763ceb | 2018-06-04 13:06:52 -0500 | [diff] [blame] | 27 | ${PN}-updater-ubi \ |
Adriana Kobylak | 88ec2af | 2020-06-04 14:03:03 -0500 | [diff] [blame] | 28 | ${PN}-updater-mmc \ |
Adriana Kobylak | 7d2e8ef | 2018-04-20 14:52:40 -0500 | [diff] [blame] | 29 | ${PN}-sync \ |
Andrew Geissler | 503e474 | 2021-12-14 19:50:46 +0000 | [diff] [blame] | 30 | ${PN}-usb \ |
Andrew Geissler | 6ab2338 | 2022-04-11 15:41:37 -0500 | [diff] [blame] | 31 | ${PN}-side-switch \ |
Gunnar Mills | 02ac806 | 2017-01-27 13:13:24 -0600 | [diff] [blame] | 32 | " |
Gunnar Mills | 02ac806 | 2017-01-27 13:13:24 -0600 | [diff] [blame] | 33 | # Set SYSTEMD_PACKAGES to empty because we do not want ${PN} and DBUS_PACKAGES |
| 34 | # handles the rest. |
| 35 | SYSTEMD_PACKAGES = "" |
Ed Tanous | 9936f86 | 2022-09-19 09:13:20 -0700 | [diff] [blame] | 36 | SYSTEMD_SERVICE:${PN}-updater += " \ |
| 37 | force-reboot.service \ |
| 38 | obmc-flash-bmc-setenv@.service \ |
| 39 | reboot-guard-disable.service \ |
| 40 | reboot-guard-enable.service \ |
| 41 | usr-local.mount \ |
| 42 | " |
| 43 | SYSTEMD_SERVICE:${PN}-updater += "${@bb.utils.contains('PACKAGECONFIG', 'flash_bios', 'obmc-flash-host-bios@.service', '', d)}" |
| 44 | SYSTEMD_SERVICE:${PN}-usb += "${@bb.utils.contains('PACKAGECONFIG', 'usb_code_update', 'usb-code-update@.service', '', d)}" |
| 45 | SYSTEMD_SERVICE:${PN}-side-switch += "${@bb.utils.contains('PACKAGECONFIG', 'side_switch_on_boot', 'phosphor-bmc-side-switch.service', '', d)}" |
| 46 | SYSTEMD_SERVICE:${PN}-updater += "${@bb.utils.contains('PACKAGECONFIG', 'static-dual-image', 'obmc-flash-bmc-alt@.service', '', d)}" |
| 47 | SYSTEMD_SERVICE:${PN}-updater += "${@bb.utils.contains('PACKAGECONFIG', 'static-dual-image', 'obmc-flash-bmc-static-mount-alt.service', '', d)}" |
| 48 | SYSTEMD_SERVICE:${PN}-updater += "${@bb.utils.contains('PACKAGECONFIG', 'static-dual-image', 'obmc-flash-bmc-prepare-for-sync.service', '', d)}" |
| 49 | S = "${WORKDIR}/git" |
Adriana Kobylak | acff95b | 2018-03-29 15:16:09 -0500 | [diff] [blame] | 50 | |
Adriana Kobylak | b3f2bb8 | 2020-05-06 13:14:28 -0500 | [diff] [blame] | 51 | inherit meson pkgconfig |
Gunnar Mills | 02ac806 | 2017-01-27 13:13:24 -0600 | [diff] [blame] | 52 | inherit obmc-phosphor-dbus-service |
Adriana Kobylak | cb8ef5c | 2020-03-30 15:59:31 -0500 | [diff] [blame] | 53 | inherit python3native |
Adriana Kobylak | c763ceb | 2018-06-04 13:06:52 -0500 | [diff] [blame] | 54 | inherit ${@bb.utils.contains('DISTRO_FEATURES', 'obmc-ubi-fs', 'phosphor-software-manager-ubi-fs', '', d)} |
Adriana Kobylak | 88ec2af | 2020-06-04 14:03:03 -0500 | [diff] [blame] | 55 | inherit ${@bb.utils.contains('DISTRO_FEATURES', 'phosphor-mmc', 'phosphor-software-manager-mmc', '', d)} |
Gunnar Mills | 02ac806 | 2017-01-27 13:13:24 -0600 | [diff] [blame] | 56 | |
Ed Tanous | 9936f86 | 2022-09-19 09:13:20 -0700 | [diff] [blame] | 57 | EXTRA_OEMESON:append = " -Dtests=disabled" |
| 58 | |
| 59 | do_install:append() { |
| 60 | install -d ${D}/usr/local |
| 61 | } |
Gunnar Mills | 02ac806 | 2017-01-27 13:13:24 -0600 | [diff] [blame] | 62 | |
Andrew Geissler | d0da820 | 2022-03-18 06:30:15 +0000 | [diff] [blame] | 63 | # The repo installs several scripts that depends on bash |
| 64 | RDEPENDS:${PN} += " bash" |
Patrick Williams | 12fc939 | 2021-08-06 09:16:53 -0500 | [diff] [blame] | 65 | RDEPENDS:${PN}-updater += " \ |
Lei YU | bc3a230 | 2018-07-23 13:26:15 +0800 | [diff] [blame] | 66 | bash \ |
Patrick Williams | 21d6569 | 2017-08-09 17:36:04 -0500 | [diff] [blame] | 67 | virtual-obmc-image-manager \ |
Adriana Kobylak | 27583a2 | 2020-05-29 12:57:11 -0500 | [diff] [blame] | 68 | ${@bb.utils.contains('PACKAGECONFIG', 'verify_signature', 'phosphor-image-signing', '', d)} \ |
Adriana Kobylak | 029e150 | 2023-05-22 20:54:42 +0000 | [diff] [blame] | 69 | ${@bb.utils.contains('PACKAGECONFIG', 'mmc_layout', 'e2fsprogs-e2fsck', '', d)} \ |
Lei YU | 15ef0be | 2018-05-11 17:26:35 +0800 | [diff] [blame] | 70 | " |
Patrick Williams | 21d6569 | 2017-08-09 17:36:04 -0500 | [diff] [blame] | 71 | |
Patrick Williams | 12fc939 | 2021-08-06 09:16:53 -0500 | [diff] [blame] | 72 | RPROVIDES:${PN}-version += " \ |
Patrick Williams | 21d6569 | 2017-08-09 17:36:04 -0500 | [diff] [blame] | 73 | virtual-obmc-image-manager \ |
Gunnar Mills | cfe0084 | 2017-05-15 15:40:58 -0500 | [diff] [blame] | 74 | " |
Gunnar Mills | 02ac806 | 2017-01-27 13:13:24 -0600 | [diff] [blame] | 75 | |
Patrick Williams | 12fc939 | 2021-08-06 09:16:53 -0500 | [diff] [blame] | 76 | FILES:${PN}-version += "${bindir}/phosphor-version-software-manager ${exec_prefix}/lib/tmpfiles.d/software.conf" |
| 77 | FILES:${PN}-download-mgr += "${bindir}/phosphor-download-manager" |
| 78 | FILES:${PN}-updater += " \ |
Patrick Venture | 47ba9da0 | 2019-03-30 08:03:17 -0700 | [diff] [blame] | 79 | ${bindir}/phosphor-image-updater \ |
| 80 | ${bindir}/obmc-flash-bmc \ |
Adriana Kobylak | d284df9 | 2019-10-25 13:02:36 -0500 | [diff] [blame] | 81 | /usr/local \ |
Lei YU | bc3a230 | 2018-07-23 13:26:15 +0800 | [diff] [blame] | 82 | " |
Patrick Williams | 12fc939 | 2021-08-06 09:16:53 -0500 | [diff] [blame] | 83 | FILES:${PN}-sync += " \ |
Patrick Venture | 47ba9da0 | 2019-03-30 08:03:17 -0700 | [diff] [blame] | 84 | ${bindir}/phosphor-sync-software-manager \ |
Adriana Kobylak | e18f116 | 2018-05-22 12:33:45 -0500 | [diff] [blame] | 85 | ${sysconfdir}/synclist \ |
| 86 | " |
Andrew Geissler | 503e474 | 2021-12-14 19:50:46 +0000 | [diff] [blame] | 87 | FILES:${PN}-usb += "\ |
| 88 | ${base_libdir}/udev/rules.d/70-bmc-usb.rules \ |
| 89 | ${bindir}/phosphor-usb-code-update \ |
| 90 | " |
Andrew Geissler | 6ab2338 | 2022-04-11 15:41:37 -0500 | [diff] [blame] | 91 | FILES:${PN}-side-switch += "\ |
| 92 | ${bindir}/phosphor-bmc-side-switch \ |
| 93 | " |
Ed Tanous | 9936f86 | 2022-09-19 09:13:20 -0700 | [diff] [blame] | 94 | |
| 95 | require ${BPN}.inc |
| 96 | |
| 97 | ALLOW_EMPTY:${PN} = "1" |
| 98 | |
| 99 | PACKAGE_BEFORE_PN += "${SOFTWARE_MGR_PACKAGES}" |
| 100 | DBUS_PACKAGES = "${SOFTWARE_MGR_PACKAGES}" |
Patrick Williams | 12fc939 | 2021-08-06 09:16:53 -0500 | [diff] [blame] | 101 | DBUS_SERVICE:${PN}-version += "xyz.openbmc_project.Software.Version.service" |
| 102 | DBUS_SERVICE:${PN}-download-mgr += "xyz.openbmc_project.Software.Download.service" |
| 103 | DBUS_SERVICE:${PN}-updater += "xyz.openbmc_project.Software.BMC.Updater.service" |
| 104 | DBUS_SERVICE:${PN}-sync += "xyz.openbmc_project.Software.Sync.service" |
Andrew Geissler | 9216e2e | 2023-05-15 15:30:07 -0500 | [diff] [blame] | 105 | |
| 106 | pkg_postinst:${PN}-side-switch() { |
| 107 | if ${@bb.utils.contains('PACKAGECONFIG', 'side_switch_on_boot', 'true', 'false', d)} ; then |
| 108 | mkdir -p $D$systemd_system_unitdir/obmc-host-startmin@0.target.wants |
| 109 | LINK="$D$systemd_system_unitdir/obmc-host-startmin@0.target.wants/phosphor-bmc-side-switch.service" |
| 110 | TARGET="../phosphor-bmc-side-switch.service" |
| 111 | ln -s $TARGET $LINK |
| 112 | fi |
| 113 | } |
| 114 | pkg_prerm:${PN}-side-switch() { |
| 115 | if ${@bb.utils.contains('PACKAGECONFIG', 'side_switch_on_boot', 'true', 'false', d)} ; then |
| 116 | LINK="$D$systemd_system_unitdir/obmc-host-startmin@0.target.wants/phosphor-bmc-side-switch.service" |
| 117 | rm $LINK |
| 118 | fi |
| 119 | } |