diff options
Diffstat (limited to 'libre/syslinux/syslinux-6.00-efi-fix-libcom32.patch')
-rw-r--r-- | libre/syslinux/syslinux-6.00-efi-fix-libcom32.patch | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/libre/syslinux/syslinux-6.00-efi-fix-libcom32.patch b/libre/syslinux/syslinux-6.00-efi-fix-libcom32.patch new file mode 100644 index 000000000..7460cd195 --- /dev/null +++ b/libre/syslinux/syslinux-6.00-efi-fix-libcom32.patch @@ -0,0 +1,45 @@ +From 013ef7679a573b3b3454f914f3a7f865991db9f2 Mon Sep 17 00:00:00 2001 +From: Matt Fleming <matt.fleming@intel.com> +Date: Fri, 21 Jun 2013 07:13:16 +0000 +Subject: efi: Export __bcopyxx_len + +We need to provide a __bcopyxx_len symbol for EFI because it's +referenced in generic code in libcom32.c32. Without this change, +libcom32.c32 will fail to load under EFI. + +Signed-off-by: Matt Fleming <matt.fleming@intel.com> +--- +diff --git a/core/include/core.h b/core/include/core.h +index 5736d39..127ac65 100644 +--- a/core/include/core.h ++++ b/core/include/core.h +@@ -26,6 +26,7 @@ extern char cmd_line[]; + extern char ConfigFile[]; + extern char syslinux_banner[]; + extern char copyright_str[]; ++extern unsigned int __bcopyxx_len; + + /* + * Mark symbols that are only used by BIOS as __weak until we can move +@@ -35,7 +36,6 @@ extern char copyright_str[]; + extern __weak uint16_t BIOSName; + extern __weak char KernelName[]; + extern __weak char StackBuf[]; +-extern __weak unsigned int __bcopyxx_len; + + extern uint8_t KbdMap[256]; + +diff --git a/efi/main.c b/efi/main.c +index 438e88c..51ff9f3 100644 +--- a/efi/main.c ++++ b/efi/main.c +@@ -153,6 +153,7 @@ void pxenv(void) + uint16_t BIOS_fbm = 1; + far_ptr_t InitStack; + far_ptr_t PXEEntry; ++__export unsigned int __bcopyxx_len = 0; + + void gpxe_unload(void) + { +-- +cgit v0.9.2 |