Files
tqma6-yocto-mirror/sources/poky/meta/recipes-devtools/libdnf/libdnf/armarch.patch
Siggi (OpenClaw Agent) 16accb6b24 Complete Yocto mirror with license table for TQMa6UL (2038-compliance)
- 264 license table entries with exact download URLs (224/264 resolved)
- Complete sources/ directory with all BitBake recipes
- Build configuration: tqma6ul-multi-mba6ulx, spaetzle (musl)
- Full traceability for Softwarefreigabeantrag
- GCC 13.4.0, Linux 6.6.102, U-Boot 2023.04, musl 1.2.4
- License distribution: GPL-2.0 (24), MIT (23), GPL-2.0+ (18), BSD-3 (16)
2026-03-01 21:14:11 +00:00

51 lines
2.0 KiB
Diff

From aa0f8b65feec64420a9b7b61cfcc8bcce161e14b Mon Sep 17 00:00:00 2001
From: Richard Purdie <richard.purdie@linuxfoundation.org>
Date: Thu, 9 Nov 2023 10:29:31 +0000
Subject: [PATCH] libdnf: Fix arm arch mapping issues for qemuarmv5
We change the way rpm architectures work, we make the machine name the default machine
specific package architecture.
This arm mapping code can work or in the case of qemuarmv5, it doesn't as it creates
armv5hl which doesn't exist and causes errrors. We can simply remove it, we don't need it.
Upstream-Status: Inappropriate [Relies on OE rpm config]
---
libdnf/hy-util.cpp | 23 -----------------------
1 file changed, 23 deletions(-)
diff --git a/libdnf/hy-util.cpp b/libdnf/hy-util.cpp
index 9978c8e9..aa1369b6 100644
--- a/libdnf/hy-util.cpp
+++ b/libdnf/hy-util.cpp
@@ -117,29 +117,6 @@ hy_detect_arch(char **arch)
if (uname(&un) < 0)
return DNF_ERROR_FAILED;
- if (!strncmp(un.machine, "armv", 4)) {
- /* un.machine is armvXE, where X is version number and E is
- * endianness (b or l); we need to add modifiers such as
- * h (hardfloat), n (neon). Neon is a requirement of armv8 so
- * as far as rpm is concerned armv8l is the equivilent of armv7hnl
- * (or 7hnb) so we don't explicitly add 'n' for 8+ as it's expected. */
- char endian = un.machine[strlen(un.machine)-1];
- char *modifier = un.machine + 5;
- while(isdigit(*modifier)) /* keep armv7, armv8, armv9, armv10, armv100, ... */
- modifier++;
- if (getauxval(AT_HWCAP) & HWCAP_ARM_VFP)
- *modifier++ = 'h';
- if ((atoi(un.machine+4) == 7) && (getauxval(AT_HWCAP) & HWCAP_ARM_NEON))
- *modifier++ = 'n';
- *modifier++ = endian;
- *modifier = 0;
- }
-#ifdef __MIPSEL__
- if (!strcmp(un.machine, "mips"))
- strcpy(un.machine, "mipsel");
- else if (!strcmp(un.machine, "mips64"))
- strcpy(un.machine, "mips64el");
-#endif
*arch = g_strdup(un.machine);
return 0;
}