Đoàn Trần Công Danh 2020-07-02 20:48:22 +07:00
parent 156d4b9b96
commit e578d4606c
2 changed files with 69 additions and 4 deletions

View file

@ -0,0 +1,69 @@
From 2c9f26ed20a791a7df0182ba82e93abb52f5a615 Mon Sep 17 00:00:00 2001
From: Chris Packham <chris.packham@alliedtelesis.co.nz>
Date: Mon, 18 Nov 2019 12:52:15 +1300
Subject: kexec: build multiboot2 for i386
This addresses the following compilation issues when building for i386.
kexec/arch/i386/kexec-x86.c:39:22: error: 'multiboot2_x86_probe' undeclared here (not in a function); did you mean 'multiboot_x86_probe'?
{ "multiboot2-x86", multiboot2_x86_probe, multiboot2_x86_load,
^~~~~~~~~~~~~~~~~~~~
multiboot_x86_probe
kexec/arch/i386/kexec-x86.c:39:44: error: 'multiboot2_x86_load' undeclared here (not in a function); did you mean 'multiboot_x86_load'?
{ "multiboot2-x86", multiboot2_x86_probe, multiboot2_x86_load,
^~~~~~~~~~~~~~~~~~~
multiboot_x86_load
kexec/arch/i386/kexec-x86.c:40:4: error: 'multiboot2_x86_usage' undeclared here (not in a function); did you mean 'multiboot_x86_usage'?
multiboot2_x86_usage },
^~~~~~~~~~~~~~~~~~~~
multiboot_x86_usage
make: *** [Makefile:114: kexec/arch/i386/kexec-x86.o] Error 1
make: *** Waiting for unfinished jobs....
Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
Signed-off-by: Simon Horman <horms@verge.net.au>
---
https://git.kernel.org/pub/scm/utils/kernel/kexec/kexec-tools.git/patch/?id=2c9f26ed20a791a7df0182ba82e93abb52f5a615
kexec/arch/i386/Makefile | 2 +-
kexec/arch/i386/kexec-x86.h | 5 +++++
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git kexec/arch/i386/Makefile kexec/arch/i386/Makefile
index 105cefd..f486103 100644
--- kexec/arch/i386/Makefile
+++ kexec/arch/i386/Makefile
@@ -7,6 +7,7 @@ i386_KEXEC_SRCS += kexec/arch/i386/kexec-elf-x86.c
i386_KEXEC_SRCS += kexec/arch/i386/kexec-elf-rel-x86.c
i386_KEXEC_SRCS += kexec/arch/i386/kexec-bzImage.c
i386_KEXEC_SRCS += kexec/arch/i386/kexec-multiboot-x86.c
+i386_KEXEC_SRCS += kexec/arch/i386/kexec-mb2-x86.c
i386_KEXEC_SRCS += kexec/arch/i386/kexec-beoboot-x86.c
i386_KEXEC_SRCS += kexec/arch/i386/kexec-nbi.c
i386_KEXEC_SRCS += kexec/arch/i386/x86-linux-setup.c
@@ -14,7 +15,6 @@ i386_KEXEC_SRCS += kexec/arch/i386/crashdump-x86.c
dist += kexec/arch/i386/Makefile $(i386_KEXEC_SRCS) \
kexec/arch/i386/crashdump-x86.h \
- kexec/arch/i386/kexec-mb2-x86.c \
kexec/arch/i386/kexec-x86.h \
kexec/arch/i386/x86-linux-setup.h \
kexec/arch/i386/include/arch/options.h
diff --git kexec/arch/i386/kexec-x86.h kexec/arch/i386/kexec-x86.h
index 1b58c3b..0f941df 100644
--- kexec/arch/i386/kexec-x86.h
+++ kexec/arch/i386/kexec-x86.h
@@ -60,6 +60,11 @@ int multiboot_x86_load(int argc, char **argv, const char *buf, off_t len,
struct kexec_info *info);
void multiboot_x86_usage(void);
+int multiboot2_x86_load(int argc, char **argv, const char *buf, off_t len,
+ struct kexec_info *info);
+void multiboot2_x86_usage(void);
+int multiboot2_x86_probe(const char *buf, off_t buf_len);
+
int elf_x86_probe(const char *buf, off_t len);
int elf_x86_load(int argc, char **argv, const char *buf, off_t len,
struct kexec_info *info);
--
cgit 1.2.3-1.el7

View file

@ -14,10 +14,6 @@ distfiles="${KERNEL_SITE}/utils/kernel/kexec/${pkgname}-${version}.tar.xz"
checksum=dad8077f0315445d1f6335579fc4ade222facf82a67124974c7be5303ba4f8c8
skip_extraction="${pkgname}-${version}.tar.xz"
case "$XBPS_TARGET_MACHINE" in
i686*) broken="https://build.voidlinux.org/builders/i686_builder/builds/19200/steps/shell_3/logs/stdio" ;;
esac
case "$XBPS_TARGET_MACHINE" in
ppc-musl) nopie=yes;; # textrels not supported
esac