mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-08-08 00:20:38 -09:00
package/libcap: add patch to fix build on ARC, OpenRISC, Microblaze
Following the bump of libcap to version 2.76 in commit
e2eb2ee58b, the build started failing on
ARC, OpenRISC, Microblaze. The bug was reported upstream at
https://bugzilla.kernel.org/show_bug.cgi?id=219915 and was
subsequently fixed by upstream commit:
https://git.kernel.org/pub/scm/libs/libcap/libcap.git/commit/?id=7a2eee56607218d017af8d26c2c41dba83629708
Which we backport in this commit.
Fixes:
http://autobuild.buildroot.net/results/c99f461ac757d2934a353818a302a67ef3ad5cf5/ (ARC)
http://autobuild.buildroot.net/results/8cae72f02d25a48287320d9c991f41761487e353/ (Microblaze)
http://autobuild.buildroot.net/results/74e2c4d37c5b0ae2749c7d77ca7431bd0d510971/ (OpenRISC)
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
This commit is contained in:
committed by
Julien Olivain
parent
e3329a1e82
commit
2bea32478d
@@ -0,0 +1,56 @@
|
||||
From 7a2eee56607218d017af8d26c2c41dba83629708 Mon Sep 17 00:00:00 2001
|
||||
From: "Andrew G. Morgan" <morgan@kernel.org>
|
||||
Date: Thu, 17 Apr 2025 20:20:09 -0700
|
||||
Subject: [PATCH] First attempt at PSX support for microblaze, arc and
|
||||
openrisc.
|
||||
|
||||
I found some confusing macrology for openrisc. I'm optimistic that
|
||||
this is recognized with the __or1k__ gcc macro.
|
||||
|
||||
See for details:
|
||||
|
||||
https://bugzilla.kernel.org/show_bug.cgi?id=219915
|
||||
|
||||
Signed-off-by: Andrew G. Morgan <morgan@kernel.org>
|
||||
Upstream: https://git.kernel.org/pub/scm/libs/libcap/libcap.git/commit/?id=7a2eee56607218d017af8d26c2c41dba83629708
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
psx/psx_calls.c | 8 ++++++--
|
||||
1 file changed, 6 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/psx/psx_calls.c b/psx/psx_calls.c
|
||||
index 9662fbd..8195964 100644
|
||||
--- a/psx/psx_calls.c
|
||||
+++ b/psx/psx_calls.c
|
||||
@@ -48,7 +48,8 @@
|
||||
|| defined(__mips__) || defined(__loongarch__) \
|
||||
|| defined(__powerpc__) || defined(__s390__) || defined(__riscv) \
|
||||
|| defined(__alpha__) || defined(__hppa__) || defined(__sh__) \
|
||||
- || defined(__m68k__) || defined(__sparc__)
|
||||
+ || defined(__m68k__) || defined(__sparc__) || defined(__arc__) \
|
||||
+ || defined(__microblaze__) || defined(__or1k__)
|
||||
|
||||
#undef _NSIG
|
||||
#undef _NSIG_BPW
|
||||
@@ -69,7 +70,8 @@
|
||||
|
||||
#if defined(__x86_64__) || defined(__i386__) \
|
||||
|| defined(__arm__) \
|
||||
- || defined(__powerpc__)
|
||||
+ || defined(__powerpc__) \
|
||||
+ || defined(__arc__)
|
||||
/* field used */
|
||||
#define SA_RESTORER 0x04000000
|
||||
#endif /* architectures that use SA_RESTORER */
|
||||
@@ -201,6 +203,8 @@ static void psx_posix_syscall_actor(int signum, siginfo_t *info, void *ignore) {
|
||||
__asm__ __volatile__("\npsx_restorer:\n\tmov r7,#173\n\tswi 0\n");
|
||||
#elif defined(__powerpc__)
|
||||
__asm__ __volatile__("\npsx_restorer:\n\tli 0, 172\n\tsc\n");
|
||||
+#elif defined(__arc__)
|
||||
+ __asm__ __volatile__("\npsx_restorer:\n\tmov r8, 139\n\ttrap_s 0\n");
|
||||
#else
|
||||
#error "unsupported architecture - https://bugzilla.kernel.org/show_bug.cgi?id=219687"
|
||||
#endif /* supported architectures */
|
||||
--
|
||||
2.49.0
|
||||
|
||||
Reference in New Issue
Block a user