aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2020-08-13 21:16:10 -0700
committerKhem Raj <raj.khem@gmail.com>2020-08-13 22:37:48 -0700
commit8e53fff2e95158643128eb7d2e5e6551586702c7 (patch)
treec7f565adcc3f6e1441b717b1690efc64ef9a28c7
parentd23e9b96918c4c55d3c34f3ec78c74508e2f74b6 (diff)
downloadmeta-openembedded-contrib-8e53fff2e95158643128eb7d2e5e6551586702c7.tar.gz
meta-openembedded-contrib-8e53fff2e95158643128eb7d2e5e6551586702c7.tar.bz2
meta-openembedded-contrib-8e53fff2e95158643128eb7d2e5e6551586702c7.zip
makedumpfile: Fix build with -fno-common
Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r--meta-oe/recipes-kernel/makedumpfile/makedumpfile/0001-PATCH-Remove-duplicated-variable-definitions.patch104
-rw-r--r--meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.7.bb1
2 files changed, 105 insertions, 0 deletions
diff --git a/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0001-PATCH-Remove-duplicated-variable-definitions.patch b/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0001-PATCH-Remove-duplicated-variable-definitions.patch
new file mode 100644
index 0000000000..49777bcee9
--- /dev/null
+++ b/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0001-PATCH-Remove-duplicated-variable-definitions.patch
@@ -0,0 +1,104 @@
+From 399f2c9a3acd5bd913e50a4dde52dee6527b297e Mon Sep 17 00:00:00 2001
+From: Kairui Song <kasong@redhat.com>
+Date: Wed, 29 Jan 2020 13:37:13 +0800
+Subject: [PATCH] [PATCH] Remove duplicated variable definitions
+
+When building on Fedora 32 (with GCC 10), following error is observed:
+
+/usr/bin/ld: erase_info.o:/tmp/makedumpfile/makedumpfile.h:2010: multiple definition of
+ `crash_reserved_mem_nr'; elf_info.o:/tmp/makedumpfile/makedumpfile.h:2010: first defined here
+/usr/bin/ld: erase_info.o:/tmp/makedumpfile/makedumpfile.h:2009: multiple definition of
+ `crash_reserved_mem'; elf_info.o:/tmp/makedumpfile/makedumpfile.h:2009: first defined here
+/usr/bin/ld: erase_info.o:/tmp/makedumpfile/makedumpfile.h:1278: multiple definition of
+ `parallel_info_t'; elf_info.o:/tmp/makedumpfile/makedumpfile.h:1278: first defined here
+/usr/bin/ld: erase_info.o:/tmp/makedumpfile/makedumpfile.h:1265: multiple definition of
+ `splitting_info_t'; elf_info.o:/tmp/makedumpfile/makedumpfile.h:1265: first defined here
+...
+collect2: error: ld returned 1 exit status
+make: *** [Makefile:97: makedumpfile] Error 1
+
+These variables are wrongly defined multiple times. So remove the
+duplicated definitions.
+
+Upstream-Status: Backport [https://github.com/kraj/makedumpfile/commit/399f2c9a3acd5bd913e50a4dde52dee6527b297e]
+Signed-off-by: Kairui Song <kasong@redhat.com>
+Signed-off-by: Kazuhito Hagio <k-hagio-ab@nec.com>
+---
+ makedumpfile.c | 8 ++++----
+ makedumpfile.h | 8 ++++----
+ 2 files changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/makedumpfile.c b/makedumpfile.c
+index e290fbd..ae7336a 100644
+--- a/makedumpfile.c
++++ b/makedumpfile.c
+@@ -10954,7 +10954,7 @@ check_param_for_reassembling_dumpfile(int argc, char *argv[])
+ return FALSE;
+
+ if ((info->splitting_info
+- = malloc(sizeof(splitting_info_t) * info->num_dumpfile))
++ = malloc(sizeof(struct splitting_info) * info->num_dumpfile))
+ == NULL) {
+ MSG("Can't allocate memory for splitting_info.\n");
+ return FALSE;
+@@ -11042,7 +11042,7 @@ check_param_for_creating_dumpfile(int argc, char *argv[])
+ return FALSE;
+ }
+ if ((info->splitting_info
+- = malloc(sizeof(splitting_info_t) * info->num_dumpfile))
++ = malloc(sizeof(struct splitting_info) * info->num_dumpfile))
+ == NULL) {
+ MSG("Can't allocate memory for splitting_info.\n");
+ return FALSE;
+@@ -11077,13 +11077,13 @@ check_param_for_creating_dumpfile(int argc, char *argv[])
+
+ if (info->num_threads) {
+ if ((info->parallel_info =
+- malloc(sizeof(parallel_info_t) * info->num_threads))
++ malloc(sizeof(struct parallel_info) * info->num_threads))
+ == NULL) {
+ MSG("Can't allocate memory for parallel_info.\n");
+ return FALSE;
+ }
+
+- memset(info->parallel_info, 0, sizeof(parallel_info_t)
++ memset(info->parallel_info, 0, sizeof(struct parallel_info)
+ * info->num_threads);
+ }
+
+diff --git a/makedumpfile.h b/makedumpfile.h
+index 68d9691..7217407 100644
+--- a/makedumpfile.h
++++ b/makedumpfile.h
+@@ -1262,7 +1262,7 @@ struct splitting_info {
+ mdf_pfn_t end_pfn;
+ off_t offset_eraseinfo;
+ unsigned long size_eraseinfo;
+-} splitting_info_t;
++};
+
+ struct parallel_info {
+ int fd_memory;
+@@ -1275,7 +1275,7 @@ struct parallel_info {
+ #ifdef USELZO
+ lzo_bytep wrkmem;
+ #endif
+-} parallel_info_t;
++};
+
+ struct ppc64_vmemmap {
+ unsigned long phys;
+@@ -2006,8 +2006,8 @@ struct memory_range {
+ };
+
+ #define CRASH_RESERVED_MEM_NR 8
+-struct memory_range crash_reserved_mem[CRASH_RESERVED_MEM_NR];
+-int crash_reserved_mem_nr;
++extern struct memory_range crash_reserved_mem[CRASH_RESERVED_MEM_NR];
++extern int crash_reserved_mem_nr;
+
+ unsigned long read_vmcoreinfo_symbol(char *str_symbol);
+ int readmem(int type_addr, unsigned long long addr, void *bufptr, size_t size);
+--
+2.28.0
+
diff --git a/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.7.bb b/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.7.bb
index 8d1676a4c6..165e192cb1 100644
--- a/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.7.bb
+++ b/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.7.bb
@@ -24,6 +24,7 @@ SRC_URI = "\
${SOURCEFORGE_MIRROR}/makedumpfile/${BPN}-${PV}.tar.gz \
file://0001-makedumpfile-replace-hardcode-CFLAGS.patch \
file://0002-mem_section-Support-only-46-bit-for-MAX_PHYSMEM_BITS.patch \
+ file://0001-PATCH-Remove-duplicated-variable-definitions.patch \
"
SRC_URI[md5sum] = "808ef840ca49ca6bfde77c097cf429f5"
SRC_URI[sha256sum] = "e702fbdf62b4cd829a76e46f3e24eb3fc7501918b85ebdcd8baef4f53d6ee2c8"