kumquat-buildroot/package/elf2flt/0001-fix-alignment-for-new-style-ctors-when-using-riscv64.patch
Waldemar Brodkorb 95f301fe98 package/elf2flt: fix riscv64 noMMU build
Fixes:
https://gitlab.com/buildroot.org/buildroot/-/jobs/6655119961

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Romain Naour <romain.naour@smile.fr>
(cherry picked from commit 8d366dbf56)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-05-07 18:07:32 +02:00

35 lines
1.3 KiB
Diff

From eead8d5e9f3911243182311f16178c25c6ea03c4 Mon Sep 17 00:00:00 2001
From: Waldemar Brodkorb <wbx@openadk.org>
Date: Sat, 23 Mar 2024 07:23:45 +0100
Subject: [PATCH] fix alignment for new-style ctors when using riscv64
Recently uClibc-ng enabled UCLIBC_CTOR_DTOR for riscv64, so
that f.e. C++ applications are running fine. As a side effect
this breaks noMMU support. The problem is the alignment for
the ctors in elf2flt. This patch fixes it.
Tested with Qemu for ARM, M68k and Xtensa with no regressions.
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Upstream: https://github.com/uclinux-dev/elf2flt/commit/eead8d5e9f3911243182311f16178c25c6ea03c4
---
elf2flt.ld.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/elf2flt.ld.in b/elf2flt.ld.in
index a99c69e..230c382 100644
--- a/elf2flt.ld.in
+++ b/elf2flt.ld.in
@@ -139,7 +139,7 @@ R_RODAT: *(.gnu.linkonce.r*)
@SYMBOL_PREFIX@_ssro_size = @SYMBOL_PREFIX@_essro - @SYMBOL_PREFIX@_ssro;
PROVIDE(@SYMBOL_PREFIX@_SDA2_BASE_ = @SYMBOL_PREFIX@_ssro + (@SYMBOL_PREFIX@_ssro_size / 2));
- . = ALIGN(4) ;
+ . = ALIGN(8) ;
TOR: @SYMBOL_PREFIX@__CTOR_LIST__ = .;
TOR: LONG((@SYMBOL_PREFIX@__CTOR_END__ - @SYMBOL_PREFIX@__CTOR_LIST__) / 4 - 2)
SINGLE_LINK: /* gcc uses crtbegin.o to find the start of
--
2.30.2