* [Buildroot] [PATCH 1/4] package/libjcat: new package
@ 2024-06-05 23:41 James Hilliard
2024-06-05 23:41 ` [Buildroot] [PATCH 2/4] package/fwupd-efi: " James Hilliard
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: James Hilliard @ 2024-06-05 23:41 UTC (permalink / raw)
To: buildroot; +Cc: Eric Le Bihan, James Hilliard, Thomas Petazzoni
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
---
package/Config.in | 1 +
package/libjcat/Config.in | 15 +++++++++++++
package/libjcat/libjcat.hash | 3 +++
package/libjcat/libjcat.mk | 43 ++++++++++++++++++++++++++++++++++++
4 files changed, 62 insertions(+)
create mode 100644 package/libjcat/Config.in
create mode 100644 package/libjcat/libjcat.hash
create mode 100644 package/libjcat/libjcat.mk
diff --git a/package/Config.in b/package/Config.in
index bfbec1c21d..9a948c5536 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1523,6 +1523,7 @@ endmenu
menu "Compression and decompression"
source "package/libarchive/Config.in"
source "package/libdeflate/Config.in"
+ source "package/libjcat/Config.in"
source "package/libmspack/Config.in"
source "package/libsquish/Config.in"
source "package/libzip/Config.in"
diff --git a/package/libjcat/Config.in b/package/libjcat/Config.in
new file mode 100644
index 0000000000..cf7bc334f5
--- /dev/null
+++ b/package/libjcat/Config.in
@@ -0,0 +1,15 @@
+config BR2_PACKAGE_LIBJCAT
+ bool "libjcat"
+ depends on BR2_USE_WCHAR # libglib2
+ depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2
+ depends on BR2_USE_MMU # libglib2
+ select BR2_PACKAGE_JSON_GLIB
+ select BR2_PACKAGE_LIBGLIB2
+ help
+ Library for reading and writing Jcat files.
+
+ https://github.com/hughsie/libjcat
+
+comment "fwupd needs a toolchain w/ wchar, threads"
+ depends on BR2_USE_MMU
+ depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
diff --git a/package/libjcat/libjcat.hash b/package/libjcat/libjcat.hash
new file mode 100644
index 0000000000..b6dc8d2f69
--- /dev/null
+++ b/package/libjcat/libjcat.hash
@@ -0,0 +1,3 @@
+# Locally calculated
+sha256 a6232aeca3c3fab6dbb3bed06ec3832088b49a4b278a7119558d72be60ce921f libjcat-0.2.1.tar.xz
+sha256 20c17d8b8c48a600800dfd14f95d5cb9ff47066a9641ddeab48dc54aec96e331 LICENSE
diff --git a/package/libjcat/libjcat.mk b/package/libjcat/libjcat.mk
new file mode 100644
index 0000000000..e13e5dbfb7
--- /dev/null
+++ b/package/libjcat/libjcat.mk
@@ -0,0 +1,43 @@
+################################################################################
+#
+# libjcat
+#
+################################################################################
+
+LIBJCAT_VERSION = 0.2.1
+LIBJCAT_SITE = https://github.com/hughsie/libjcat/releases/download/$(LIBJCAT_VERSION)
+LIBJCAT_SOURCE = libjcat-$(LIBJCAT_VERSION).tar.xz
+LIBJCAT_LICENSE = LGPL-2.1+
+LIBJCAT_LICENSE_FILES = LICENSE
+LIBJCAT_INSTALL_STAGING = YES
+LIBJCAT_DEPENDENCIES = host-pkgconf json-glib libglib2
+
+LIBJCAT_CONF_OPTS = \
+ -Dgtkdoc=false \
+ -Dtests=false \
+ -Ded25519=false \
+ -Dman=false \
+ -Dcli=true
+
+ifeq ($(BR2_PACKAGE_GOBJECT_INTROSPECTION),y)
+LIBJCAT_DEPENDENCIES += host-vala gobject-introspection
+LIBJCAT_CONF_OPTS += -Dintrospection=true -Dvapi=true
+else
+LIBJCAT_CONF_OPTS += -Dintrospection=false -Dvapi=false
+endif
+
+ifeq ($(BR2_PACKAGE_LIBGPG_ERROR)$(BR2_PACKAGE_LIBGPGME),yy)
+LIBJCAT_DEPENDENCIES += libgpg-error libgpgme
+LIBJCAT_CONF_OPTS += -Dgpg=true
+else
+LIBJCAT_CONF_OPTS += -Dgpg=false
+endif
+
+ifeq ($(BR2_PACKAGE_GNUTLS),y)
+LIBJCAT_DEPENDENCIES += gnutls
+LIBJCAT_CONF_OPTS += -Dpkcs7=true
+else
+LIBJCAT_CONF_OPTS += -Dpkcs7=false
+endif
+
+$(eval $(meson-package))
--
2.34.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [Buildroot] [PATCH 2/4] package/fwupd-efi: new package
2024-06-05 23:41 [Buildroot] [PATCH 1/4] package/libjcat: new package James Hilliard
@ 2024-06-05 23:41 ` James Hilliard
2024-06-06 19:25 ` Julien Olivain
2024-07-16 12:15 ` Thomas Petazzoni via buildroot
2024-06-05 23:41 ` [Buildroot] [PATCH 3/4] package/flashrom: install to staging with meson James Hilliard
2024-06-05 23:41 ` [Buildroot] [PATCH 4/4] package/fwupd: new package James Hilliard
2 siblings, 2 replies; 7+ messages in thread
From: James Hilliard @ 2024-06-05 23:41 UTC (permalink / raw)
To: buildroot; +Cc: Eric Le Bihan, James Hilliard, Thomas Petazzoni
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
---
package/Config.in | 1 +
package/fwupd-efi/Config.in | 8 ++++++++
package/fwupd-efi/fwupd-efi.hash | 3 +++
package/fwupd-efi/fwupd-efi.mk | 25 +++++++++++++++++++++++++
4 files changed, 37 insertions(+)
create mode 100644 package/fwupd-efi/Config.in
create mode 100644 package/fwupd-efi/fwupd-efi.hash
create mode 100644 package/fwupd-efi/fwupd-efi.mk
diff --git a/package/Config.in b/package/Config.in
index 9a948c5536..2be39f98c7 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -519,6 +519,7 @@ endmenu
source "package/fmtools/Config.in"
source "package/freeipmi/Config.in"
source "package/freescale-imx/Config.in"
+ source "package/fwupd-efi/Config.in"
source "package/fxload/Config.in"
source "package/gcnano-binaries/Config.in"
source "package/gpm/Config.in"
diff --git a/package/fwupd-efi/Config.in b/package/fwupd-efi/Config.in
new file mode 100644
index 0000000000..3d82f480be
--- /dev/null
+++ b/package/fwupd-efi/Config.in
@@ -0,0 +1,8 @@
+config BR2_PACKAGE_FWUPD_EFI
+ bool "fwupd-efi"
+ depends on BR2_PACKAGE_GNU_EFI_ARCH_SUPPORTS
+ select BR2_PACKAGE_GNU_EFI
+ help
+ EFI Application used by uefi-capsule plugin in fwupd.
+
+ https://github.com/fwupd/fwupd-efi
diff --git a/package/fwupd-efi/fwupd-efi.hash b/package/fwupd-efi/fwupd-efi.hash
new file mode 100644
index 0000000000..35dc9625ca
--- /dev/null
+++ b/package/fwupd-efi/fwupd-efi.hash
@@ -0,0 +1,3 @@
+# Locally calculated
+sha256 afd0805a2ad081a7caff2ef5bc004ce3a0147b538015e8eca966341716b1260e fwupd-efi-1.6.tar.xz
+sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING
diff --git a/package/fwupd-efi/fwupd-efi.mk b/package/fwupd-efi/fwupd-efi.mk
new file mode 100644
index 0000000000..575cf73b95
--- /dev/null
+++ b/package/fwupd-efi/fwupd-efi.mk
@@ -0,0 +1,25 @@
+################################################################################
+#
+# fwupd-efi
+#
+################################################################################
+
+FWUPD_EFI_VERSION = 1.6
+FWUPD_EFI_SITE = https://github.com/fwupd/fwupd-efi/releases/download/$(FWUPD_EFI_VERSION)
+FWUPD_EFI_SOURCE = fwupd-efi-$(FWUPD_EFI_VERSION).tar.xz
+FWUPD_EFI_LICENSE = LGPL-2.1+
+FWUPD_EFI_LICENSE_FILES = COPYING
+FWUPD_EFI_INSTALL_STAGING = YES
+FWUPD_EFI_DEPENDENCIES = gnu-efi
+FWUPD_EFI_CONF_OPTS = \
+ -Defi-libdir=$(STAGING_DIR)/usr/lib \
+ -Defi-ldsdir=$(STAGING_DIR)/usr/lib \
+ -Defi-includedir=$(STAGING_DIR)/usr/include/efi \
+ -Defi_sbat_fwupd_generation=1 \
+ -Defi_sbat_distro_id=buildroot \
+ -Defi_sbat_distro_summary=Buildroot \
+ -Defi_sbat_distro_pkgname=fwupd-efi \
+ -Defi_sbat_distro_version=fwupd-efi-$(FWUPD_EFI_VERSION) \
+ -Defi_sbat_distro_url=https://git.buildroot.net/buildroot/tree/package/fwupd-efi
+
+$(eval $(meson-package))
--
2.34.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [Buildroot] [PATCH 3/4] package/flashrom: install to staging with meson
2024-06-05 23:41 [Buildroot] [PATCH 1/4] package/libjcat: new package James Hilliard
2024-06-05 23:41 ` [Buildroot] [PATCH 2/4] package/fwupd-efi: " James Hilliard
@ 2024-06-05 23:41 ` James Hilliard
2024-06-05 23:41 ` [Buildroot] [PATCH 4/4] package/fwupd: new package James Hilliard
2 siblings, 0 replies; 7+ messages in thread
From: James Hilliard @ 2024-06-05 23:41 UTC (permalink / raw)
To: buildroot; +Cc: Eric Le Bihan, James Hilliard, Thomas Petazzoni
This will be needed for the upcoming fwupd flashrom plugin to work
as only the meson build correctly installs the pkgconfig files
needed by fwupd.
Drop Makefile patch which is no longer relevant.
Backport a patch removing _LARGEFILE64_SOURCE which can result in a
redefination build error.
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
---
...G_INTERNAL-depends-on-raw-mem-access.patch | 35 ---------
...et_enable.c-Drop-_LARGEFILE64_SOURCE.patch | 38 ++++++++++
package/flashrom/flashrom.mk | 74 +++++++++++++------
3 files changed, 88 insertions(+), 59 deletions(-)
delete mode 100644 package/flashrom/0001-Makefile-CONFIG_INTERNAL-depends-on-raw-mem-access.patch
create mode 100644 package/flashrom/0001-chipset_enable.c-Drop-_LARGEFILE64_SOURCE.patch
diff --git a/package/flashrom/0001-Makefile-CONFIG_INTERNAL-depends-on-raw-mem-access.patch b/package/flashrom/0001-Makefile-CONFIG_INTERNAL-depends-on-raw-mem-access.patch
deleted file mode 100644
index 9d3f3d9c51..0000000000
--- a/package/flashrom/0001-Makefile-CONFIG_INTERNAL-depends-on-raw-mem-access.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From aac91025386aa9d7b8214f8ad1746ef5c02f2d8d Mon Sep 17 00:00:00 2001
-From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-Date: Sun, 5 Nov 2023 10:38:32 +0100
-Subject: [PATCH] Makefile: CONFIG_INTERNAL depends on raw mem access
-
-CONFIG_INTERNAL depends on raw mem access resulting in the following
-build failure on sh4 since version 1.3.0:
-
-/home/thomas/autobuild/instance-3/output-1/per-package/flashrom/host/bin/../lib/gcc/sh4a-buildroot-linux-gnu/12.3.0/../../../../sh4a-buildroot-linux-gnu/bin/ld: libflashrom.a(internal.o): in function `internal_chip_readn':
-internal.c:(.text+0x8): undefined reference to `mmio_readn'
-
-Fixes:
- - http://autobuild.buildroot.org/results/f74a9d315fb519f284428234713f43fcf4e35fd0
-
-Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-Upstream: https://review.coreboot.org/c/flashrom/+/78930
----
- Makefile | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/Makefile b/Makefile
-index bf01d0f8..cd21f22f 100644
---- a/Makefile
-+++ b/Makefile
-@@ -115,6 +115,7 @@ DEPENDS_ON_RAW_MEM_ACCESS := \
- CONFIG_ATAPROMISE \
- CONFIG_DRKAISER \
- CONFIG_GFXNVIDIA \
-+ CONFIG_INTERNAL \
- CONFIG_INTERNAL_X86 \
- CONFIG_IT8212 \
- CONFIG_NICINTEL \
---
-2.42.0
-
diff --git a/package/flashrom/0001-chipset_enable.c-Drop-_LARGEFILE64_SOURCE.patch b/package/flashrom/0001-chipset_enable.c-Drop-_LARGEFILE64_SOURCE.patch
new file mode 100644
index 0000000000..1ee8d0f7e3
--- /dev/null
+++ b/package/flashrom/0001-chipset_enable.c-Drop-_LARGEFILE64_SOURCE.patch
@@ -0,0 +1,38 @@
+From 59287a0bd0e4d58a4d2b434bde3db9b2376ac7c1 Mon Sep 17 00:00:00 2001
+From: Angel Pons <th3fanbus@gmail.com>
+Date: Tue, 16 May 2023 11:13:17 +0200
+Subject: [PATCH] chipset_enable.c: Drop `_LARGEFILE64_SOURCE`
+
+This file does not access any large files, so there's no need to define
+this feature test macro.
+
+Change-Id: I866cfa2f996eeea5846e5d9189647ad7a4a4e3e4
+Signed-off-by: Angel Pons <th3fanbus@gmail.com>
+Reviewed-on: https://review.coreboot.org/c/flashrom/+/75271
+Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
+Reviewed-by: Nico Huber <nico.h@gmx.de>
+Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
+Reviewed-by: Alexander Goncharov <chat@joursoir.net>
+
+Upstream: https://github.com/flashrom/flashrom/commit/59287a0bd0e4d58a4d2b434bde3db9b2376ac7c1
+Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
+---
+ chipset_enable.c | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/chipset_enable.c b/chipset_enable.c
+index 9d3df5f8..3846ecfb 100644
+--- a/chipset_enable.c
++++ b/chipset_enable.c
+@@ -24,8 +24,6 @@
+ * Contains the chipset specific flash enables.
+ */
+
+-#define _LARGEFILE64_SOURCE
+-
+ #include <stdbool.h>
+ #include <stdlib.h>
+ #include <string.h>
+--
+2.34.1
+
diff --git a/package/flashrom/flashrom.mk b/package/flashrom/flashrom.mk
index 86bfec40cc..be6cac3cc2 100644
--- a/package/flashrom/flashrom.mk
+++ b/package/flashrom/flashrom.mk
@@ -9,41 +9,67 @@ FLASHROM_SOURCE = flashrom-v$(FLASHROM_VERSION).tar.bz2
FLASHROM_SITE = https://download.flashrom.org/releases
FLASHROM_LICENSE = GPL-2.0+
FLASHROM_LICENSE_FILES = COPYING
-FLASHROM_MAKE_OPTS = WARNERROR=no
+FLASHROM_INSTALL_STAGING = YES
+FLASHROM_CONF_OPTS = \
+ -Dclassic_cli=enabled \
+ -Dclassic_cli_print_wiki=disabled \
+ -Dich_descriptors_tool=enabled \
+ -Dtests=disabled \
+ -Duse_internal_dmi=true
+
+FLASHROM_PROGRAMMERS = \
+ buspirate_spi \
+ linux_mtd \
+ linux_spi \
+ parade_lspcon \
+ mediatek_i2c_spi \
+ mstarddc_spi \
+ pony_spi \
+ rayer_spi \
+ realtek_mst_i2c_spi \
+ serprog
ifeq ($(BR2_PACKAGE_LIBFTDI1),y)
FLASHROM_DEPENDENCIES += host-pkgconf libftdi1
-FLASHROM_MAKE_OPTS += \
- CONFIG_FT2232_SPI=yes \
- CONFIG_USBBLASTER_SPI=yes
-else
-FLASHROM_MAKE_OPTS += \
- CONFIG_FT2232_SPI=no \
- CONFIG_USBBLASTER_SPI=no
+FLASHROM_PROGRAMMERS += \
+ ft2232_spi \
+ usbblaster_spi
endif
ifeq ($(BR2_PACKAGE_LIBUSB),y)
FLASHROM_DEPENDENCIES += host-pkgconf libusb
-FLASHROM_MAKE_OPTS += CONFIG_ENABLE_LIBUSB1_PROGRAMMERS=yes
-else
-FLASHROM_MAKE_OPTS += CONFIG_ENABLE_LIBUSB1_PROGRAMMERS=no
+FLASHROM_PROGRAMMERS += \
+ ch341a_spi \
+ dediprog \
+ developerbox_spi \
+ digilent_spi \
+ dirtyjtag_spi \
+ pickit2_spi \
+ raiden_debug_spi \
+ stlinkv3_spi
endif
ifeq ($(BR2_PACKAGE_PCIUTILS),y)
FLASHROM_DEPENDENCIES += pciutils
-FLASHROM_MAKE_OPTS += CONFIG_ENABLE_LIBPCI_PROGRAMMERS=yes
-else
-FLASHROM_MAKE_OPTS += CONFIG_ENABLE_LIBPCI_PROGRAMMERS=no
+FLASHROM_PROGRAMMERS += \
+ atahpt \
+ atapromise \
+ atavia \
+ drkaiser \
+ gfxnvidia \
+ internal \
+ it8212 \
+ nic3com \
+ nicintel \
+ nicintel_eeprom \
+ nicintel_spi \
+ nicnatsemi \
+ nicrealtek \
+ ogp_spi \
+ satamv \
+ satasii
endif
-define FLASHROM_BUILD_CMDS
- $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \
- CFLAGS="$(TARGET_CFLAGS) -DHAVE_STRNLEN" \
- $(FLASHROM_MAKE_OPTS) -C $(@D)
-endef
-
-define FLASHROM_INSTALL_TARGET_CMDS
- $(INSTALL) -m 0755 -D $(@D)/flashrom $(TARGET_DIR)/usr/sbin/flashrom
-endef
+FLASHROM_CONF_OPTS += -Dprogrammer=$(subst $(space),$(comma),$(strip $(FLASHROM_PROGRAMMERS)))
-$(eval $(generic-package))
+$(eval $(meson-package))
--
2.34.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [Buildroot] [PATCH 4/4] package/fwupd: new package
2024-06-05 23:41 [Buildroot] [PATCH 1/4] package/libjcat: new package James Hilliard
2024-06-05 23:41 ` [Buildroot] [PATCH 2/4] package/fwupd-efi: " James Hilliard
2024-06-05 23:41 ` [Buildroot] [PATCH 3/4] package/flashrom: install to staging with meson James Hilliard
@ 2024-06-05 23:41 ` James Hilliard
2 siblings, 0 replies; 7+ messages in thread
From: James Hilliard @ 2024-06-05 23:41 UTC (permalink / raw)
To: buildroot; +Cc: Eric Le Bihan, James Hilliard, Thomas Petazzoni
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
---
package/Config.in | 1 +
package/fwupd/Config.in | 19 ++++
package/fwupd/fwupd.hash | 3 +
package/fwupd/fwupd.mk | 208 +++++++++++++++++++++++++++++++++++++++
4 files changed, 231 insertions(+)
create mode 100644 package/fwupd/Config.in
create mode 100644 package/fwupd/fwupd.hash
create mode 100644 package/fwupd/fwupd.mk
diff --git a/package/Config.in b/package/Config.in
index 2be39f98c7..02ca6472d2 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -519,6 +519,7 @@ endmenu
source "package/fmtools/Config.in"
source "package/freeipmi/Config.in"
source "package/freescale-imx/Config.in"
+ source "package/fwupd/Config.in"
source "package/fwupd-efi/Config.in"
source "package/fxload/Config.in"
source "package/gcnano-binaries/Config.in"
diff --git a/package/fwupd/Config.in b/package/fwupd/Config.in
new file mode 100644
index 0000000000..6a96358e5b
--- /dev/null
+++ b/package/fwupd/Config.in
@@ -0,0 +1,19 @@
+config BR2_PACKAGE_FWUPD
+ bool "fwupd"
+ depends on !BR2_STATIC_LIBS # libxmlb
+ depends on BR2_USE_WCHAR # libglib2
+ depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2
+ depends on BR2_USE_MMU # libglib2
+ select BR2_PACKAGE_LIBGLIB2
+ select BR2_PACKAGE_LIBJCAT
+ select BR2_PACKAGE_LIBXMLB
+ select BR2_PACKAGE_ZLIB
+ help
+ Fwupd is a simple daemon to allow session software
+ to update device firmware on your local machine.
+
+ https://fwupd.org/
+
+comment "fwupd needs a toolchain w/ wchar, threads, dynamic library"
+ depends on BR2_USE_MMU
+ depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
diff --git a/package/fwupd/fwupd.hash b/package/fwupd/fwupd.hash
new file mode 100644
index 0000000000..8da9dc3c66
--- /dev/null
+++ b/package/fwupd/fwupd.hash
@@ -0,0 +1,3 @@
+# Locally calculated
+sha256 b86a2d7fe1b6cc0ac4f75f3351a78cb3c225880c9e20b932fa078ef472e9fcb2 fwupd-1.9.20.tar.xz
+sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING
diff --git a/package/fwupd/fwupd.mk b/package/fwupd/fwupd.mk
new file mode 100644
index 0000000000..b7497707f5
--- /dev/null
+++ b/package/fwupd/fwupd.mk
@@ -0,0 +1,208 @@
+################################################################################
+#
+# fwupd
+#
+################################################################################
+
+FWUPD_VERSION = 1.9.20
+FWUPD_SITE = https://github.com/fwupd/fwupd/releases/download/$(FWUPD_VERSION)
+FWUPD_SOURCE = fwupd-$(FWUPD_VERSION).tar.xz
+FWUPD_LICENSE = LGPL-2.1+
+FWUPD_LICENSE_FILES = COPYING
+FWUPD_DEPENDENCIES = \
+ host-pkgconf \
+ libglib2 \
+ libjcat \
+ libxmlb \
+ zlib
+
+FWUPD_CONF_OPTS = \
+ -Dstatic_analysis=false \
+ -Dconsolekit=disabled \
+ -Dfirmware-packager=true \
+ -Ddocs=disabled \
+ -Dlvfs=true \
+ -Dman=false \
+ -Dgusb=disabled \
+ -Dpassim=disabled \
+ -Dp2p_policy=none \
+ -Dcbor=disabled \
+ -Dplugin_acpi_phat=enabled \
+ -Dplugin_cfu=disabled \
+ -Dplugin_ep963x=enabled \
+ -Dplugin_fastboot=disabled \
+ -Dplugin_logitech_bulkcontroller=disabled \
+ -Dplugin_logitech_scribe=disabled \
+ -Dplugin_logitech_tap=disabled \
+ -Dplugin_pixart_rf=enabled \
+ -Dplugin_tpm=disabled \
+ -Dplugin_uefi_capsule=enabled \
+ -Dplugin_uefi_capsule_splash=false \
+ -Dplugin_nitrokey=enabled \
+ -Dplugin_mtd=enabled \
+ -Dplugin_intel_me=enabled \
+ -Dplugin_upower=enabled \
+ -Dplugin_powerd=enabled \
+ -Dqubes=false \
+ -Dsupported_build=enabled \
+ -Dlaunchd=disabled \
+ -Dtests=false \
+ -Dmetainfo=true \
+ -Dfish_completion=false \
+ -Doffline=enabled \
+ -Dcompat_cli=false \
+ -Dthinklmi_compat=false \
+ -Dpython="$(HOST_DIR)/bin/python3"
+
+ifeq ($(BR2_PACKAGE_GOBJECT_INTROSPECTION),y)
+FWUPD_DEPENDENCIES += gobject-introspection
+FWUPD_CONF_OPTS += -Dintrospection=enabled
+else
+FWUPD_CONF_OPTS += -Dintrospection=disabled
+endif
+
+ifeq ($(BR2_PACKAGE_LIBARCHIVE),y)
+FWUPD_DEPENDENCIES += libarchive
+FWUPD_CONF_OPTS += -Dlibarchive=enabled
+else
+FWUPD_CONF_OPTS += -Dlibarchive=disabled
+endif
+
+ifeq ($(BR2_PACKAGE_LIBGUDEV),y)
+FWUPD_DEPENDENCIES += libgudev
+FWUPD_CONF_OPTS += \
+ -Dgudev=enabled \
+ -Dplugin_android_boot=enabled \
+ -Dplugin_bcm57xx=enabled \
+ -Dplugin_emmc=enabled \
+ -Dplugin_gpio=enabled \
+ -Dplugin_igsc=enabled \
+ -Dplugin_kinetic_dp=enabled \
+ -Dplugin_parade_lspcon=enabled \
+ -Dplugin_realtek_mst=enabled \
+ -Dplugin_synaptics_mst=enabled \
+ -Dplugin_mediatek_scaler=enabled \
+ -Dplugin_scsi=enabled \
+ -Dplugin_nvme=enabled \
+ -Dplugin_uf2=enabled
+else
+FWUPD_CONF_OPTS += \
+ -Dgudev=disabled \
+ -Dplugin_android_boot=disabled \
+ -Dplugin_bcm57xx=disabled \
+ -Dplugin_emmc=disabled \
+ -Dplugin_gpio=disabled \
+ -Dplugin_igsc=disabled \
+ -Dplugin_kinetic_dp=disabled \
+ -Dplugin_parade_lspcon=disabled \
+ -Dplugin_realtek_mst=disabled \
+ -Dplugin_synaptics_mst=disabled \
+ -Dplugin_mediatek_scaler=disabled \
+ -Dplugin_scsi=disabled \
+ -Dplugin_nvme=disabled \
+ -Dplugin_uf2=disabled
+endif
+
+ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS),y)
+FWUPD_DEPENDENCIES += bluez5_utils
+FWUPD_CONF_OPTS += -Dbluez=enabled
+else
+FWUPD_CONF_OPTS += -Dbluez=disabled
+endif
+
+ifeq ($(BR2_PACKAGE_POLKIT),y)
+FWUPD_DEPENDENCIES += polkit
+FWUPD_CONF_OPTS += -Dpolkit=enabled
+else
+FWUPD_CONF_OPTS += -Dpolkit=disabled
+endif
+
+ifeq ($(BR2_PACKAGE_GNUTLS),y)
+FWUPD_DEPENDENCIES += gnutls
+FWUPD_CONF_OPTS += -Dgnutls=enabled -Dplugin_uefi_pk=enabled
+else
+FWUPD_CONF_OPTS += -Dgnutls=disabled -Dplugin_uefi_pk=disabled
+endif
+
+ifeq ($(BR2_PACKAGE_SQLITE),y)
+FWUPD_DEPENDENCIES += sqlite
+FWUPD_CONF_OPTS += -Dsqlite=enabled
+else
+FWUPD_CONF_OPTS += -Dsqlite=disabled
+endif
+
+ifeq ($(BR2_PACKAGE_XZ),y)
+FWUPD_DEPENDENCIES += xz
+FWUPD_CONF_OPTS += -Dlzma=enabled
+ifeq ($(BR2_i386)$(BR2_x86_64),y)
+FWUPD_CONF_OPTS += -Dplugin_intel_spi=true
+else
+FWUPD_CONF_OPTS += -Dplugin_intel_spi=false
+endif
+else
+FWUPD_CONF_OPTS += -Dlzma=disabled -Dplugin_intel_spi=false
+endif
+
+ifeq ($(BR2_PACKAGE_LIBDRM_AMDGPU)$(BR2_PACKAGE_LIBGUDEV),yy)
+FWUPD_DEPENDENCIES += libdrm libgudev
+FWUPD_CONF_OPTS += -Dplugin_amdgpu=enabled
+else
+FWUPD_CONF_OPTS += -Dplugin_amdgpu=disabled
+endif
+
+ifeq ($(BR2_i386)$(BR2_x86_64),y)
+FWUPD_CONF_OPTS += -Dplugin_cpu=enabled -Dplugin_msr=enabled -Dhsi=enabled
+else
+FWUPD_CONF_OPTS += -Dplugin_cpu=disabled -Dplugin_msr=disabled -Dhsi=disabled
+endif
+
+ifeq ($(BR2_PACKAGE_GNUTLS)$(BR2_PACKAGE_LIBGUDEV),yy)
+FWUPD_DEPENDENCIES += gnutls libgudev
+FWUPD_CONF_OPTS += -Dplugin_synaptics_rmi=enabled
+else
+FWUPD_CONF_OPTS += -Dplugin_synaptics_rmi=disabled
+endif
+
+ifeq ($(BR2_PACKAGE_LIBCURL),y)
+FWUPD_DEPENDENCIES += libcurl
+FWUPD_CONF_OPTS += -Dplugin_redfish=enabled -Dcurl=enabled
+else
+FWUPD_CONF_OPTS += -Dplugin_redfish=disabled -Dcurl=disabled
+endif
+
+ifeq ($(BR2_PACKAGE_LIBGUDEV)$(BR2_PACKAGE_LIBMBIM)$(BR2_PACKAGE_LIBQMI)$(BR2_PACKAGE_MODEM_MANAGER),yyyy)
+FWUPD_DEPENDENCIES += libgudev libmbim libqmi modem-manager
+FWUPD_CONF_OPTS += -Dplugin_modem_manager=enabled
+else
+FWUPD_CONF_OPTS += -Dplugin_modem_manager=disabled
+endif
+
+ifeq ($(BR2_PACKAGE_FLASHROM),y)
+FWUPD_DEPENDENCIES += flashrom
+FWUPD_CONF_OPTS += -Dplugin_flashrom=enabled
+else
+FWUPD_CONF_OPTS += -Dplugin_flashrom=disabled
+endif
+
+ifeq ($(BR2_PACKAGE_SYSTEMD),y)
+FWUPD_DEPENDENCIES += systemd
+FWUPD_CONF_OPTS += -Dsystemd=enabled -Delogind=enabled
+else
+FWUPD_CONF_OPTS += -Dsystemd=disabled -Delogind=disabled
+endif
+
+ifeq ($(BR2_PACKAGE_FWUPD_EFI),y)
+FWUPD_DEPENDENCIES += fwupd-efi
+FWUPD_CONF_OPTS += -Defi_binary=true
+else
+FWUPD_CONF_OPTS += -Defi_binary=false
+endif
+
+ifeq ($(BR2_PACKAGE_BASH_COMPLETION),y)
+FWUPD_DEPENDENCIES += bash-completion
+FWUPD_CONF_OPTS += -Dbash_completion=true
+else
+FWUPD_CONF_OPTS += -Dbash_completion=false
+endif
+
+$(eval $(meson-package))
--
2.34.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [Buildroot] [PATCH 2/4] package/fwupd-efi: new package
2024-06-05 23:41 ` [Buildroot] [PATCH 2/4] package/fwupd-efi: " James Hilliard
@ 2024-06-06 19:25 ` Julien Olivain
2024-07-16 12:15 ` Thomas Petazzoni via buildroot
1 sibling, 0 replies; 7+ messages in thread
From: Julien Olivain @ 2024-06-06 19:25 UTC (permalink / raw)
To: James Hilliard; +Cc: Eric Le Bihan, Thomas Petazzoni, buildroot
Hi James,
Thanks for the patch!
On 06/06/2024 01:41, James Hilliard wrote:
> Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> ---
> package/Config.in | 1 +
> package/fwupd-efi/Config.in | 8 ++++++++
> package/fwupd-efi/fwupd-efi.hash | 3 +++
> package/fwupd-efi/fwupd-efi.mk | 25 +++++++++++++++++++++++++
> 4 files changed, 37 insertions(+)
> create mode 100644 package/fwupd-efi/Config.in
> create mode 100644 package/fwupd-efi/fwupd-efi.hash
> create mode 100644 package/fwupd-efi/fwupd-efi.mk
>
> diff --git a/package/Config.in b/package/Config.in
> index 9a948c5536..2be39f98c7 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -519,6 +519,7 @@ endmenu
> source "package/fmtools/Config.in"
> source "package/freeipmi/Config.in"
> source "package/freescale-imx/Config.in"
> + source "package/fwupd-efi/Config.in"
> source "package/fxload/Config.in"
> source "package/gcnano-binaries/Config.in"
> source "package/gpm/Config.in"
> diff --git a/package/fwupd-efi/Config.in b/package/fwupd-efi/Config.in
> new file mode 100644
> index 0000000000..3d82f480be
> --- /dev/null
> +++ b/package/fwupd-efi/Config.in
> @@ -0,0 +1,8 @@
> +config BR2_PACKAGE_FWUPD_EFI
> + bool "fwupd-efi"
> + depends on BR2_PACKAGE_GNU_EFI_ARCH_SUPPORTS
> + select BR2_PACKAGE_GNU_EFI
> + help
> + EFI Application used by uefi-capsule plugin in fwupd.
> +
> + https://github.com/fwupd/fwupd-efi
> diff --git a/package/fwupd-efi/fwupd-efi.hash
> b/package/fwupd-efi/fwupd-efi.hash
> new file mode 100644
> index 0000000000..35dc9625ca
> --- /dev/null
> +++ b/package/fwupd-efi/fwupd-efi.hash
> @@ -0,0 +1,3 @@
> +# Locally calculated
> +sha256
> afd0805a2ad081a7caff2ef5bc004ce3a0147b538015e8eca966341716b1260e
> fwupd-efi-1.6.tar.xz
> +sha256
> dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551
> COPYING
> diff --git a/package/fwupd-efi/fwupd-efi.mk
> b/package/fwupd-efi/fwupd-efi.mk
> new file mode 100644
> index 0000000000..575cf73b95
> --- /dev/null
> +++ b/package/fwupd-efi/fwupd-efi.mk
> @@ -0,0 +1,25 @@
> +################################################################################
> +#
> +# fwupd-efi
> +#
> +################################################################################
> +
> +FWUPD_EFI_VERSION = 1.6
> +FWUPD_EFI_SITE =
> https://github.com/fwupd/fwupd-efi/releases/download/$(FWUPD_EFI_VERSION)
> +FWUPD_EFI_SOURCE = fwupd-efi-$(FWUPD_EFI_VERSION).tar.xz
> +FWUPD_EFI_LICENSE = LGPL-2.1+
> +FWUPD_EFI_LICENSE_FILES = COPYING
> +FWUPD_EFI_INSTALL_STAGING = YES
> +FWUPD_EFI_DEPENDENCIES = gnu-efi
> +FWUPD_EFI_CONF_OPTS = \
> + -Defi-libdir=$(STAGING_DIR)/usr/lib \
> + -Defi-ldsdir=$(STAGING_DIR)/usr/lib \
> + -Defi-includedir=$(STAGING_DIR)/usr/include/efi \
> + -Defi_sbat_fwupd_generation=1 \
> + -Defi_sbat_distro_id=buildroot \
> + -Defi_sbat_distro_summary=Buildroot \
> + -Defi_sbat_distro_pkgname=fwupd-efi \
> + -Defi_sbat_distro_version=fwupd-efi-$(FWUPD_EFI_VERSION) \
> + -Defi_sbat_distro_url=https://git.buildroot.net/buildroot/tree/package/fwupd-efi
According to:
https://gitlab.com/buildroot.org/buildroot/-/commit/3e3bcd633875db0e1f366e86fe8763b5b2d9112e
the official git repository is on gitlab.
Therefore, I think this line should be:
https://gitlab.com/buildroot.org/buildroot/-/tree/master/package/fwupd-efi
> +
> +$(eval $(meson-package))
> --
> 2.34.1
>
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
Best regards,
Julien.
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Buildroot] [PATCH 2/4] package/fwupd-efi: new package
2024-06-05 23:41 ` [Buildroot] [PATCH 2/4] package/fwupd-efi: " James Hilliard
2024-06-06 19:25 ` Julien Olivain
@ 2024-07-16 12:15 ` Thomas Petazzoni via buildroot
2024-07-16 18:04 ` James Hilliard
1 sibling, 1 reply; 7+ messages in thread
From: Thomas Petazzoni via buildroot @ 2024-07-16 12:15 UTC (permalink / raw)
To: James Hilliard; +Cc: Eric Le Bihan, buildroot
Hello James,
On Wed, 5 Jun 2024 17:41:29 -0600
James Hilliard <james.hilliard1@gmail.com> wrote:
> Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> ---
> package/Config.in | 1 +
> package/fwupd-efi/Config.in | 8 ++++++++
> package/fwupd-efi/fwupd-efi.hash | 3 +++
> package/fwupd-efi/fwupd-efi.mk | 25 +++++++++++++++++++++++++
> 4 files changed, 37 insertions(+)
> create mode 100644 package/fwupd-efi/Config.in
> create mode 100644 package/fwupd-efi/fwupd-efi.hash
> create mode 100644 package/fwupd-efi/fwupd-efi.mk
Thanks for the patch! Entry in DEVELOPERS file is missing (I had added
it locally), but more importantly, the build fails:
FAILED: efi/fwup-sbat.o
/home/thomas/projets/buildroot/output/build/fwupd-efi-1.6/efi/generate_sbat.py efi/fwup-sbat.o --cc /home/thomas/projets/buildroot/output/host/bin/arm-linux-gcc --cflags '-Og -g3 --param=ssp-buffer-size=4 -fexceptions -Wall -Wextra -Wvla -std=gnu11 -fpic -funsigned-char -fshort-wchar -ffreestanding -fno-strict-aliasing -fno-stack-protector -fno-stack-check -fno-merge-all-constants -Wsign-compare -Wno-missing-field-initializers -Wno-address-of-packed-member -grecord-gcc-switches -DDEBUGDIR="/usr/lib/debug" -I. -isystem /home/thomas/projets/buildroot/output/host/arm-buildroot-linux-musleabihf/sysroot/usr/include/efi -isystem /home/thomas/projets/buildroot/output/host/arm-buildroot-linux-musleabihf/sysroot/usr/include/efi/arm -fno-merge-constants' --objcopy /usr/bin/objcopy --project-name fwupd-efi --project-version 1.6 --sbat-version 1 --sbat-generation 1 --sbat-distro-id buildroot --sbat-distro-generation 0 --sbat-distro-summary Buildroot --sbat-distro-pkgname fwupd-efi --sbat-distro-
version fwupd-efi-1.6 --sbat-distro-url https://gitlab.com/buildroot.org/buildroot/-/tree/master/package/fwupd-efi
/usr/bin/objcopy: Unable to recognise the format of the input file `efi/fwup-sbat.o'
Traceback (most recent call last):
File "/home/thomas/projets/buildroot/output/build/fwupd-efi-1.6/efi/generate_sbat.py", line 118, in <module>
_generate_sbat(_args)
File "/home/thomas/projets/buildroot/output/build/fwupd-efi-1.6/efi/generate_sbat.py", line 80, in _generate_sbat
subprocess.run(argv, check=True)
File "/usr/lib64/python3.12/subprocess.py", line 571, in run
raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['/usr/bin/objcopy', '--add-section', '.sbat=/tmp/tmpd55y25q9', '--set-section-flags', '.sbat=contents,alloc,load,readonly,data', 'efi/fwup-sbat.o']' returned non-zero exit status 1.
I think it's due to the fact that it is using /usr/bin/objcopy instead
of the cross objcopy. You probably didn't notice as you were building
for x86-64, and therefore the host objcopy didn't work.
Could you test building for a foreign architecture, and preferably
using ./utils/docker-run (see my review on PATCH 4/4 to understand why
docker-run is important).
Thanks!
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Buildroot] [PATCH 2/4] package/fwupd-efi: new package
2024-07-16 12:15 ` Thomas Petazzoni via buildroot
@ 2024-07-16 18:04 ` James Hilliard
0 siblings, 0 replies; 7+ messages in thread
From: James Hilliard @ 2024-07-16 18:04 UTC (permalink / raw)
To: Thomas Petazzoni; +Cc: Eric Le Bihan, buildroot
On Tue, Jul 16, 2024 at 6:15 AM Thomas Petazzoni
<thomas.petazzoni@bootlin.com> wrote:
>
> Hello James,
>
> On Wed, 5 Jun 2024 17:41:29 -0600
> James Hilliard <james.hilliard1@gmail.com> wrote:
>
> > Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> > ---
> > package/Config.in | 1 +
> > package/fwupd-efi/Config.in | 8 ++++++++
> > package/fwupd-efi/fwupd-efi.hash | 3 +++
> > package/fwupd-efi/fwupd-efi.mk | 25 +++++++++++++++++++++++++
> > 4 files changed, 37 insertions(+)
> > create mode 100644 package/fwupd-efi/Config.in
> > create mode 100644 package/fwupd-efi/fwupd-efi.hash
> > create mode 100644 package/fwupd-efi/fwupd-efi.mk
>
> Thanks for the patch! Entry in DEVELOPERS file is missing (I had added
> it locally), but more importantly, the build fails:
>
> FAILED: efi/fwup-sbat.o
> /home/thomas/projets/buildroot/output/build/fwupd-efi-1.6/efi/generate_sbat.py efi/fwup-sbat.o --cc /home/thomas/projets/buildroot/output/host/bin/arm-linux-gcc --cflags '-Og -g3 --param=ssp-buffer-size=4 -fexceptions -Wall -Wextra -Wvla -std=gnu11 -fpic -funsigned-char -fshort-wchar -ffreestanding -fno-strict-aliasing -fno-stack-protector -fno-stack-check -fno-merge-all-constants -Wsign-compare -Wno-missing-field-initializers -Wno-address-of-packed-member -grecord-gcc-switches -DDEBUGDIR="/usr/lib/debug" -I. -isystem /home/thomas/projets/buildroot/output/host/arm-buildroot-linux-musleabihf/sysroot/usr/include/efi -isystem /home/thomas/projets/buildroot/output/host/arm-buildroot-linux-musleabihf/sysroot/usr/include/efi/arm -fno-merge-constants' --objcopy /usr/bin/objcopy --project-name fwupd-efi --project-version 1.6 --sbat-version 1 --sbat-generation 1 --sbat-distro-id buildroot --sbat-distro-generation 0 --sbat-distro-summary Buildroot --sbat-distro-pkgname fwupd-efi --sbat-distro-
> version fwupd-efi-1.6 --sbat-distro-url https://gitlab.com/buildroot.org/buildroot/-/tree/master/package/fwupd-efi
> /usr/bin/objcopy: Unable to recognise the format of the input file `efi/fwup-sbat.o'
> Traceback (most recent call last):
> File "/home/thomas/projets/buildroot/output/build/fwupd-efi-1.6/efi/generate_sbat.py", line 118, in <module>
> _generate_sbat(_args)
> File "/home/thomas/projets/buildroot/output/build/fwupd-efi-1.6/efi/generate_sbat.py", line 80, in _generate_sbat
> subprocess.run(argv, check=True)
> File "/usr/lib64/python3.12/subprocess.py", line 571, in run
> raise CalledProcessError(retcode, process.args,
> subprocess.CalledProcessError: Command '['/usr/bin/objcopy', '--add-section', '.sbat=/tmp/tmpd55y25q9', '--set-section-flags', '.sbat=contents,alloc,load,readonly,data', 'efi/fwup-sbat.o']' returned non-zero exit status 1.
>
> I think it's due to the fact that it is using /usr/bin/objcopy instead
> of the cross objcopy. You probably didn't notice as you were building
> for x86-64, and therefore the host objcopy didn't work.
I had a few fixes I was working on in my v3 which I hadn't gotten around to
finishing up, looks like this was one of them.
>
> Could you test building for a foreign architecture, and preferably
> using ./utils/docker-run (see my review on PATCH 4/4 to understand why
> docker-run is important).
There ended up being a few other issues such as using the wrong python3
interpreter, should all be fixed in v3:
https://github.com/fwupd/fwupd-efi/pull/86
https://patchwork.ozlabs.org/project/buildroot/patch/20240716175037.1844929-4-james.hilliard1@gmail.com/
>
> Thanks!
>
> Thomas
> --
> Thomas Petazzoni, CTO, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2024-07-16 18:05 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-05 23:41 [Buildroot] [PATCH 1/4] package/libjcat: new package James Hilliard
2024-06-05 23:41 ` [Buildroot] [PATCH 2/4] package/fwupd-efi: " James Hilliard
2024-06-06 19:25 ` Julien Olivain
2024-07-16 12:15 ` Thomas Petazzoni via buildroot
2024-07-16 18:04 ` James Hilliard
2024-06-05 23:41 ` [Buildroot] [PATCH 3/4] package/flashrom: install to staging with meson James Hilliard
2024-06-05 23:41 ` [Buildroot] [PATCH 4/4] package/fwupd: new package James Hilliard
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox