0015-efi-main.c-include-efisetjmp.h.patch 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. From 26979f738518404b1d3dc9ecdcf4fa5811412c49 Mon Sep 17 00:00:00 2001
  2. From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
  3. Date: Tue, 24 Mar 2020 10:21:27 +0100
  4. Subject: [PATCH] efi/main.c: include <efisetjmp.h>
  5. MIME-Version: 1.0
  6. Content-Type: text/plain; charset=UTF-8
  7. Content-Transfer-Encoding: 8bit
  8. Building syslinux against gnu-efi 3.0.10 currently fails with:
  9. syslinux/efi/main.c:33:8: error: unknown type name ‘jmp_buf’
  10. 33 | static jmp_buf load_error_buf;
  11. | ^~~~~~~
  12. syslinux/efi/main.c: In function ‘local_boot’:
  13. syslinux/efi/main.c:189:5: warning: implicit declaration of function ‘longjmp’ [-Wimplicit-function-declaration]
  14. 189 | longjmp(&load_error_buf, 1);
  15. | ^~~~~~~
  16. syslinux/efi/main.c: In function ‘build_gdt’:
  17. 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]
  18. 907 | status = emalloc(gdt.limit, __SIZEOF_POINTER__ , (EFI_PHYSICAL_ADDRESS *)&gdt.base);
  19. | ^~~~~~~~~
  20. syslinux/efi/main.c: In function ‘efi_main’:
  21. syslinux/efi/main.c:1390:7: warning: implicit declaration of function ‘setjmp’ [-Wimplicit-function-declaration]
  22. 1390 | if (!setjmp(&load_error_buf))
  23. | ^~~~~~
  24. make[3]: *** [syslinux/mk/efi.mk:63: main.o] Error 1
  25. This is due to gnu-efi commit 486ba3c3bdd147b7d98159b9e650be60bce0f027
  26. ("Do not include efisetjmp.h on efi.h"), in which they state:
  27. Do not include efisetjmp.h on efi.h
  28. People than really want to use efisetjmp implementation can include
  29. the header on their own.
  30. Signed-off-by: leo <leo.sartre@geebol.fr>
  31. So we act as specified, and include <efisetjmp.h> from efi/main.c.
  32. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
  33. [Dario: make the patch to be applied with fuzz factor 0]
  34. Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
  35. Upstream: https://www.syslinux.org/archives/2020-March/026621.html
  36. ---
  37. efi/main.c | 1 +
  38. 1 file changed, 1 insertion(+)
  39. diff --git a/efi/main.c b/efi/main.c
  40. index 71d31a5c1f13..7dc7bca7aeba 100644
  41. --- a/efi/main.c
  42. +++ b/efi/main.c
  43. @@ -12,6 +12,7 @@
  44. #include <sys/ansi.h>
  45. #include "efi.h"
  46. +#include <efisetjmp.h>
  47. #include "fio.h"
  48. #include "version.h"
  49. --
  50. 2.43.0