Skip to content

gnu-efi-libs: update to 4.0.0.#54615

Closed
oreo639 wants to merge 1 commit intovoid-linux:masterfrom
oreo639:gnu-efi-libs
Closed

gnu-efi-libs: update to 4.0.0.#54615
oreo639 wants to merge 1 commit intovoid-linux:masterfrom
oreo639:gnu-efi-libs

Conversation

@oreo639
Copy link
Copy Markdown
Member

@oreo639 oreo639 commented Mar 7, 2025

Testing the changes

  • I tested the changes in this PR: briefly

@oreo639 oreo639 mentioned this pull request Mar 7, 2025
68 tasks
@oreo639
Copy link
Copy Markdown
Member Author

oreo639 commented Mar 17, 2025

Seems there was some api/abi changes in gnu-efi-libs that seems to break refind.

AsciiStrLen() was added, identical to the function in refind, which can simply be removed from refind.

Aside from that CompareGuid() was turned into a macro which becomes either CompareGuid_0 or CompareGuid_1 depending on the value of GNU_EFI_3_0_COMPAT, however refind declares a macro with the same name wrapping the CompareGuid_0() api to the CompareGuid_1() api.

Even after fixing those, it still fails to scan the partitions only detecting the other bootloaders in the boot partition.

The issue with gcc14 was that L"" strings were being passed into UTF-16 functions, whereas L"" is not garuenteed to be 16-bits, so that was fixed to u"" in 4.0.0, but it is a massive patch. (and causes incompatible-pointer-types error with gcc14)

Edit: seems like that was the second part of this: ncroxon/gnu-efi@edfda7c

@oreo639
Copy link
Copy Markdown
Member Author

oreo639 commented Mar 17, 2025

Closing for now, just going to apply the patch without removing -fshort-wchar from the makefile.

Most distros have chosen not to upgrade to 4.0.0 for now due to the API/ABI breaks: https://github.com/ncroxon/gnu-efi/blob/master/docs/README.ABI.md

Currently, the only package we have that supports 4.0.0 is fwupd-efi. (for future reference)

@oreo639 oreo639 closed this Mar 17, 2025
@oreo639 oreo639 deleted the gnu-efi-libs branch March 17, 2025 09:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant