summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMikko Rapeli <mikko.rapeli@linaro.org>2025-07-10 11:54:37 +0300
committerKhem Raj <raj.khem@gmail.com>2025-07-10 10:46:22 -0700
commit738d27a759228e9a2ee52ca5edf728df7edd588e (patch)
treec9cfc922a51de006605bf1430506f4ff206e3e6b
parentb572fdf8e12c18ad4d349eba692cace4ce584039 (diff)
downloadmeta-openembedded-738d27a759228e9a2ee52ca5edf728df7edd588e.tar.gz
fwupd: update to 2.0.12
New major version release which drops many configure options, changes from libgusb to libusb etc. Upstream changelogs: https://github.com/fwupd/fwupd/releases/tag/2.0.0 https://github.com/fwupd/fwupd/releases/tag/2.0.1 https://github.com/fwupd/fwupd/releases/tag/2.0.2 https://github.com/fwupd/fwupd/releases/tag/2.0.3 https://github.com/fwupd/fwupd/releases/tag/2.0.4 https://github.com/fwupd/fwupd/releases/tag/2.0.5 https://github.com/fwupd/fwupd/releases/tag/2.0.6 https://github.com/fwupd/fwupd/releases/tag/2.0.7 https://github.com/fwupd/fwupd/releases/tag/2.0.8 https://github.com/fwupd/fwupd/releases/tag/2.0.9 https://github.com/fwupd/fwupd/releases/tag/2.0.10 https://github.com/fwupd/fwupd/releases/tag/2.0.11 https://github.com/fwupd/fwupd/releases/tag/2.0.12 Tested with genericarm64 machine on qemu with ptests and manually on AMD KV260. Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r--meta-oe/recipes-bsp/fwupd/fwupd/0001-build-certs.py-use-usr-bin-env-for-python3.patch28
-rw-r--r--meta-oe/recipes-bsp/fwupd/fwupd/0001-fu-lzma-common.c-reduce-lzma-compression-level-from-.patch47
-rw-r--r--meta-oe/recipes-bsp/fwupd/fwupd_2.0.12.bb138
3 files changed, 121 insertions, 92 deletions
diff --git a/meta-oe/recipes-bsp/fwupd/fwupd/0001-build-certs.py-use-usr-bin-env-for-python3.patch b/meta-oe/recipes-bsp/fwupd/fwupd/0001-build-certs.py-use-usr-bin-env-for-python3.patch
new file mode 100644
index 0000000000..3a4ecb1f29
--- /dev/null
+++ b/meta-oe/recipes-bsp/fwupd/fwupd/0001-build-certs.py-use-usr-bin-env-for-python3.patch
@@ -0,0 +1,28 @@
1From 2c3896878ba8118b48c55528c6bac98f05f223f3 Mon Sep 17 00:00:00 2001
2From: Mikko Rapeli <mikko.rapeli@linaro.org>
3Date: Thu, 3 Jul 2025 13:34:21 +0000
4Subject: [PATCH] build-certs.py: use /usr/bin/env for python3
5
6Avoids errors if python3 install path is not
7in /usr/bin.
8
9Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
10---
11 data/tests/build-certs.py | 2 +-
12 1 file changed, 1 insertion(+), 1 deletion(-)
13
14Upstream-Status: Submitted [https://github.com/fwupd/fwupd/pull/8998]
15
16diff --git a/data/tests/build-certs.py b/data/tests/build-certs.py
17index 3b8503b72bcf..222e8a4a0f8b 100755
18--- a/data/tests/build-certs.py
19+++ b/data/tests/build-certs.py
20@@ -1,4 +1,4 @@
21-#!/usr/bin/python3
22+#!/usr/bin/env python3
23 # SPDX-License-Identifier: LGPL-2.1+
24
25 import os
26--
272.43.0
28
diff --git a/meta-oe/recipes-bsp/fwupd/fwupd/0001-fu-lzma-common.c-reduce-lzma-compression-level-from-.patch b/meta-oe/recipes-bsp/fwupd/fwupd/0001-fu-lzma-common.c-reduce-lzma-compression-level-from-.patch
new file mode 100644
index 0000000000..b0d3863eaa
--- /dev/null
+++ b/meta-oe/recipes-bsp/fwupd/fwupd/0001-fu-lzma-common.c-reduce-lzma-compression-level-from-.patch
@@ -0,0 +1,47 @@
1From c96668ab830d016eeff977d5ca4f99d288cf38c0 Mon Sep 17 00:00:00 2001
2From: Mikko Rapeli <mikko.rapeli@linaro.org>
3Date: Tue, 8 Jul 2025 07:05:02 +0000
4Subject: [PATCH] fu-lzma-common.c: reduce lzma compression level from 9 to
5 default 6
6
7xz manual page says default is 6 and levels higher than that can cause
8huge CPU and memory usage. On yocto qemu target, the fwupd tests
9fail to run with compression level 9:
10
11FuSelfTest:ERROR:../sources/fwupd-2.0.12/libfwupdplugin/fu-self-test.c:6342:fu_lzma_func: assertion failed (error == NULL): failed to set up LZMA encoder rc=5 (FwupdError, 10)
12not ok /fwupd/lzma - FuSelfTest:ERROR:../sources/fwupd-2.0.12/libfwupdplugin/fu-self-test.c:6342:fu_lzma_func: assertion failed (error == NULL): failed to set up LZMA encoder rc=5 (FwupdError, 10)
13
14With default compression level 6 the tests pass.
15
16https://linux.die.net/man/1/xz
17
18 -6 ... -9
19 Excellent compression with medium to high memory usage.
20 These are also slower than the lower preset levels.
21 The default is -6. Unless you want to maximize the compression ratio,
22 you probably don't want a higher preset level than -7 due to
23 speed and memory usage.
24
25Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
26---
27 libfwupdplugin/fu-lzma-common.c | 2 +-
28 1 file changed, 1 insertion(+), 1 deletion(-)
29
30Upstream-Status: Submitted [https://github.com/fwupd/fwupd/pull/9019]
31
32diff --git a/libfwupdplugin/fu-lzma-common.c b/libfwupdplugin/fu-lzma-common.c
33index a64ec773da91..d381ed52e135 100644
34--- a/libfwupdplugin/fu-lzma-common.c
35+++ b/libfwupdplugin/fu-lzma-common.c
36@@ -89,7 +89,7 @@ fu_lzma_compress_bytes(GBytes *blob, GError **error)
37 strm.next_in = g_bytes_get_data(blob, NULL);
38 strm.avail_in = g_bytes_get_size(blob);
39
40- rc = lzma_easy_encoder(&strm, 9, LZMA_CHECK_CRC64);
41+ rc = lzma_easy_encoder(&strm, 6, LZMA_CHECK_CRC64);
42 if (rc != LZMA_OK) {
43 lzma_end(&strm);
44 g_set_error(error,
45--
462.43.0
47
diff --git a/meta-oe/recipes-bsp/fwupd/fwupd_2.0.12.bb b/meta-oe/recipes-bsp/fwupd/fwupd_2.0.12.bb
index 52d80be05b..ce21ad42fe 100644
--- a/meta-oe/recipes-bsp/fwupd/fwupd_2.0.12.bb
+++ b/meta-oe/recipes-bsp/fwupd/fwupd_2.0.12.bb
@@ -2,11 +2,26 @@ SUMMARY = "A simple daemon to allow session software to update firmware"
2LICENSE = "LGPL-2.1-or-later" 2LICENSE = "LGPL-2.1-or-later"
3LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" 3LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
4 4
5DEPENDS = "glib-2.0 libxmlb json-glib libjcat gcab vala-native python3-jinja2-native" 5DEPENDS = "\
6 curl \
7 gcab \
8 glib-2.0 \
9 json-glib \
10 hwdata \
11 libjcat \
12 libusb \
13 libxmlb \
14 python3-jinja2-native \
15 vala-native \
16"
6 17
7SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/${PV}/${BP}.tar.xz \ 18SRC_URI = "\
8 file://run-ptest" 19 https://github.com/${BPN}/${BPN}/releases/download/${PV}/${BP}.tar.xz \
9SRC_URI[sha256sum] = "a69de9a494a364095cc820faa10a68ec38d31f55eed5388322182048b81d10b3" 20 file://0001-build-certs.py-use-usr-bin-env-for-python3.patch \
21 file://0001-fu-lzma-common.c-reduce-lzma-compression-level-from-.patch \
22 file://run-ptest \
23"
24SRC_URI[sha256sum] = "83eab17ef2e65249491aef5e99419827b43ac56d40c5b0747b59ee94b147215e"
10 25
11UPSTREAM_CHECK_URI = "https://github.com/${BPN}/${BPN}/releases" 26UPSTREAM_CHECK_URI = "https://github.com/${BPN}/${BPN}/releases"
12UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)" 27UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)"
@@ -22,113 +37,52 @@ GIDOCGEN_MESON_DISABLE_FLAG = 'disabled'
22GIR_MESON_ENABLE_FLAG = 'enabled' 37GIR_MESON_ENABLE_FLAG = 'enabled'
23GIR_MESON_DISABLE_FLAG = 'disabled' 38GIR_MESON_DISABLE_FLAG = 'disabled'
24 39
25PACKAGECONFIG ??= "curl gnutls gudev gusb \ 40PACKAGECONFIG ??= "\
26 ${@bb.utils.filter('DISTRO_FEATURES', 'bluetooth polkit', d)} \ 41 ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
27 ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd offline', '', d)} \ 42 ${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \
28 ${@bb.utils.contains('MACHINE_FEATURES', 'efi', 'plugin_uefi_capsule plugin_uefi_pk', '', d)} \ 43 ${@bb.utils.filter('DISTRO_FEATURES', 'bluetooth polkit', d)} \
29 ${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \ 44 gnutls \
30 hsi \ 45 hsi \
31 plugin_android_boot \ 46 plugin_flashrom \
32 plugin_acpi_phat \ 47 plugin_modem_manager \
33 plugin_bcm57xx \ 48 protobuf \
34 plugin_emmc \ 49"
35 plugin_ep963x \
36 plugin_fastboot \
37 plugin_flashrom \
38 plugin_gpio \
39 plugin_igsc \
40 plugin_intel_me \
41 plugin_intel_spi \
42 plugin_logitech_bulkcontroller \
43 plugin_logitech_scribe \
44 plugin_modem_manager \
45 plugin_msr \
46 plugin_nitrokey \
47 plugin_nvme \
48 plugin_parade_lspcon \
49 plugin_pixart_rf \
50 plugin_realtek_mst \
51 plugin_redfish \
52 plugin_synaptics_mst \
53 plugin_synaptics_rmi \
54 plugin_scsi \
55 plugin_uf2 \
56 plugin_upower \
57 sqlite"
58 50
59PACKAGECONFIG[bluetooth] = "-Dbluez=enabled,-Dbluez=disabled" 51PACKAGECONFIG[bluetooth] = "-Dbluez=enabled,-Dbluez=disabled"
60PACKAGECONFIG[compat-cli] = "-Dcompat_cli=true,-Dcompat_cli=false"
61PACKAGECONFIG[consolekit] = "-Dconsolekit=enabled,-Dconsolekit=disabled,consolekit"
62PACKAGECONFIG[curl] = "-Dcurl=enabled,-Dcurl=disabled,curl"
63PACKAGECONFIG[firmware-packager] = "-Dfirmware-packager=true,-Dfirmware-packager=false" 52PACKAGECONFIG[firmware-packager] = "-Dfirmware-packager=true,-Dfirmware-packager=false"
64PACKAGECONFIG[fish-completion] = "-Dfish_completion=true,-Dfish_completion=false" 53PACKAGECONFIG[fish-completion] = "-Dfish_completion=true,-Dfish_completion=false"
65PACKAGECONFIG[gnutls] = "-Dgnutls=enabled,-Dgnutls=disabled,gnutls" 54PACKAGECONFIG[gnutls] = "-Dgnutls=enabled,-Dgnutls=disabled,gnutls"
66PACKAGECONFIG[gudev] = "-Dgudev=enabled,-Dgudev=disabled,libgudev"
67PACKAGECONFIG[gusb] = "-Dgusb=enabled,-Dgusb=disabled,libgusb"
68PACKAGECONFIG[hsi] = "-Dhsi=enabled,-Dhsi=disabled" 55PACKAGECONFIG[hsi] = "-Dhsi=enabled,-Dhsi=disabled"
69PACKAGECONFIG[libarchive] = "-Dlibarchive=enabled,-Dlibarchive=disabled,libarchive" 56PACKAGECONFIG[libarchive] = "-Dlibarchive=enabled,-Dlibarchive=disabled,libarchive"
57PACKAGECONFIG[libdrm] = "-Dlibdrm=enabled,-Dlibdrm=disabled,libdrm"
70PACKAGECONFIG[manpages] = "-Dman=true,-Dman=false" 58PACKAGECONFIG[manpages] = "-Dman=true,-Dman=false"
71PACKAGECONFIG[metainfo] = "-Dmetainfo=true,-Dmetainfo=false" 59PACKAGECONFIG[metainfo] = "-Dmetainfo=true,-Dmetainfo=false"
72PACKAGECONFIG[offline] = "-Doffline=enabled,-Doffline=disabled"
73PACKAGECONFIG[polkit] = "-Dpolkit=enabled,-Dpolkit=disabled,polkit" 60PACKAGECONFIG[polkit] = "-Dpolkit=enabled,-Dpolkit=disabled,polkit"
74PACKAGECONFIG[sqlite] = "-Dsqlite=enabled,-Dsqlite=disabled,sqlite3" 61PACKAGECONFIG[readline] = "-Dreadline=enabled,-Dreadline=disabled,readline"
75PACKAGECONFIG[systemd] = "-Dsystemd=enabled,-Dsystemd=disabled,systemd" 62PACKAGECONFIG[systemd] = "-Dsystemd=enabled,-Dsystemd=disabled,systemd"
76PACKAGECONFIG[tests] = "-Dtests=true,-Dtests=false,gcab-native" 63PACKAGECONFIG[tests] = "-Dtests=true,-Dtests=false,gcab-native"
77 64
78
79# TODO plugins-all meta-option that expands to all plugin_*? 65# TODO plugins-all meta-option that expands to all plugin_*?
80PACKAGECONFIG[plugin_acpi_phat] = "-Dplugin_acpi_phat=enabled,-Dplugin_acpi_phat=disabled"
81PACKAGECONFIG[plugin_android_boot] = "-Dplugin_android_boot=enabled,-Dplugin_android_boot=disabled"
82PACKAGECONFIG[plugin_bcm57xx] = "-Dplugin_bcm57xx=enabled,-Dplugin_bcm57xx=disabled"
83PACKAGECONFIG[plugin_cfu] = "-Dplugin_cfu=enabled,-Dplugin_cfu=disabled"
84PACKAGECONFIG[plugin_emmc] = "-Dplugin_emmc=enabled,-Dplugin_emmc=disabled"
85PACKAGECONFIG[plugin_ep963x] = "-Dplugin_ep963x=enabled,-Dplugin_ep963x=disabled"
86PACKAGECONFIG[plugin_fastboot] = "-Dplugin_fastboot=enabled,-Dplugin_fastboot=disabled"
87PACKAGECONFIG[plugin_flashrom] = "-Dplugin_flashrom=enabled,-Dplugin_flashrom=disabled,flashrom" 66PACKAGECONFIG[plugin_flashrom] = "-Dplugin_flashrom=enabled,-Dplugin_flashrom=disabled,flashrom"
88PACKAGECONFIG[plugin_gpio] = "-Dplugin_gpio=enabled,-Dplugin_gpio=disabled" 67PACKAGECONFIG[protobuf] = "-Dprotobuf=enabled,-Dprotobuf=disabled,protobuf-c-native protobuf-c"
89PACKAGECONFIG[plugin_igsc] = "-Dplugin_igsc=enabled,-Dplugin_igsc=disabled"
90PACKAGECONFIG[plugin_intel_me] = "-Dplugin_intel_me=enabled,-Dplugin_intel_me=disabled"
91PACKAGECONFIG[plugin_intel_spi] = "-Dplugin_intel_spi=true -Dlzma=enabled,-Dplugin_intel_spi=false -Dlzma=disabled,xz"
92PACKAGECONFIG[plugin_logitech_bulkcontroller] = "-Dplugin_logitech_bulkcontroller=enabled,-Dplugin_logitech_bulkcontroller=disabled,protobuf-c-native protobuf-c"
93PACKAGECONFIG[plugin_logitech_scribe] = "-Dplugin_logitech_scribe=enabled,-Dplugin_logitech_scribe=disabled"
94PACKAGECONFIG[plugin_modem_manager] = "-Dplugin_modem_manager=enabled,-Dplugin_modem_manager=disabled,libqmi modemmanager" 68PACKAGECONFIG[plugin_modem_manager] = "-Dplugin_modem_manager=enabled,-Dplugin_modem_manager=disabled,libqmi modemmanager"
95PACKAGECONFIG[plugin_msr] = "-Dplugin_msr=enabled,-Dplugin_msr=disabled,cpuid" 69PACKAGECONFIG[plugin_uefi_capsule_splash] = "-Dplugin_uefi_capsule_splash=true,-Dplugin_uefi_capsule_splash=false,python3-pygobject"
96PACKAGECONFIG[plugin_nitrokey] = "-Dplugin_nitrokey=enabled,-Dplugin_nitrokey=disabled"
97PACKAGECONFIG[plugin_nvme] = "-Dplugin_nvme=enabled,-Dplugin_nvme=disabled"
98PACKAGECONFIG[plugin_parade_lspcon] = "-Dplugin_parade_lspcon=enabled,-Dplugin_parade_lspcon=disabled"
99PACKAGECONFIG[plugin_pixart_rf] = "-Dplugin_pixart_rf=enabled,-Dplugin_pixart_rf=disabled"
100PACKAGECONFIG[plugin_powerd] = "-Dplugin_powerd=enabled,-Dplugin_powerd=disabled"
101PACKAGECONFIG[plugin_realtek_mst] = "-Dplugin_realtek_mst=enabled,-Dplugin_realtek_mst=disabled"
102PACKAGECONFIG[plugin_redfish] = "-Dplugin_redfish=enabled,-Dplugin_redfish=disabled"
103PACKAGECONFIG[plugin_scsi] = "-Dplugin_scsi=enabled,-Dplugin_scsi=disabled"
104PACKAGECONFIG[plugin_synaptics_mst] = "-Dplugin_synaptics_mst=enabled,-Dplugin_synaptics_mst=disabled"
105PACKAGECONFIG[plugin_synaptics_rmi] = "-Dplugin_synaptics_rmi=enabled,-Dplugin_synaptics_rmi=disabled"
106PACKAGECONFIG[plugin_tpm] = "-Dplugin_tpm=enabled,-Dplugin_tpm=disabled,tpm2-tss"
107# Turn off the capsule splash as it needs G-I at buildtime, which isn't currently supported
108PACKAGECONFIG[plugin_uefi_capsule] = "-Dplugin_uefi_capsule=enabled -Dplugin_uefi_capsule_splash=false,-Dplugin_uefi_capsule=disabled,efivar fwupd-efi"
109PACKAGECONFIG[plugin_uefi_pk] = "-Dplugin_uefi_pk=enabled,-Dplugin_uefi_pk=disabled"
110PACKAGECONFIG[plugin_uf2] = "-Dplugin_uf2=enabled,-Dplugin_uf2=disabled"
111PACKAGECONFIG[plugin_upower] = "-Dplugin_upower=enabled,-Dplugin_upower=disabled"
112
113# Always disable these plugins on non-x86 platforms as they don't compile or are useless
114DISABLE_NON_X86 = "plugin_intel_me plugin_intel_spi plugin_msr"
115DISABLE_NON_X86:x86 = ""
116DISABLE_NON_X86:x86-64 = ""
117PACKAGECONFIG:remove = "${DISABLE_NON_X86}"
118 70
119FILES:${PN} += "${libdir}/fwupd-plugins-* \ 71FILES:${PN} += "\
120 ${libdir}/fwupd-${PV} \ 72 ${libdir}/fwupd-plugins-* \
121 ${systemd_unitdir} \ 73 ${libdir}/fwupd-${PV} \
122 ${nonarch_libdir}/sysusers.d/fwupd.conf \ 74 ${systemd_unitdir} \
123 ${datadir}/fish \ 75 ${nonarch_libdir}/sysusers.d/fwupd.conf \
124 ${datadir}/metainfo \ 76 ${datadir}/fish \
125 ${datadir}/icons \ 77 ${datadir}/metainfo \
126 ${datadir}/dbus-1 \ 78 ${datadir}/icons \
127 ${datadir}/polkit-1 \ 79 ${datadir}/dbus-1 \
128 ${nonarch_libdir}/modules-load.d" 80 ${datadir}/polkit-1 \
81 ${nonarch_libdir}/modules-load.d \
82"
129 83
130FILES:${PN}-ptest += "${libexecdir}/installed-tests/ \ 84FILES:${PN}-ptest += "${libexecdir}/installed-tests/ \
131 ${datadir}/installed-tests/" 85 ${datadir}/installed-tests/"
132RDEPENDS:${PN}-ptest += "gnome-desktop-testing" 86RDEPENDS:${PN}-ptest += "gnome-desktop-testing python3"
133 87
134INSANE_SKIP:${PN}-ptest += "buildpaths" 88INSANE_SKIP:${PN}-ptest += "buildpaths"