aboutsummaryrefslogtreecommitdiffstats
path: root/main/xen/musl-hvmloader-fix-stdint.patch
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2014-08-25 11:01:05 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2014-08-25 11:03:34 +0000
commitbcf7b52774f1b0a3e405a207c3c4a5342b951f40 (patch)
tree2c3e2c1c4995fac9cb83d61e8dc755b19833aef5 /main/xen/musl-hvmloader-fix-stdint.patch
parente794f0ffd98383718cfeae36bbee7d473846890b (diff)
downloadaports-bcf7b52774f1b0a3e405a207c3c4a5342b951f40.tar.bz2
aports-bcf7b52774f1b0a3e405a207c3c4a5342b951f40.tar.xz
main/xen: fix hvmloader
hvmloader is 32 bit but pulled in 64bit stdint from musl headers. we solve this by providing our own stdint_local.h elf.h pulls in stdint.h too so we ship our own elf_local.h too ref #3308
Diffstat (limited to 'main/xen/musl-hvmloader-fix-stdint.patch')
-rw-r--r--main/xen/musl-hvmloader-fix-stdint.patch189
1 files changed, 189 insertions, 0 deletions
diff --git a/main/xen/musl-hvmloader-fix-stdint.patch b/main/xen/musl-hvmloader-fix-stdint.patch
new file mode 100644
index 0000000000..a343c17b6b
--- /dev/null
+++ b/main/xen/musl-hvmloader-fix-stdint.patch
@@ -0,0 +1,189 @@
+musl's stdint does not support gcc -m32 so we need to make sure that we
+don't use system's stdint.h. We ship a stdind_local.h and make sure that
+we use that instead
+
+https://bugs.alpinelinux.org/issues/3308
+
+diff --git a/tools/firmware/Rules.mk b/tools/firmware/Rules.mk
+index 26bbddc..efad58c 100644
+--- a/tools/firmware/Rules.mk
++++ b/tools/firmware/Rules.mk
+@@ -12,6 +12,7 @@ CFLAGS += -DNDEBUG
+ endif
+
+ CFLAGS += -Werror
++CFLAGS += -I$(XEN_ROOT)/tools/firmware
+
+ $(call cc-options-add,CFLAGS,CC,$(EMBEDDED_EXTRA_CFLAGS))
+
+diff --git a/tools/firmware/hvmloader/32bitbios_support.c b/tools/firmware/hvmloader/32bitbios_support.c
+index fe770a3..cdab677 100644
+--- a/tools/firmware/hvmloader/32bitbios_support.c
++++ b/tools/firmware/hvmloader/32bitbios_support.c
+@@ -21,8 +21,8 @@
+ * Place - Suite 330, Boston, MA 02111-1307 USA.
+ */
+
+-#include <inttypes.h>
+-#include <elf.h>
++#include <stdint_local.h>
++#include <elf_local.h>
+ #ifdef __sun__
+ #include <sys/machelf.h>
+ #endif
+diff --git a/tools/firmware/hvmloader/acpi/acpi2_0.h b/tools/firmware/hvmloader/acpi/acpi2_0.h
+index 7b22d80..413c930 100644
+--- a/tools/firmware/hvmloader/acpi/acpi2_0.h
++++ b/tools/firmware/hvmloader/acpi/acpi2_0.h
+@@ -18,7 +18,7 @@
+ #ifndef _ACPI_2_0_H_
+ #define _ACPI_2_0_H_
+
+-#include <stdint.h>
++#include <stdint_local.h>
+ #include <xen/xen.h>
+ #include <xen/hvm/ioreq.h>
+
+diff --git a/tools/firmware/hvmloader/config.h b/tools/firmware/hvmloader/config.h
+index 6641197..01e402c 100644
+--- a/tools/firmware/hvmloader/config.h
++++ b/tools/firmware/hvmloader/config.h
+@@ -1,7 +1,7 @@
+ #ifndef __HVMLOADER_CONFIG_H__
+ #define __HVMLOADER_CONFIG_H__
+
+-#include <stdint.h>
++#include <stdint_local.h>
+
+ enum virtual_vga { VGA_none, VGA_std, VGA_cirrus, VGA_pt };
+ extern enum virtual_vga virtual_vga;
+diff --git a/tools/firmware/hvmloader/hypercall.h b/tools/firmware/hvmloader/hypercall.h
+index 5368c30..c57bc86 100644
+--- a/tools/firmware/hvmloader/hypercall.h
++++ b/tools/firmware/hvmloader/hypercall.h
+@@ -31,7 +31,7 @@
+ #ifndef __HVMLOADER_HYPERCALL_H__
+ #define __HVMLOADER_HYPERCALL_H__
+
+-#include <stdint.h>
++#include <stdint_local.h>
+ #include <xen/xen.h>
+ #include "config.h"
+
+diff --git a/tools/firmware/hvmloader/mp_tables.c b/tools/firmware/hvmloader/mp_tables.c
+index fd636a0..b3b703e 100644
+--- a/tools/firmware/hvmloader/mp_tables.c
++++ b/tools/firmware/hvmloader/mp_tables.c
+@@ -28,7 +28,7 @@
+ * Place - Suite 330, Boston, MA 02111-1307 USA.
+ */
+
+-#include <stdint.h>
++#include <stdint_local.h>
+ #include "config.h"
+
+ /* number of non-processor MP table entries */
+diff --git a/tools/firmware/hvmloader/option_rom.h b/tools/firmware/hvmloader/option_rom.h
+index 0fefe08..66a93bc 100644
+--- a/tools/firmware/hvmloader/option_rom.h
++++ b/tools/firmware/hvmloader/option_rom.h
+@@ -1,7 +1,7 @@
+ #ifndef __HVMLOADER_OPTION_ROM_H__
+ #define __HVMLOADER_OPTION_ROM_H__
+
+-#include <stdint.h>
++#include <stdint_local.h>
+
+ struct option_rom_header {
+ uint8_t signature[2]; /* "\x55\xaa" */
+diff --git a/tools/firmware/hvmloader/pir_types.h b/tools/firmware/hvmloader/pir_types.h
+index 6e50822..6134b01 100644
+--- a/tools/firmware/hvmloader/pir_types.h
++++ b/tools/firmware/hvmloader/pir_types.h
+@@ -24,7 +24,7 @@
+ #ifndef PIR_TYPES_H
+ #define PIR_TYPES_H
+
+-#include <stdint.h>
++#include <stdint_local.h>
+
+ #define NR_PIR_SLOTS 6
+
+diff --git a/tools/firmware/hvmloader/smbios.c b/tools/firmware/hvmloader/smbios.c
+index 9f292cc..f909354 100644
+--- a/tools/firmware/hvmloader/smbios.c
++++ b/tools/firmware/hvmloader/smbios.c
+@@ -20,7 +20,7 @@
+ * Authors: Andrew D. Ball <aball@us.ibm.com>
+ */
+
+-#include <stdint.h>
++#include <stdint_local.h>
+ #include <xen/xen.h>
+ #include <xen/version.h>
+ #include "smbios_types.h"
+diff --git a/tools/firmware/hvmloader/smbios_types.h b/tools/firmware/hvmloader/smbios_types.h
+index ff36564..1b61d9a 100644
+--- a/tools/firmware/hvmloader/smbios_types.h
++++ b/tools/firmware/hvmloader/smbios_types.h
+@@ -26,7 +26,7 @@
+ #ifndef SMBIOS_TYPES_H
+ #define SMBIOS_TYPES_H
+
+-#include <stdint.h>
++#include <stdint_local.h>
+
+ /* SMBIOS entry point -- must be written to a 16-bit aligned address
+ between 0xf0000 and 0xfffff.
+diff --git a/tools/firmware/hvmloader/util.c b/tools/firmware/hvmloader/util.c
+index 80d822f..671d8cd 100644
+--- a/tools/firmware/hvmloader/util.c
++++ b/tools/firmware/hvmloader/util.c
+@@ -22,7 +22,7 @@
+ #include "config.h"
+ #include "hypercall.h"
+ #include "ctype.h"
+-#include <stdint.h>
++#include <stdint_local.h>
+ #include <xen/xen.h>
+ #include <xen/memory.h>
+ #include <xen/sched.h>
+diff --git a/tools/firmware/hvmloader/util.h b/tools/firmware/hvmloader/util.h
+index 9ccb905..77b416b 100644
+--- a/tools/firmware/hvmloader/util.h
++++ b/tools/firmware/hvmloader/util.h
+@@ -2,7 +2,7 @@
+ #define __HVMLOADER_UTIL_H__
+
+ #include <stdarg.h>
+-#include <stdint.h>
++#include <stdint_local.h>
+ #include <xen/xen.h>
+ #include <xen/hvm/hvm_info_table.h>
+
+diff --git a/tools/firmware/rombios/32bit/pmm.c b/tools/firmware/rombios/32bit/pmm.c
+index 4a279ca..b90b813 100644
+--- a/tools/firmware/rombios/32bit/pmm.c
++++ b/tools/firmware/rombios/32bit/pmm.c
+@@ -63,7 +63,7 @@
+ * }
+ */
+
+-#include <stdint.h>
++#include <stdint_local.h>
+ #include <stddef.h>
+ #include "config.h"
+ #include "e820.h"
+diff --git a/tools/firmware/rombios/32bit/util.c b/tools/firmware/rombios/32bit/util.c
+index a47bb71..777f742 100644
+--- a/tools/firmware/rombios/32bit/util.c
++++ b/tools/firmware/rombios/32bit/util.c
+@@ -18,7 +18,7 @@
+ * Place - Suite 330, Boston, MA 02111-1307 USA.
+ */
+ #include <stdarg.h>
+-#include <stdint.h>
++#include <stdint_local.h>
+ #include "rombios_compat.h"
+ #include "util.h"
+