From cae5fb3e5cf2d28dd8b4d457d9e921a2877febf7 Mon Sep 17 00:00:00 2001 From: K900 Date: Tue, 11 Jun 2024 07:58:50 +0300 Subject: [PATCH 1/2] syslinux: pick proposed patch to fix build on gnu-efi >= 3.0.17 --- pkgs/os-specific/linux/syslinux/default.nix | 2 ++ pkgs/os-specific/linux/syslinux/define-wchar_t.patch | 11 +++++++++++ 2 files changed, 13 insertions(+) create mode 100644 pkgs/os-specific/linux/syslinux/define-wchar_t.patch diff --git a/pkgs/os-specific/linux/syslinux/default.nix b/pkgs/os-specific/linux/syslinux/default.nix index b976a3be83e5..6023c6e82ff8 100644 --- a/pkgs/os-specific/linux/syslinux/default.nix +++ b/pkgs/os-specific/linux/syslinux/default.nix @@ -69,6 +69,8 @@ stdenv.mkDerivation { "sha256-dVzXBi/oSV9vYgU85mRFHBKuZdup+1x1BipJX74ED7E=") # Fixes build with "modern" gnu-efi ./import-efisetjmp.patch + # Upstream patch: https://www.syslinux.org/archives/2024-February/026903.html + ./define-wchar_t.patch ]; postPatch = '' diff --git a/pkgs/os-specific/linux/syslinux/define-wchar_t.patch b/pkgs/os-specific/linux/syslinux/define-wchar_t.patch new file mode 100644 index 000000000000..92baf101fb41 --- /dev/null +++ b/pkgs/os-specific/linux/syslinux/define-wchar_t.patch @@ -0,0 +1,11 @@ +diff --git a/com32/include/stddef.h b/com32/include/stddef.h +index f52d62f3..437b11f2 100644 +--- a/com32/include/stddef.h ++++ b/com32/include/stddef.h +@@ -29,4 +29,6 @@ + */ + #define container_of(p, c, m) ((c *)((char *)(p) - offsetof(c,m))) + ++typedef short wchar_t; ++ + #endif /* _STDDEF_H */ From a1672c9877a3c506068be0e396437f5fc075a86e Mon Sep 17 00:00:00 2001 From: K900 Date: Tue, 11 Jun 2024 08:02:18 +0300 Subject: [PATCH 2/2] gnu-efi: add primary consumers to passthru.tests --- pkgs/development/libraries/gnu-efi/default.nix | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/pkgs/development/libraries/gnu-efi/default.nix b/pkgs/development/libraries/gnu-efi/default.nix index fe078db1206b..31b6f7c7d228 100644 --- a/pkgs/development/libraries/gnu-efi/default.nix +++ b/pkgs/development/libraries/gnu-efi/default.nix @@ -1,5 +1,5 @@ { lib, stdenv, buildPackages, fetchFromGitHub, pciutils -, gitUpdater }: +, gitUpdater, fwupd-efi, ipxe, refind, syslinux }: stdenv.mkDerivation rec { pname = "gnu-efi"; @@ -27,9 +27,14 @@ stdenv.mkDerivation rec { --replace "-Werror" "" ''; - passthru.updateScript = gitUpdater { - # No nicer place to find latest release. - url = "https://git.code.sf.net/p/gnu-efi/code"; + passthru = { + updateScript = gitUpdater { + # No nicer place to find latest release. + url = "https://git.code.sf.net/p/gnu-efi/code"; + }; + tests = { + inherit fwupd-efi ipxe refind syslinux; + }; }; meta = with lib; {