blob: 9c71ad3528b383bc34918474c80d29f16565f5e2 [file] [log] [blame]
Gunnar Mills02ac8062017-01-27 13:13:24 -06001SUMMARY = "Phosphor Software Management"
2DESCRIPTION = "Phosphor Software Manager provides a set of system software \
3management daemons. It is suitable for use on a wide variety of OpenBMC \
4platforms."
Gunnar Mills02ac8062017-01-27 13:13:24 -06005PR = "r1"
Patrick Venture1bf12f52018-10-27 08:40:53 -07006PV = "1.0+git${SRCPV}"
Matt Spinlerb640b0b2018-06-21 14:23:47 -05007
Patrick Williamsfb700fd2020-04-03 15:48:30 -05008require ${BPN}.inc
Gunnar Mills02ac8062017-01-27 13:13:24 -06009
10SOFTWARE_MGR_PACKAGES = " \
11 ${PN}-version \
Deepak Kodihallib74ceea2017-04-13 23:23:42 -050012 ${PN}-download-mgr \
Gunnar Millscfe00842017-05-15 15:40:58 -050013 ${PN}-updater \
Adriana Kobylakc763ceb2018-06-04 13:06:52 -050014 ${PN}-updater-ubi \
Adriana Kobylak88ec2af2020-06-04 14:03:03 -050015 ${PN}-updater-mmc \
Adriana Kobylak7d2e8ef2018-04-20 14:52:40 -050016 ${PN}-sync \
Andrew Geissler503e4742021-12-14 19:50:46 +000017 ${PN}-usb \
Andrew Geissler6ab23382022-04-11 15:41:37 -050018 ${PN}-side-switch \
Gunnar Mills02ac8062017-01-27 13:13:24 -060019"
Brad Bishop8996c732018-04-11 11:42:17 -040020PACKAGE_BEFORE_PN += "${SOFTWARE_MGR_PACKAGES}"
Patrick Williams12fc9392021-08-06 09:16:53 -050021ALLOW_EMPTY:${PN} = "1"
Brad Bishop720ec822017-03-01 15:37:17 -050022
Gunnar Mills02ac8062017-01-27 13:13:24 -060023DBUS_PACKAGES = "${SOFTWARE_MGR_PACKAGES}"
24
25# Set SYSTEMD_PACKAGES to empty because we do not want ${PN} and DBUS_PACKAGES
26# handles the rest.
27SYSTEMD_PACKAGES = ""
28
Adriana Kobylak4b3c19b2021-01-19 11:39:37 -060029PACKAGECONFIG[verify_signature] = " \
30 -Dverify-full-signature=enabled, \
31 -Dverify-full-signature=disabled"
Adriana Kobylakb3f2bb82020-05-06 13:14:28 -050032PACKAGECONFIG[sync_bmc_files] = "-Dsync-bmc-files=enabled, -Dsync-bmc-files=disabled"
Andrew Geissler503e4742021-12-14 19:50:46 +000033PACKAGECONFIG[usb_code_update] = "-Dusb-code-update=enabled, -Dusb-code-update=disabled, cli11"
Andrew Geissler6ab23382022-04-11 15:41:37 -050034PACKAGECONFIG[side_switch_on_boot] = "-Dside-switch-on-boot=enabled, -Dside-switch-on-boot=disabled, cli11"
Adriana Kobylakb3f2bb82020-05-06 13:14:28 -050035PACKAGECONFIG[ubifs_layout] = "-Dbmc-layout=ubi"
Adriana Kobylak88ec2af2020-06-04 14:03:03 -050036PACKAGECONFIG[mmc_layout] = "-Dbmc-layout=mmc"
Adriana Kobylakb3f2bb82020-05-06 13:14:28 -050037PACKAGECONFIG[flash_bios] = "-Dhost-bios-upgrade=enabled, -Dhost-bios-upgrade=disabled"
Andrew Geisslerd0da8202022-03-18 06:30:15 +000038PACKAGECONFIG[static-dual-image] = "-Dbmc-static-dual-image=enabled, -Dbmc-static-dual-image=disabled"
Adriana Kobylakacff95b2018-03-29 15:16:09 -050039
Adriana Kobylakb3f2bb82020-05-06 13:14:28 -050040inherit meson pkgconfig
Gunnar Mills02ac8062017-01-27 13:13:24 -060041inherit obmc-phosphor-dbus-service
Adriana Kobylakcb8ef5c2020-03-30 15:59:31 -050042inherit python3native
Adriana Kobylakc763ceb2018-06-04 13:06:52 -050043inherit ${@bb.utils.contains('DISTRO_FEATURES', 'obmc-ubi-fs', 'phosphor-software-manager-ubi-fs', '', d)}
Adriana Kobylak88ec2af2020-06-04 14:03:03 -050044inherit ${@bb.utils.contains('DISTRO_FEATURES', 'phosphor-mmc', 'phosphor-software-manager-mmc', '', d)}
Gunnar Mills02ac8062017-01-27 13:13:24 -060045
Deepak Kodihallib74ceea2017-04-13 23:23:42 -050046DEPENDS += " \
Patrick Williams12f63462020-02-24 21:46:17 -060047 openssl \
Deepak Kodihallib74ceea2017-04-13 23:23:42 -050048 phosphor-dbus-interfaces \
49 phosphor-logging \
Patrick Williams4b32c9a2020-03-31 16:43:15 -050050 ${PYTHON_PN}-sdbus++-native \
Patrick Williams12f63462020-02-24 21:46:17 -060051 sdbusplus \
Deepak Kodihallib74ceea2017-04-13 23:23:42 -050052"
Gunnar Mills02ac8062017-01-27 13:13:24 -060053
Andrew Geisslerd0da8202022-03-18 06:30:15 +000054# The repo installs several scripts that depends on bash
55RDEPENDS:${PN} += " bash"
56
Patrick Williams12fc9392021-08-06 09:16:53 -050057RDEPENDS:${PN}-updater += " \
Lei YUbc3a2302018-07-23 13:26:15 +080058 bash \
Patrick Williams21d65692017-08-09 17:36:04 -050059 virtual-obmc-image-manager \
Adriana Kobylak27583a22020-05-29 12:57:11 -050060 ${@bb.utils.contains('PACKAGECONFIG', 'verify_signature', 'phosphor-image-signing', '', d)} \
Lei YU15ef0be2018-05-11 17:26:35 +080061"
Patrick Williams21d65692017-08-09 17:36:04 -050062
Patrick Williams12fc9392021-08-06 09:16:53 -050063RPROVIDES:${PN}-version += " \
Patrick Williams21d65692017-08-09 17:36:04 -050064 virtual-obmc-image-manager \
Gunnar Millscfe00842017-05-15 15:40:58 -050065"
Gunnar Mills02ac8062017-01-27 13:13:24 -060066
Patrick Williams12fc9392021-08-06 09:16:53 -050067FILES:${PN}-version += "${bindir}/phosphor-version-software-manager ${exec_prefix}/lib/tmpfiles.d/software.conf"
68FILES:${PN}-download-mgr += "${bindir}/phosphor-download-manager"
69FILES:${PN}-updater += " \
Patrick Venture47ba9da02019-03-30 08:03:17 -070070 ${bindir}/phosphor-image-updater \
71 ${bindir}/obmc-flash-bmc \
Adriana Kobylakd284df92019-10-25 13:02:36 -050072 /usr/local \
Lei YUbc3a2302018-07-23 13:26:15 +080073 "
Patrick Williams12fc9392021-08-06 09:16:53 -050074FILES:${PN}-sync += " \
Patrick Venture47ba9da02019-03-30 08:03:17 -070075 ${bindir}/phosphor-sync-software-manager \
Adriana Kobylake18f1162018-05-22 12:33:45 -050076 ${sysconfdir}/synclist \
77 "
Andrew Geissler503e4742021-12-14 19:50:46 +000078FILES:${PN}-usb += "\
79 ${base_libdir}/udev/rules.d/70-bmc-usb.rules \
80 ${bindir}/phosphor-usb-code-update \
81 "
Andrew Geissler6ab23382022-04-11 15:41:37 -050082FILES:${PN}-side-switch += "\
83 ${bindir}/phosphor-bmc-side-switch \
84 "
Patrick Williams12fc9392021-08-06 09:16:53 -050085DBUS_SERVICE:${PN}-version += "xyz.openbmc_project.Software.Version.service"
86DBUS_SERVICE:${PN}-download-mgr += "xyz.openbmc_project.Software.Download.service"
87DBUS_SERVICE:${PN}-updater += "xyz.openbmc_project.Software.BMC.Updater.service"
88DBUS_SERVICE:${PN}-sync += "xyz.openbmc_project.Software.Sync.service"
Gunnar Mills02ac8062017-01-27 13:13:24 -060089
Patrick Williams12fc9392021-08-06 09:16:53 -050090SYSTEMD_SERVICE:${PN}-updater += " \
Andrew Geissler4c3d6d32020-05-26 15:31:11 +000091 force-reboot.service \
Lei YUbc3a2302018-07-23 13:26:15 +080092 obmc-flash-bmc-setenv@.service \
Andrew Geissler4c3d6d32020-05-26 15:31:11 +000093 reboot-guard-disable.service \
94 reboot-guard-enable.service \
Adriana Kobylakd284df92019-10-25 13:02:36 -050095 usr-local.mount \
Lei YUbc3a2302018-07-23 13:26:15 +080096"
97
Patrick Williams12fc9392021-08-06 09:16:53 -050098SYSTEMD_SERVICE:${PN}-updater += "${@bb.utils.contains('PACKAGECONFIG', 'flash_bios', 'obmc-flash-host-bios@.service', '', d)}"
Andrew Geissler503e4742021-12-14 19:50:46 +000099SYSTEMD_SERVICE:${PN}-usb += "${@bb.utils.contains('PACKAGECONFIG', 'usb_code_update', 'usb-code-update@.service', '', d)}"
Andrew Geissler6ab23382022-04-11 15:41:37 -0500100SYSTEMD_SERVICE:${PN}-side-switch += "${@bb.utils.contains('PACKAGECONFIG', 'side_switch_on_boot', 'phosphor-bmc-side-switch.service', '', d)}"
Andrew Geisslerd0da8202022-03-18 06:30:15 +0000101SYSTEMD_SERVICE:${PN}-updater += "${@bb.utils.contains('PACKAGECONFIG', 'static-dual-image', 'obmc-flash-bmc-alt@.service', '', d)}"
102SYSTEMD_SERVICE:${PN}-updater += "${@bb.utils.contains('PACKAGECONFIG', 'static-dual-image', 'obmc-flash-bmc-static-mount-alt.service', '', d)}"
103SYSTEMD_SERVICE:${PN}-updater += "${@bb.utils.contains('PACKAGECONFIG', 'static-dual-image', 'obmc-flash-bmc-prepare-for-sync.service', '', d)}"
Vijay Khemkae56cb1b2020-02-03 11:49:15 -0800104
Gunnar Mills02ac8062017-01-27 13:13:24 -0600105S = "${WORKDIR}/git"
Adriana Kobylakd284df92019-10-25 13:02:36 -0500106
Patrick Williamsed104d42021-08-31 13:19:27 -0500107EXTRA_OEMESON:append = " -Dtests=disabled"
William A. Kennington IIIf6d14492021-06-04 18:18:15 -0700108
Patrick Williams12fc9392021-08-06 09:16:53 -0500109do_install:append() {
Adriana Kobylakd284df92019-10-25 13:02:36 -0500110 install -d ${D}/usr/local
111}