diff options
Diffstat (limited to 'meta/recipes-devtools/debugedit/files')
-rw-r--r-- | meta/recipes-devtools/debugedit/files/0002-sepdebugcrcfix.c-do-not-use-64bit-variants.patch | 56 | ||||
-rw-r--r-- | meta/recipes-devtools/debugedit/files/0003-Makefile.am-do-not-update-manual.patch | 65 |
2 files changed, 121 insertions, 0 deletions
diff --git a/meta/recipes-devtools/debugedit/files/0002-sepdebugcrcfix.c-do-not-use-64bit-variants.patch b/meta/recipes-devtools/debugedit/files/0002-sepdebugcrcfix.c-do-not-use-64bit-variants.patch new file mode 100644 index 0000000000..4463bd2324 --- /dev/null +++ b/meta/recipes-devtools/debugedit/files/0002-sepdebugcrcfix.c-do-not-use-64bit-variants.patch @@ -0,0 +1,56 @@ +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 + diff --git a/meta/recipes-devtools/debugedit/files/0003-Makefile.am-do-not-update-manual.patch b/meta/recipes-devtools/debugedit/files/0003-Makefile.am-do-not-update-manual.patch new file mode 100644 index 0000000000..de467f5365 --- /dev/null +++ b/meta/recipes-devtools/debugedit/files/0003-Makefile.am-do-not-update-manual.patch @@ -0,0 +1,65 @@ +From 4f0d7d2f4900ce8555e09854dc681278b7a3d9a9 Mon Sep 17 00:00:00 2001 +From: Chen Qi <Qi.Chen@windriver.com> +Date: Thu, 23 Mar 2023 13:09:23 +0800 +Subject: [PATCH 3/3] Makefile.am: do not update manual + +The tarball ships these manuals, no need to re-generate them. +We have local patches for debugedit.c and sepdebugcrcfix.c, +this will triger re-generation of the manuals, which causes +error of missing help2man. + +This is an OE specific patch. If we don't have local patches +patching debugedit.c and sepdebugcrcfix.c, this patch is also +not needed. + +Upstream-Status: Inappropriate [OE Specific] + +Signed-off-by: Chen Qi <Qi.Chen@windriver.com> +--- + Makefile.am | 30 ------------------------------ + 1 file changed, 30 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index 98b2f20..f91deea 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -52,36 +52,6 @@ sepdebugcrcfix_LDADD = @LIBELF_LIBS@ + # Manual pages are generated for dist + dist_man_MANS = debugedit.1 sepdebugcrcfix.1 find-debuginfo.1 + +-# The 'case' ensures the man pages are only generated if the corresponding +-# source script (the first prerequisite) or configure.ac (for the version) +-# has been changed. The executable prerequisite is solely meant to force +-# these docs to be made only after the executable has been compiled. +-# This makes sure help2man is not normally necessary (since the generated +-# man pages are distributed). +-debugedit.1: tools/debugedit.c configure.ac debugedit$(EXEEXT) +- @case '$?' in \ +- *$<* | *configure.ac* ) $(HELP2MAN) -N --output=$@ \ +- --name='debug source path manipulation tool' \ +- ./debugedit$(EXEEXT) ;; \ +- * ) : ;; \ +- esac +- +-sepdebugcrcfix.1: tools/sepdebugcrcfix.c configure.ac sepdebugcrcfix$(EXEEXT) +- @case '$?' in \ +- *$<* | *configure.ac* ) $(HELP2MAN) -N --output=$@ \ +- --name='fixes CRC for separate .debug files' \ +- ./sepdebugcrcfix$(EXEEXT) ;;\ +- * ) : ;; \ +- esac +- +-find-debuginfo.1: $(top_srcdir)/scripts/find-debuginfo.in configure.ac find-debuginfo +- @case '$?' in \ +- *$<* | *configure.ac* ) $(HELP2MAN) -N --output=$@ \ +- --name='finds debuginfo and processes it' \ +- ./find-debuginfo ;;\ +- * ) : ;; \ +- esac +- + noinst_HEADERS= tools/ansidecl.h \ + tools/hashtab.h \ + tools/md5.h \ +-- +2.17.1 + |