Files
tqma6-yocto-mirror/sources/poky/meta/recipes-devtools/debugedit/files/0002-sepdebugcrcfix.c-do-not-use-64bit-variants.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

57 lines
2.0 KiB
Diff

From 3e05bbc1f7909ab6f529e66f0d0f70fb1e60583a Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Thu, 23 Mar 2023 11:55:53 +0800
Subject: [PATCH 2/2] sepdebugcrcfix.c: do not use 64bit variants
configure.ac checks for largefile support via AC_SYS_LARGEFILE
already, therefore use off_t, open and lseek instead of 64bit
variants. Musl e.g. does not define them without _LARGEFILE64_SOURCE
and error is not seen on glibc because _GNU_SOURCE defines
_LARGEFILE64_SOURCE.
This patch is marked as inappropriate as debugedit obviously only
wants to support glibc or some glibc compatible libcs. We can see
this from the error() usage. And this patch is only for musl.
Upstream-Status: Inappropriate [OE Specific]
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
---
tools/sepdebugcrcfix.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/tools/sepdebugcrcfix.c b/tools/sepdebugcrcfix.c
index c4a9d56..882e5f5 100644
--- a/tools/sepdebugcrcfix.c
+++ b/tools/sepdebugcrcfix.c
@@ -144,7 +144,7 @@ crc32 (const char *fname, const char *base_fname, uint32_t *crcp)
error (0, errno, _("cannot open \"%s\""), debugname);
return false;
}
- off64_t size = lseek64 (fd, 0, SEEK_END);
+ off_t size = lseek (fd, 0, SEEK_END);
if (size == -1)
{
error (0, errno, _("cannot get size of \"%s\""), debugname);
@@ -289,7 +289,7 @@ process (Elf *elf, int fd, const char *fname)
return true;
}
updated_count++;
- off64_t seekto = (shdr->sh_offset + data->d_off
+ off_t seekto = (shdr->sh_offset + data->d_off
+ (crcp - (const uint8_t *) data->d_buf));
uint32_t crc_targetendian = (ehdr->e_ident[EI_DATA] == ELFDATA2LSB
? htole32 (crc) : htobe32 (crc));
@@ -361,7 +361,7 @@ main (int argc, char **argv)
error (0, errno, _("cannot chmod \"%s\" to make sure we can read and write"), fname);
bool failed = false;
- int fd = open64 (fname, O_RDWR);
+ int fd = open (fname, O_RDWR);
if (fd == -1)
{
error (0, errno, _("cannot open \"%s\""), fname);
--
2.17.1