diff options
author | Sam James <sam@gentoo.org> | 2022-10-28 20:44:21 +0100 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2022-10-28 20:50:07 +0100 |
commit | 839a63370d7565fd40cc66956ac86f412f607eee (patch) | |
tree | 787f099710eb4fe4ef667503fd3b69d0160a22e2 /sys-apps/file | |
parent | sys-apps/coreutils: drop 9.0-r2, 9.1 (diff) | |
download | gentoo-839a63370d7565fd40cc66956ac86f412f607eee.tar.gz gentoo-839a63370d7565fd40cc66956ac86f412f607eee.tar.bz2 gentoo-839a63370d7565fd40cc66956ac86f412f607eee.zip |
sys-apps/file: drop 5.42-r1
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'sys-apps/file')
-rw-r--r-- | sys-apps/file/Manifest | 2 | ||||
-rw-r--r-- | sys-apps/file/file-5.42-r1.ebuild | 162 | ||||
-rw-r--r-- | sys-apps/file/files/file-5.42-unicode-fixes.patch | 390 |
3 files changed, 0 insertions, 554 deletions
diff --git a/sys-apps/file/Manifest b/sys-apps/file/Manifest index 7ee7779ca582..ffc539bd9488 100644 --- a/sys-apps/file/Manifest +++ b/sys-apps/file/Manifest @@ -1,5 +1,3 @@ DIST file-5.41.tar.gz 1064097 BLAKE2B 56fe8a58d9497bb1bfe3ed6b3ce5df70dd27cc308eb0cfdac8e91ba81c733a96aa622c120ac59079986c6d84901c6f2d82fa24f698d481d7f77e6cfdd432d648 SHA512 bbf2d8e39450b31d0ba8d76d202790fea953775657f942f06e6dc9091798d4a395f7205e542388e4a25b6a4506d07f36c5c4da37cfce0734133e9203a3b00654 -DIST file-5.42.tar.gz 1105846 BLAKE2B c557facb066ae0599db832ddbbc3fed7db2e057faefe832cb4bed8f860b63456217bee39f0c82b17902c3b91426e522681216d2d3ed689501fa00d69a4a09832 SHA512 33c3c339a561c6cf787cc06a16444a971c62068b01827612c948207a9714107b617bed8148cd67e6280cb1c62ad4dfb1205fb8486ea9c042ce7e19b067d3bb05 -DIST file-5.42.tar.gz.asc 195 BLAKE2B 9b930bcd6b98878e60cd72d8d71b40201ebbf3ab1dda7d2b0e3228abdc0c1e21473a012b9799dcac8638ded1bdbe03865c5e41ed4086076a7df6bf6aadbfe29d SHA512 a7105c48f6c671638f5fb7f18f9b193d108456655b4c734208e00aca36fab54dd330ec2fdc3ff29fb78adbc16874af4fb0916c560e50228f82003a8cd258491a DIST file-5.43.tar.gz 1162786 BLAKE2B aaaf32c5054fb83e912af6656e5e67947f45576ec3711c7cba5531ed780e142a448580e0db41a828c8a3c5d2f1bf0c8ed49bc9688499caaae4a08baa16b3610c SHA512 9d02f4e7a69d90468d6bd35df5ec240ddee8c2408b7df3e73427d7f18736baf77db0638a1fe8283f4e6abd1d5ad653890ed3a5a0d48bb52d4023ca4070ecdf06 DIST file-5.43.tar.gz.asc 195 BLAKE2B d7f83b3e21d1390467989f8870e36daa48ebb8c5ac7ab8dc6d667a65d10561126d32cfc5ef3d81a130990b3e46bcba9b5e03f0a7dd169782351b02cebec2471f SHA512 c565958840f2f5c62821cd08d4149ec97c574232913ec00400473364e160250cfaced8c715e109c4c617359e33d2470f7ca6af1891cbdf994329e890f90c8be3 diff --git a/sys-apps/file/file-5.42-r1.ebuild b/sys-apps/file/file-5.42-r1.ebuild deleted file mode 100644 index bbde9949d397..000000000000 --- a/sys-apps/file/file-5.42-r1.ebuild +++ /dev/null @@ -1,162 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=setuptools -DISTUTILS_OPTIONAL=1 -PYTHON_COMPAT=( python3_{8..11} ) - -inherit distutils-r1 libtool toolchain-funcs multilib-minimal - -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://github.com/glensc/file.git" - inherit autotools git-r3 -else - VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/file.asc - inherit verify-sig - SRC_URI="ftp://ftp.astron.com/pub/file/${P}.tar.gz" - SRC_URI+=" verify-sig? ( ftp://ftp.astron.com/pub/file/${P}.tar.gz.asc )" - - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" - - BDEPEND="verify-sig? ( sec-keys/openpgp-keys-file )" -fi - -DESCRIPTION="Identify a file's format by scanning binary data for patterns" -HOMEPAGE="https://www.darwinsys.com/file/" - -LICENSE="BSD-2" -SLOT="0" -IUSE="bzip2 lzma python seccomp static-libs zlib" -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" - -DEPEND=" - bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] ) - lzma? ( app-arch/xz-utils[${MULTILIB_USEDEP}] ) - python? ( - ${PYTHON_DEPS} - dev-python/setuptools[${PYTHON_USEDEP}] - ) - zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )" -RDEPEND="${DEPEND} - python? ( !dev-python/python-magic ) - seccomp? ( sys-libs/libseccomp[${MULTILIB_USEDEP}] )" -BDEPEND+=" - python? ( - ${PYTHON_DEPS} - ${DISTUTILS_DEPS} - )" - -PATCHES=( - "${FILESDIR}/file-5.39-portage-sandbox.patch" #713710 #728978 - "${FILESDIR}/file-5.40-seccomp-fstatat64-musl.patch" #789336, not upstream yet - "${FILESDIR}/${P}-unicode-fixes.patch" #861089 -) - -src_prepare() { - default - - if [[ ${PV} == 9999 ]] ; then - eautoreconf - else - elibtoolize - fi - - # don't let python README kill main README, bug ##60043 - mv python/README.md python/README.python.md || die - # bug #662090 - sed 's@README.md@README.python.md@' -i python/setup.py || die -} - -multilib_src_configure() { - local myeconfargs=( - --enable-fsect-man5 - $(use_enable bzip2 bzlib) - $(use_enable lzma xzlib) - $(use_enable seccomp libseccomp) - $(use_enable static-libs static) - $(use_enable zlib) - ) - econf "${myeconfargs[@]}" -} - -build_src_configure() { - local myeconfargs=( - --disable-shared - --disable-libseccomp - --disable-bzlib - --disable-xzlib - --disable-zlib - ) - - econf_build "${myeconfargs[@]}" -} - -need_build_file() { - # when cross-compiling, we need to build up our own file - # because people often don't keep matching host/target - # file versions, bug #362941 - tc-is-cross-compiler && ! has_version -b "~${CATEGORY}/${P}" -} - -src_configure() { - local ECONF_SOURCE="${S}" - - if need_build_file ; then - mkdir -p "${WORKDIR}"/build || die - cd "${WORKDIR}"/build || die - build_src_configure - fi - - multilib-minimal_src_configure -} - -multilib_src_compile() { - if multilib_is_native_abi ; then - emake - else - # bug #586444 - emake -C src magic.h - emake -C src libmagic.la - fi -} - -src_compile() { - if need_build_file ; then - # bug #586444 - emake -C "${WORKDIR}"/build/src magic.h - emake -C "${WORKDIR}"/build/src file - local -x PATH="${WORKDIR}/build/src:${PATH}" - fi - - multilib-minimal_src_compile - - if use python ; then - cd python || die - distutils-r1_src_compile - fi -} - -multilib_src_install() { - if multilib_is_native_abi ; then - default - else - emake -C src install-{nodist_includeHEADERS,libLTLIBRARIES} DESTDIR="${D}" - fi -} - -multilib_src_install_all() { - dodoc ChangeLog MAINT # README - - # Required for `file -C` - insinto /usr/share/misc/magic - doins -r magic/Magdir/* - - if use python ; then - cd python || die - distutils-r1_src_install - fi - - find "${ED}" -type f -name "*.la" -delete || die -} diff --git a/sys-apps/file/files/file-5.42-unicode-fixes.patch b/sys-apps/file/files/file-5.42-unicode-fixes.patch deleted file mode 100644 index cc6ee7196b49..000000000000 --- a/sys-apps/file/files/file-5.42-unicode-fixes.patch +++ /dev/null @@ -1,390 +0,0 @@ -https://bugs.gentoo.org/861089 -https://github.com/file/file/commit/19bf47777d0002ee884467e45e6ace702e40a4c1 -https://github.com/file/file/commit/c80065fe6900be5e794941e29b32440e9969b1c3 -https://github.com/file/file/commit/7e59d34206d7c962e093d4239e5367a2cd8b7623 -https://github.com/file/file/commit/f042050f59bfc037677871c4d1037c33273f5213 -https://github.com/file/file/commit/d471022b2772071877895759f209f2c346757a4c -https://github.com/file/file/commit/441ac2b15508909e82ad467960df4ac0adf9644c - -From 19bf47777d0002ee884467e45e6ace702e40a4c1 Mon Sep 17 00:00:00 2001 -From: Christos Zoulas <christos@zoulas.com> -Date: Mon, 4 Jul 2022 17:00:51 +0000 -Subject: [PATCH] PR/358: Fix width for -f - (jpalus) - ---- a/src/file.c -+++ b/src/file.c -@@ -506,35 +506,47 @@ unwrap(struct magic_set *ms, const char *fn) - size_t llen = 0; - int wid = 0, cwid; - int e = 0; -+ size_t fi = 0, fimax = 100; -+ char **flist = malloc(sizeof(*flist) * fimax); - -- if (strcmp("-", fn) == 0) { -+ if (flist == NULL) -+out: file_err(EXIT_FAILURE, "Cannot allocate memory for file list"); -+ -+ if (strcmp("-", fn) == 0) - f = stdin; -- wid = 1; -- } else { -+ else { - if ((f = fopen(fn, "r")) == NULL) { - file_warn("Cannot open `%s'", fn); - return 1; - } -- -- while ((len = getline(&line, &llen, f)) > 0) { -- if (line[len - 1] == '\n') -- line[len - 1] = '\0'; -- cwid = file_mbswidth(ms, line); -- if (cwid > wid) -- wid = cwid; -- } -- -- rewind(f); - } - - while ((len = getline(&line, &llen, f)) > 0) { - if (line[len - 1] == '\n') - line[len - 1] = '\0'; -- e |= process(ms, line, wid); -+ if (fi >= fimax) { -+ fimax += 100; -+ char **nf = realloc(flist, fimax * sizeof(*flist)); -+ if (nf == NULL) -+ goto out; -+ } -+ flist[fi++] = line; -+ cwid = file_mbswidth(ms, line); -+ if (cwid > wid) -+ wid = cwid; -+ line = NULL; -+ llen = 0; -+ } -+ -+ fimax = fi; -+ for (fi = 0; fi < fimax; fi++) { -+ e |= process(ms, flist[fi], wid); -+ free(flist[fi]); - } -+ free(flist); - -- free(line); -- (void)fclose(f); -+ if (f != stdin) -+ (void)fclose(f); - return e; - } - - -From c80065fe6900be5e794941e29b32440e9969b1c3 Mon Sep 17 00:00:00 2001 -From: Christos Zoulas <christos@zoulas.com> -Date: Mon, 4 Jul 2022 19:44:35 +0000 -Subject: [PATCH] PR/362: ro-ee: fix wide char printing - ---- a/src/file.c -+++ b/src/file.c -@@ -60,6 +60,12 @@ FILE_RCSID("@(#)$File: file.c,v 1.196 2022/07/04 17:00:51 christos Exp $") - #ifdef HAVE_WCTYPE_H - #include <wctype.h> - #endif -+#if defined(HAVE_WCHAR_H) && defined(HAVE_MBRTOWC) && defined(HAVE_WCWIDTH) && \ -+ defined(HAVE_WCTYPE_H) -+#define FILE_WIDE_SUPPORT -+#else -+#include <ctype.h> -+#endif - - #if defined(HAVE_GETOPT_H) && defined(HAVE_STRUCT_OPTION) - # include <getopt.h> -@@ -550,6 +556,55 @@ out: file_err(EXIT_FAILURE, "Cannot allocate memory for file list"); - return e; - } - -+private void -+file_octal(unsigned char c) -+{ -+ putc('\\', stdout); -+ putc(((c >> 6) & 7) + '0', stdout); -+ putc(((c >> 3) & 7) + '0', stdout); -+ putc(((c >> 0) & 7) + '0', stdout); -+} -+ -+private void -+fname_print(const char *inname) -+{ -+ size_t n = strlen(inname); -+#ifdef FILE_WIDE_SUPPORT -+ mbstate_t state; -+ wchar_t nextchar; -+ size_t bytesconsumed; -+ -+ -+ (void)mbrlen(NULL, 0, &state); -+ while (n > 0) { -+ bytesconsumed = mbrtowc(&nextchar, inname, n, &state); -+ if (bytesconsumed == CAST(size_t, -1) || -+ bytesconsumed == CAST(size_t, -2)) { -+ nextchar = *inname; -+ bytesconsumed = 1; -+ } -+ inname += bytesconsumed; -+ n -= bytesconsumed; -+ if (iswprint(nextchar)) { -+ putwc(nextchar, stdout); -+ continue; -+ } -+ /* XXX: What if it is > 255? */ -+ file_octal(CAST(unsigned char, nextchar)); -+ } -+#else -+ size_t i; -+ for (i = 0; i < n; i++) { -+ unsigned char c = CAST(unsigned char, inname[i]); -+ if (isprint(c)) { -+ putc(c); -+ continue; -+ } -+ file_octal(c); -+ } -+#endif -+} -+ - /* - * Called for each input file on the command line (or in a list of files) - */ -@@ -559,15 +614,13 @@ process(struct magic_set *ms, const char *inname, int wid) - const char *type, c = nulsep > 1 ? '\0' : '\n'; - int std_in = strcmp(inname, "-") == 0; - int haderror = 0; -- size_t plen = 4 * wid + 1; -- char *pbuf, *pname; -- -- if ((pbuf = CAST(char *, malloc(plen))) == NULL) -- file_err(EXIT_FAILURE, "Can't allocate %zu bytes", plen); - - if (wid > 0 && !bflag) { -- pname = file_printable(ms, pbuf, plen, inname, wid); -- (void)printf("%s", std_in ? "/dev/stdin" : pname); -+ const char *pname = std_in ? "/dev/stdin" : inname; -+ if ((ms->flags & MAGIC_RAW) == 0) -+ fname_print(pname); -+ else -+ (void)printf("%s", pname); - if (nulsep) - (void)putc('\0', stdout); - if (nulsep < 2) { -@@ -586,7 +639,6 @@ process(struct magic_set *ms, const char *inname, int wid) - } - if (nobuffer) - haderror |= fflush(stdout) != 0; -- free(pbuf); - return haderror || type == NULL; - } - -@@ -594,35 +646,33 @@ protected size_t - file_mbswidth(struct magic_set *ms, const char *s) - { - size_t width = 0; --#if defined(HAVE_WCHAR_H) && defined(HAVE_MBRTOWC) && defined(HAVE_WCWIDTH) && \ -- defined(HAVE_WCTYPE_H) -- size_t bytesconsumed, old_n, n; -+#ifdef FILE_WIDE_SUPPORT -+ size_t bytesconsumed, n; - mbstate_t state; - wchar_t nextchar; -- (void)memset(&state, 0, sizeof(mbstate_t)); -- old_n = n = strlen(s); -+ -+ (void)mbrlen(NULL, 0, &state); -+ n = strlen(s); - - while (n > 0) { - bytesconsumed = mbrtowc(&nextchar, s, n, &state); - if (bytesconsumed == CAST(size_t, -1) || - bytesconsumed == CAST(size_t, -2)) { -- /* Something went wrong, return something reasonable */ -- return old_n; -+ nextchar = *s; -+ bytesconsumed = 1; - } - width += ((ms->flags & MAGIC_RAW) != 0 - || iswprint(nextchar)) ? wcwidth(nextchar) : 4; - - s += bytesconsumed, n -= bytesconsumed; - } -- return width; - #else - while (*s) { - width += (ms->flags & MAGIC_RAW) != 0 - || isprint(CAST(unsigned char, *s)) ? 1 : 4; - } -- -- return strlen(s); - #endif -+ return width; - } - - private void ---- a/src/file.h -+++ b/src/file.h -@@ -575,7 +575,7 @@ protected size_t file_pstring_length_size(struct magic_set *, - const struct magic *); - protected size_t file_pstring_get_length(struct magic_set *, - const struct magic *, const char *); --public char * file_printable(struct magic_set *, char *, size_t, -+protected char * file_printable(struct magic_set *, char *, size_t, - const char *, size_t); - #ifdef __EMX__ - protected int file_os2_apptype(struct magic_set *, const char *, const void *, ---- a/src/funcs.c -+++ b/src/funcs.c -@@ -763,7 +763,7 @@ file_pop_buffer(struct magic_set *ms, file_pushbuf_t *pb) - /* - * convert string to ascii printable format. - */ --public char * -+protected char * - file_printable(struct magic_set *ms, char *buf, size_t bufsiz, - const char *str, size_t slen) - { - -From 7e59d34206d7c962e093d4239e5367a2cd8b7623 Mon Sep 17 00:00:00 2001 -From: Christos Zoulas <christos@zoulas.com> -Date: Mon, 4 Jul 2022 20:16:29 +0000 -Subject: [PATCH] Handle invalid characters as octal (idea from PR/363 by - dimich) - ---- a/src/file.c -+++ b/src/file.c -@@ -580,8 +580,11 @@ fname_print(const char *inname) - bytesconsumed = mbrtowc(&nextchar, inname, n, &state); - if (bytesconsumed == CAST(size_t, -1) || - bytesconsumed == CAST(size_t, -2)) { -- nextchar = *inname; -- bytesconsumed = 1; -+ nextchar = *inname++; -+ n--; -+ (void)mbrlen(NULL, 0, &state); -+ file_octal(CAST(unsigned char, nextchar)); -+ continue; - } - inname += bytesconsumed; - n -= bytesconsumed; -@@ -660,9 +663,12 @@ file_mbswidth(struct magic_set *ms, const char *s) - bytesconsumed == CAST(size_t, -2)) { - nextchar = *s; - bytesconsumed = 1; -+ (void)mbrlen(NULL, 0, &state); -+ width += 4; -+ } else { -+ width += ((ms->flags & MAGIC_RAW) != 0 -+ || iswprint(nextchar)) ? wcwidth(nextchar) : 4; - } -- width += ((ms->flags & MAGIC_RAW) != 0 -- || iswprint(nextchar)) ? wcwidth(nextchar) : 4; - - s += bytesconsumed, n -= bytesconsumed; - } - - -From f042050f59bfc037677871c4d1037c33273f5213 Mon Sep 17 00:00:00 2001 -From: Christos Zoulas <christos@zoulas.com> -Date: Mon, 4 Jul 2022 22:30:51 +0000 -Subject: [PATCH] mbrlen(NULL, is not portable; revert to using memset to - initialize the state. - ---- a/src/file.c -+++ b/src/file.c -@@ -575,14 +575,14 @@ fname_print(const char *inname) - size_t bytesconsumed; - - -- (void)mbrlen(NULL, 0, &state); -+ (void)memset(&state, 0, sizeof(state)); - while (n > 0) { - bytesconsumed = mbrtowc(&nextchar, inname, n, &state); - if (bytesconsumed == CAST(size_t, -1) || - bytesconsumed == CAST(size_t, -2)) { - nextchar = *inname++; - n--; -- (void)mbrlen(NULL, 0, &state); -+ (void)memset(&state, 0, sizeof(state)); - file_octal(CAST(unsigned char, nextchar)); - continue; - } -@@ -654,7 +654,7 @@ file_mbswidth(struct magic_set *ms, const char *s) - mbstate_t state; - wchar_t nextchar; - -- (void)mbrlen(NULL, 0, &state); -+ (void)memset(&state, 0, sizeof(state)); - n = strlen(s); - - while (n > 0) { -@@ -663,7 +663,7 @@ file_mbswidth(struct magic_set *ms, const char *s) - bytesconsumed == CAST(size_t, -2)) { - nextchar = *s; - bytesconsumed = 1; -- (void)mbrlen(NULL, 0, &state); -+ (void)memset(&state, 0, sizeof(state)); - width += 4; - } else { - width += ((ms->flags & MAGIC_RAW) != 0 - - -From d471022b2772071877895759f209f2c346757a4c Mon Sep 17 00:00:00 2001 -From: Christos Zoulas <christos@zoulas.com> -Date: Tue, 5 Jul 2022 19:53:42 +0000 -Subject: [PATCH] Use printf("%lc") instead of putwc(). Somehow mixing wide and - narrow stdio does not work on Linux? - ---- a/src/file.c -+++ b/src/file.c -@@ -589,7 +589,7 @@ fname_print(const char *inname) - inname += bytesconsumed; - n -= bytesconsumed; - if (iswprint(nextchar)) { -- putwc(nextchar, stdout); -+ printf("%lc", nextchar); - continue; - } - /* XXX: What if it is > 255? */ - -From 441ac2b15508909e82ad467960df4ac0adf9644c Mon Sep 17 00:00:00 2001 -From: Christos Zoulas <christos@zoulas.com> -Date: Tue, 5 Jul 2022 20:05:23 +0000 -Subject: [PATCH] wcwidth is not supposed to return -1 if the character is - printable, but it does for 0xff... Prevent it from decreasing the width. - ---- a/src/file.c -+++ b/src/file.c -@@ -666,8 +666,9 @@ file_mbswidth(struct magic_set *ms, const char *s) - (void)memset(&state, 0, sizeof(state)); - width += 4; - } else { -+ int w = wcwidth(nextchar); - width += ((ms->flags & MAGIC_RAW) != 0 -- || iswprint(nextchar)) ? wcwidth(nextchar) : 4; -+ || iswprint(nextchar)) ? (w > 0 ? w : 1) : 4; - } - - s += bytesconsumed, n -= bytesconsumed; - -From be1ac8c0aa6d21921012f62582f51a9e546e4972 Mon Sep 17 00:00:00 2001 -From: Christos Zoulas <christos@zoulas.com> -Date: Tue, 26 Jul 2022 15:10:05 +0000 -Subject: [PATCH] Fix bug with large flist (Florian Weimer) - ---- a/src/file.c -+++ b/src/file.c -@@ -535,6 +535,7 @@ out: file_err(EXIT_FAILURE, "Cannot allocate memory for file list"); - char **nf = realloc(flist, fimax * sizeof(*flist)); - if (nf == NULL) - goto out; -+ flist = nf; - } - flist[fi++] = line; - cwid = file_mbswidth(ms, line); - |