]> Git Repo - buildroot-mgba.git/commitdiff
package/swupdate: add upstream patch to fix build with uclibc
authorBen Hutchings <[email protected]>
Tue, 14 Jun 2022 16:15:09 +0000 (18:15 +0200)
committerThomas Petazzoni <[email protected]>
Fri, 22 Jul 2022 21:03:41 +0000 (23:03 +0200)
Fix the following build failure with uclibc:

core/bootloader.c: In function 'register_bootloader':
core/bootloader.c:28:15: warning: implicit declaration of function 'reallocarray' [-Wimplicit-function-declaration]
   28 |  entry *tmp = reallocarray(available, num_available + 1, sizeof(entry));
      |               ^~~~~~~~~~~~
core/bootloader.c:28:15: warning: initialization of 'entry *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
[...]
.../arm-buildroot-linux-uclibcgnueabi/bin/ld: core/built-in.o: in function `register_bootloader':
(.text.register_bootloader+0x2c): undefined reference to `reallocarray'

Fixes:

  http://autobuild.buildroot.net/results/46dc484759549162ec246e0bff2647995c307ab5/

Signed-off-by: Ben Hutchings <[email protected]>
Signed-off-by: Thomas Petazzoni <[email protected]>
package/swupdate/0001-swupdate-core-bootloader.c-fix-build-without-reallocarray.patch [new file with mode: 0644]

diff --git a/package/swupdate/0001-swupdate-core-bootloader.c-fix-build-without-reallocarray.patch b/package/swupdate/0001-swupdate-core-bootloader.c-fix-build-without-reallocarray.patch
new file mode 100644 (file)
index 0000000..d90ae79
--- /dev/null
@@ -0,0 +1,35 @@
+From f30c4771e93cad7e77d7f2add94327865d226553 Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <[email protected]>
+Date: Sun, 15 May 2022 14:53:35 +0200
+Subject: [PATCH] core/bootloader.c: fix build without reallocarray
+
+Use realloc instead of reallocarray to avoid the following build failure
+with uclibc raised since version 2022.05 and
+https://github.com/sbabic/swupdate/commit/b8897ed695e1cd954859142b14ec8546d2e7994a:
+
+microblaze-buildroot-linux-uclibc/bin/ld: core/built-in.o: in function `register_bootloader':
+(.text.register_bootloader+0x30): undefined reference to `reallocarray'
+
+Fixes:
+ - http://autobuild.buildroot.org/results/7208e8189b4a6f35aaa4ed7777ecdd37421a7c7f
+
+Signed-off-by: Fabrice Fontaine <[email protected]>
+Backported from: f30c4771e93cad7e77d7f2add94327865d226553
+Signed-off-by: Ben Hutchings <[email protected]>
+---
+ core/bootloader.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/core/bootloader.c b/core/bootloader.c
+index f34cb414..5694d43d 100644
+--- a/core/bootloader.c
++++ b/core/bootloader.c
+@@ -25,7 +25,7 @@ static unsigned int num_available = 0;
+ int register_bootloader(const char *name, bootloader *bl)
+ {
+-      entry *tmp = reallocarray(available, num_available + 1, sizeof(entry));
++      entry *tmp = realloc(available, (num_available + 1) * sizeof(entry));
+       if (!tmp) {
+               return -ENOMEM;
+       }
This page took 0.036945 seconds and 4 git commands to generate.