From 7d68fa68cd9f2987bd85339f3391913a8b0e58c7 Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Tue, 24 Mar 2020 10:21:27 +0100 Subject: [PATCH] efi/main.c: include MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Building syslinux against gnu-efi 3.0.10 currently fails with: syslinux/efi/main.c:33:8: error: unknown type name ‘jmp_buf’ 33 | static jmp_buf load_error_buf; | ^~~~~~~ syslinux/efi/main.c: In function ‘local_boot’: syslinux/efi/main.c:189:5: warning: implicit declaration of function ‘longjmp’ [-Wimplicit-function-declaration] 189 | longjmp(&load_error_buf, 1); | ^~~~~~~ syslinux/efi/main.c: In function ‘build_gdt’: syslinux/efi/main.c:907:75: warning: taking address of packed member of ‘struct dt_desc’ may result in an unaligned pointer value [-Waddress-of-packed-member] 907 | status = emalloc(gdt.limit, __SIZEOF_POINTER__ , (EFI_PHYSICAL_ADDRESS *)&gdt.base); | ^~~~~~~~~ syslinux/efi/main.c: In function ‘efi_main’: syslinux/efi/main.c:1390:7: warning: implicit declaration of function ‘setjmp’ [-Wimplicit-function-declaration] 1390 | if (!setjmp(&load_error_buf)) | ^~~~~~ make[3]: *** [syslinux/mk/efi.mk:63: main.o] Error 1 This is due to gnu-efi commit 486ba3c3bdd147b7d98159b9e650be60bce0f027 ("Do not include efisetjmp.h on efi.h"), in which they state: Do not include efisetjmp.h on efi.h People than really want to use efisetjmp implementation can include the header on their own. Signed-off-by: leo So we act as specified, and include from efi/main.c. Signed-off-by: Thomas Petazzoni Upstream: https://www.syslinux.org/archives/2020-March/026621.html --- efi/main.c | 1 + 1 file changed, 1 insertion(+) diff --git a/efi/main.c b/efi/main.c index 6a748412..e924cfb1 100644 --- a/efi/main.c +++ b/efi/main.c @@ -12,6 +12,7 @@ #include #include "efi.h" +#include #include "fio.h" #include "version.h" #include "efi_pxe.h" -- 2.25.1