I've fixed this problem with commit 10f838:

https://sourceforge.net/p/refind/code/commit_browser

You should be able to cherry-pick that, although changes to NEWS.txt and
include/version.h might need to be ignored. Also, there are a number of
other changes that have been made, and some others that I need to make,
so I may be releasing a new version before too long. I might do that
this weekend, but it might take another week or two before I can get to
them.

On 10/19/21 8:09 PM, Tianon Gravi wrote:
> (s/grub-efi/gnu-efi/ -- brain fart)
> 
> Looks like 
> https://sourceforge.net/p/gnu-efi/code/ci/ce0bd62f5c420f0457c58c120497dc16d2e606dd/
> is the relevant gnu-efi commit which introduced the new typedef, in
> case that helps.
> 
> ♥,
> - Tianon
>   4096R / B42F 6819 007F 00F8 8E36  4FD4 036A 9C25 BF35 7DD4
> 
> On Tue, 19 Oct 2021 at 17:07, Tianon Gravi <tia...@debian.org> wrote:
>>
>> Hey Rod, this is an interesting one -- looking at the definitions of
>> the "EFI_DEVICE_PATH_UTILITIES_PROTOCOL" typedef in both refind's code
>> and grub-efi's, they appear to be compatible to me (which makes sense,
>> probably from the same original source?)
>>
>> Is this something you plan to resolve in upstream refind source, or
>> something we should patch around downstream in Debian?
>>
>> ♥,
>> - Tianon
>>   4096R / B42F 6819 007F 00F8 8E36  4FD4 036A 9C25 BF35 7DD4
>>
>> On Sun, 3 Oct 2021 at 04:15, Helmut Grohne <hel...@subdivi.de> wrote:
>>> Source: refind
>>> Version: 0.12.0-1
>>> Severity: serious
>>> Tags: ftbfs
>>>
>>> refind fails to build from source in unstable on amd64 and it also fails
>>> to cross build for arm64 for the same reason. A build ends as follows:
>>>
>>> | make[3]: Entering directory '/<<PKGBUILDDIR>>/EfiLib'
>>> | /usr/bin/gcc -Os -fno-strict-aliasing -fno-tree-loop-distribute-patterns 
>>> -fno-stack-protector -fshort-wchar -Wall -DEFIX64 -DEFI_FUNCTION_WRAPPER 
>>> -m64 -mno-red-zone  -fpic -I/usr/include/efi -I/usr/include/efi/x86_64 
>>> -I/usr/include/efi/protocol -I../include -I../refind -I../libeg -I../mok 
>>> -I. -I./../include \
>>> |       -D__MAKEWITH_GNUEFI -c gnuefi-helper.c -o gnuefi-helper.o
>>> | In file included from gnuefi-helper.c:19:
>>> | DevicePathUtilities.h:229:3: error: conflicting types for 
>>> ‘EFI_DEVICE_PATH_UTILITIES_PROTOCOL’
>>> |   229 | } EFI_DEVICE_PATH_UTILITIES_PROTOCOL;
>>> |       |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>> | In file included from /usr/include/efi/efi.h:61,
>>> |                  from gnuefi-helper.h:24,
>>> |                  from gnuefi-helper.c:18:
>>> | /usr/include/efi/efidevp.h:648:3: note: previous declaration of 
>>> ‘EFI_DEVICE_PATH_UTILITIES_PROTOCOL’ was here
>>> |   648 | } EFI_DEVICE_PATH_UTILITIES_PROTOCOL;
>>> |       |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>> | make[3]: *** [../Make.common:164: gnuefi-helper.o] Error 1
>>> | make[3]: Leaving directory '/<<PKGBUILDDIR>>/EfiLib'
>>> | make[2]: *** [Makefile:86: gnuefi] Error 2
>>> | make[2]: Leaving directory '/<<PKGBUILDDIR>>'
>>> | dh_auto_build: error: make -j1 gnuefi ARCH=x86_64 returned exit code 2
>>> | make[1]: *** [debian/rules:33: override_dh_auto_build] Error 25
>>> | make[1]: Leaving directory '/<<PKGBUILDDIR>>'
>>> | make: *** [debian/rules:26: build] Error 2
>>> | dpkg-buildpackage: error: debian/rules build subprocess returned exit 
>>> status 2
>>>
>>> Also seen by crossqa:
>>> http://crossqa.debian.net
>>>
>>> Reproduced natively on arm64 by reproducible builds:
>>> https://tests.reproducible-builds.org/debian/rbuild/unstable/arm64/refind_0.12.0-1.rbuild.log.gz
>>>
>>> Helmut
>>>


-- 
Rod Smith
rodsm...@rodsbooks.com
http://www.rodsbooks.com

Reply via email to