Package: gnu-efi
Version: 4.0.0-1
Tags: patch
User: [email protected]
Usertags: ftcbfs
Control: affects -1 + src:fwupd-efi
Control: block -1 by 1125736 1125737 1125739 1125740

fwupd-efi fails to cross build from source, because it fails finding
gnu-efi. During cross compilation, pkg-config does not search
/usr/lib/pkgconfig. Unfortunately, that's where gnu-efi presently
installs. The solution is to install to a multiarch directory instead.
Unfortunately, a number of dependent packages are not quite prepared for
this move. I've filed patches for them (to cope with both a future
multiarch and a present non-multiarch gnu-efi). Once they're fixed, this
patch can be applied.

Helmut
diff -Nru gnu-efi-4.0.0/debian/changelog gnu-efi-4.0.0/debian/changelog
--- gnu-efi-4.0.0/debian/changelog      2026-01-07 22:27:51.000000000 +0100
+++ gnu-efi-4.0.0/debian/changelog      2026-01-15 09:46:59.000000000 +0100
@@ -1,3 +1,10 @@
+gnu-efi (4.0.0-1.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Install to a multiarch LIBDIR. (Closes: #-1)
+
+ -- Helmut Grohne <[email protected]>  Thu, 15 Jan 2026 09:46:59 +0100
+
 gnu-efi (4.0.0-1) unstable; urgency=medium
 
   * Team upload
diff -Nru gnu-efi-4.0.0/debian/rules gnu-efi-4.0.0/debian/rules
--- gnu-efi-4.0.0/debian/rules  2026-01-07 21:35:08.000000000 +0100
+++ gnu-efi-4.0.0/debian/rules  2026-01-15 09:46:59.000000000 +0100
@@ -43,7 +43,7 @@
 
 override_dh_auto_build:
        LDFLAGS="${LDFLAGS//-Wl/}" && LDFLAGS="${LDFLAGS//,/ }" && \
-       $(MAKE) ARCH=$(HOST_ARCH) PREFIX=/usr
+       $(MAKE) ARCH=$(HOST_ARCH) PREFIX=/usr 
LIBDIR=/usr/lib/$(DEB_HOST_MULTIARCH)
 ifneq (,$(COMPAT_ARCH))
                LDFLAGS="${LDFLAGS//-Wl/}" && LDFLAGS="${LDFLAGS//,/ }" && \
                $(MAKE) ARCH=$(COMPAT_ARCH) HOSTARCH=$(BUILD_ARCH) PREFIX=/usr
@@ -51,7 +51,7 @@
 
 # Fixme: This somehow rebuilds some parts
 override_dh_auto_install:
-       $(MAKE) install ARCH=$(HOST_ARCH) INSTALLROOT=$(CURDIR)/debian/gnu-efi 
PREFIX=/usr LIBDIR=/usr/lib
+       $(MAKE) install ARCH=$(HOST_ARCH) INSTALLROOT=$(CURDIR)/debian/gnu-efi 
PREFIX=/usr LIBDIR=/usr/lib/$(DEB_HOST_MULTIARCH)
 ifneq (,$(COMPAT_ARCH))
        $(MAKE) install ARCH=$(COMPAT_ARCH) HOSTARCH=$(BUILD_ARCH) 
INSTALLROOT=$(CURDIR)/debian/gnu-efi PREFIX=/usr LIBDIR=/usr/lib$(COMPAT_APPEND)
 endif

Reply via email to