findutils: upgraded package to upstream

Upgraded sys-apps/findutils to version 4.7.0 on amd64, arm

BUG=chromium:1090124
TEST="ran build_packages, build_image, cros flash, verified correct version and
tested basic functionality on hatch device."

Change-Id: I02a725b1bf34e2a9309d4d41ca5690a692f7181a
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/overlays/portage-stable/+/2225640
Tested-by: Efi Mavroudi <emavroudi@google.com>
Commit-Queue: Efi Mavroudi <emavroudi@google.com>
Reviewed-by: Benjamin Gordon <bmgordon@chromium.org>
diff --git a/metadata/md5-cache/sys-apps/findutils-4.6.0-r1 b/metadata/md5-cache/sys-apps/findutils-4.7.0
similarity index 73%
rename from metadata/md5-cache/sys-apps/findutils-4.6.0-r1
rename to metadata/md5-cache/sys-apps/findutils-4.7.0
index 33ba26b..d72403b 100644
--- a/metadata/md5-cache/sys-apps/findutils-4.6.0-r1
+++ b/metadata/md5-cache/sys-apps/findutils-4.7.0
@@ -1,13 +1,15 @@
+BDEPEND=nls? ( sys-devel/gettext )
 DEFINED_PHASES=compile configure prepare setup
-DEPEND=selinux? ( sys-libs/libselinux ) nls? ( virtual/libintl ) test? ( || ( dev-lang/python:3.7 dev-lang/python:3.6 >=dev-lang/python-2.7.5-r2:2.7 ) ) nls? ( sys-devel/gettext )
+DEPEND=selinux? ( sys-libs/libselinux ) nls? ( virtual/libintl ) test? ( || ( dev-lang/python:3.7 dev-lang/python:3.6 ) )
 DESCRIPTION=GNU utilities for finding files
-EAPI=5
+EAPI=7
 HOMEPAGE=https://www.gnu.org/software/findutils/
 IUSE=nls selinux static test
 KEYWORDS=*
 LICENSE=GPL-3+
 RDEPEND=selinux? ( sys-libs/libselinux ) nls? ( virtual/libintl )
+RESTRICT=!test? ( test )
 SLOT=0
-SRC_URI=mirror://gnu/findutils/findutils-4.6.0.tar.gz
+SRC_URI=mirror://gnu/findutils/findutils-4.7.0.tar.xz
 _eclasses_=eutils	06133990e861be0fe60c2b428fd025d9	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	b2f01ad412baf81650c23fcf0975fa33	python-any-r1	4900ae970f827a22d33d41bd8b8f9ace	python-utils-r1	931c328767d245c08a16a3f87be9ce9c	toolchain-funcs	209edad4a5c4812e7b2f8021650974f0
-_md5_=5b83b360f5e160d2b4b32adfd60d413c
+_md5_=c567e02e5065cd65846336d3447b28f3
diff --git a/sys-apps/findutils/Manifest b/sys-apps/findutils/Manifest
index 5643ce2..61aa8b5 100644
--- a/sys-apps/findutils/Manifest
+++ b/sys-apps/findutils/Manifest
@@ -1 +1 @@
-DIST findutils-4.6.0.tar.gz 3780154 BLAKE2B cae93c4e6bac93fa374ffba18ada95b783335fa7f9f9491cdd1848cd9bb6781a98e7b0ae3677c88bb3052afca2e90e066e072ee0f67c407cb7b087b49831d799 SHA512 41fcd4197c1efbd77f7420e5754e2cf9332dfef19f90c65a8fa1844bb4bc5d529c8393ee0ff979a054e9ac65ff71d7fe3921ea079f9960843412fc9a71f8afd4
+DIST findutils-4.7.0.tar.xz 1895048 BLAKE2B 5d9f1f2f6bc47415057f9139af3d28abae7be9f812a15bce6016a4478eb3206f35c9329f281fda892f614d017f4f5615003ad60b6a74996ebfad81b1f4b54bf0 SHA512 650a24507f8f4ebff83ad28dd27daa4785b4038dcaadc4fe00823b976e848527074cce3f9ec34065b7f037436d2aa6e9ec099bc05d7472c29864ac2c69de7f2e
diff --git a/sys-apps/findutils/files/findutils-4.6.0-glibc228.patch b/sys-apps/findutils/files/findutils-4.6.0-glibc228.patch
deleted file mode 100644
index 651c2d2..0000000
--- a/sys-apps/findutils/files/findutils-4.6.0-glibc228.patch
+++ /dev/null
@@ -1,335 +0,0 @@
-Fix build failure on glibc-2.28:
-    fseeko.c: In function 'rpl_fseeko':
-    fseeko.c:110:4: error: #error "Please port gnulib fseeko.c to your platform! Look at the code in fseeko.c, then report this to bug-gnulib."
-       #error "Please port gnulib fseeko.c to your platform! Look at the code in fseeko.c, then report this to bug-gnulib."
-
-Patch by milan hodoscek.
-
-https://bugs.gentoo.org/663242
---- a/old/stdio-impl.h
-+++ b/gl/lib/stdio-impl.h
-@@ -1,5 +1,5 @@
- /* Implementation details of FILE streams.
--   Copyright (C) 2007-2008, 2010-2015 Free Software Foundation, Inc.
-+   Copyright (C) 2007-2008, 2010-2018 Free Software Foundation, Inc.
- 
-    This program is free software: you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-@@ -12,12 +12,18 @@
-    GNU General Public License for more details.
- 
-    You should have received a copy of the GNU General Public License
--   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
-+   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
- 
- /* Many stdio implementations have the same logic and therefore can share
-    the same implementation of stdio extension API, except that some fields
-    have different naming conventions, or their access requires some casts.  */
- 
-+/* Glibc 2.28 made _IO_IN_BACKUP private.  For now, work around this
-+   problem by defining it ourselves.  FIXME: Do not rely on glibc
-+   internals.  */
-+#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN
-+# define _IO_IN_BACKUP 0x100
-+#endif
- 
- /* BSD stdio derived implementations.  */
- 
-@@ -29,10 +35,10 @@
- #include <errno.h>                             /* For detecting Plan9.  */
- 
- #if defined __sferror || defined __DragonFly__ || defined __ANDROID__
--  /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Android */
-+  /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */
- 
- # if defined __DragonFly__          /* DragonFly */
--  /* See <http://www.dragonflybsd.org/cvsweb/src/lib/libc/stdio/priv_stdio.h?rev=HEAD&content-type=text/x-cvsweb-markup>.  */
-+  /* See <https://gitweb.dragonflybsd.org/dragonfly.git/blob_plain/HEAD:/lib/libc/stdio/priv_stdio.h>.  */
- #  define fp_ ((struct { struct __FILE_public pub; \
-                          struct { unsigned char *_base; int _size; } _bf; \
-                          void *cookie; \
-@@ -49,30 +55,84 @@
-                          fpos_t _offset; \
-                          /* More fields, not relevant here.  */ \
-                        } *) fp)
--  /* See <http://www.dragonflybsd.org/cvsweb/src/include/stdio.h?rev=HEAD&content-type=text/x-cvsweb-markup>.  */
-+  /* See <https://gitweb.dragonflybsd.org/dragonfly.git/blob_plain/HEAD:/include/stdio.h>.  */
- #  define _p pub._p
- #  define _flags pub._flags
- #  define _r pub._r
- #  define _w pub._w
-+# elif defined __ANDROID__ /* Android */
-+  /* Up to this commit from 2015-10-12
-+     <https://android.googlesource.com/platform/bionic.git/+/f0141dfab10a4b332769d52fa76631a64741297a>
-+     the innards of FILE were public, and fp_ub could be defined like for OpenBSD,
-+     see <https://android.googlesource.com/platform/bionic.git/+/e78392637d5086384a5631ddfdfa8d7ec8326ee3/libc/stdio/fileext.h>
-+     and <https://android.googlesource.com/platform/bionic.git/+/e78392637d5086384a5631ddfdfa8d7ec8326ee3/libc/stdio/local.h>.
-+     After this commit, the innards of FILE are hidden.  */
-+#  define fp_ ((struct { unsigned char *_p; \
-+                         int _r; \
-+                         int _w; \
-+                         int _flags; \
-+                         int _file; \
-+                         struct { unsigned char *_base; size_t _size; } _bf; \
-+                         int _lbfsize; \
-+                         void *_cookie; \
-+                         void *_close; \
-+                         void *_read; \
-+                         void *_seek; \
-+                         void *_write; \
-+                         struct { unsigned char *_base; size_t _size; } _ext; \
-+                         unsigned char *_up; \
-+                         int _ur; \
-+                         unsigned char _ubuf[3]; \
-+                         unsigned char _nbuf[1]; \
-+                         struct { unsigned char *_base; size_t _size; } _lb; \
-+                         int _blksize; \
-+                         fpos_t _offset; \
-+                         /* More fields, not relevant here.  */ \
-+                       } *) fp)
- # else
- #  define fp_ fp
- # endif
- 
--# if (defined __NetBSD__ && __NetBSD_Version__ >= 105270000) || defined __OpenBSD__ || defined __ANDROID__ /* NetBSD >= 1.5ZA, OpenBSD, Android */
-+# if (defined __NetBSD__ && __NetBSD_Version__ >= 105270000) || defined __OpenBSD__ || defined __minix /* NetBSD >= 1.5ZA, OpenBSD, Minix 3 */
-   /* See <http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libc/stdio/fileext.h?rev=HEAD&content-type=text/x-cvsweb-markup>
--     and <http://www.openbsd.org/cgi-bin/cvsweb/src/lib/libc/stdio/fileext.h?rev=HEAD&content-type=text/x-cvsweb-markup> */
-+     and <https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/lib/libc/stdio/fileext.h?rev=HEAD&content-type=text/x-cvsweb-markup>
-+     and <https://github.com/Stichting-MINIX-Research-Foundation/minix/blob/master/lib/libc/stdio/fileext.h> */
-   struct __sfileext
-     {
-       struct  __sbuf _ub; /* ungetc buffer */
-       /* More fields, not relevant here.  */
-     };
- #  define fp_ub ((struct __sfileext *) fp->_ext._base)->_ub
--# else                                         /* FreeBSD, NetBSD <= 1.5Z, DragonFly, Mac OS X, Cygwin, Android */
-+# elif defined __ANDROID__                     /* Android */
-+  struct __sfileext
-+    {
-+      struct { unsigned char *_base; size_t _size; } _ub; /* ungetc buffer */
-+      /* More fields, not relevant here.  */
-+    };
-+#  define fp_ub ((struct __sfileext *) fp_->_ext._base)->_ub
-+# else                                         /* FreeBSD, NetBSD <= 1.5Z, DragonFly, Mac OS X, Cygwin */
- #  define fp_ub fp_->_ub
- # endif
- 
- # define HASUB(fp) (fp_ub._base != NULL)
- 
-+# if defined __ANDROID__ /* Android */
-+  /* Needed after this commit from 2016-01-25
-+     <https://android.googlesource.com/platform/bionic.git/+/e70e0e9267d069bf56a5078c99307e08a7280de7> */
-+#  ifndef __SEOF
-+#   define __SLBF 1
-+#   define __SNBF 2
-+#   define __SRD 4
-+#   define __SWR 8
-+#   define __SRW 0x10
-+#   define __SEOF 0x20
-+#   define __SERR 0x40
-+#  endif
-+#  ifndef __SOFF
-+#   define __SOFF 0x1000
-+#  endif
-+# endif
-+
- #endif
- 
- 
-@@ -81,7 +141,7 @@
- #ifdef __TANDEM                     /* NonStop Kernel */
- # ifndef _IOERR
- /* These values were determined by the program 'stdioext-flags' at
--   <http://lists.gnu.org/archive/html/bug-gnulib/2010-12/msg00165.html>.  */
-+   <https://lists.gnu.org/r/bug-gnulib/2010-12/msg00165.html>.  */
- #  define _IOERR   0x40
- #  define _IOREAD  0x80
- #  define _IOWRT    0x4
-@@ -99,6 +159,8 @@
-                          int _file; \
-                          unsigned int _flag; \
-                        } *) fp)
-+# elif defined __VMS                /* OpenVMS */
-+#  define fp_ ((struct _iobuf *) fp)
- # else
- #  define fp_ fp
- # endif
-@@ -110,4 +172,31 @@
- #  define _flag __flag
- # endif
- 
-+#elif defined _WIN32 && ! defined __CYGWIN__  /* newer Windows with MSVC */
-+
-+/* <stdio.h> does not define the innards of FILE any more.  */
-+# define WINDOWS_OPAQUE_FILE
-+
-+struct _gl_real_FILE
-+{
-+  /* Note: Compared to older Windows and to mingw, it has the fields
-+     _base and _cnt swapped. */
-+  unsigned char *_ptr;
-+  unsigned char *_base;
-+  int _cnt;
-+  int _flag;
-+  int _file;
-+  int _charbuf;
-+  int _bufsiz;
-+};
-+# define fp_ ((struct _gl_real_FILE *) fp)
-+
-+/* These values were determined by a program similar to the one at
-+   <https://lists.gnu.org/r/bug-gnulib/2010-12/msg00165.html>.  */
-+# define _IOREAD   0x1
-+# define _IOWRT    0x2
-+# define _IORW     0x4
-+# define _IOEOF    0x8
-+# define _IOERR   0x10
-+
- #endif
---- a/old/fseeko.c
-+++ b/gl/lib/fseeko.c
-@@ -1,5 +1,5 @@
- /* An fseeko() function that, together with fflush(), is POSIX compliant.
--   Copyright (C) 2007-2015 Free Software Foundation, Inc.
-+   Copyright (C) 2007-2018 Free Software Foundation, Inc.
- 
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-@@ -12,7 +12,7 @@
-    GNU General Public License for more details.
- 
-    You should have received a copy of the GNU General Public License along
--   with this program; if not, see <http://www.gnu.org/licenses/>.  */
-+   with this program; if not, see <https://www.gnu.org/licenses/>.  */
- 
- #include <config.h>
- 
-@@ -33,9 +33,9 @@ fseeko (FILE *fp, off_t offset, int whence)
- #endif
- #if _GL_WINDOWS_64_BIT_OFF_T
- # undef fseeko
--# if HAVE__FSEEKI64 /* msvc, mingw64 */
-+# if HAVE__FSEEKI64 && HAVE_DECL__FSEEKI64 /* msvc, mingw since msvcrt8.0, mingw64 */
- #  define fseeko _fseeki64
--# else /* mingw */
-+# else /* mingw before msvcrt8.0 */
- #  define fseeko fseeko64
- # endif
- #endif
-@@ -47,12 +47,13 @@ fseeko (FILE *fp, off_t offset, int whence)
- #endif
- 
-   /* These tests are based on fpurge.c.  */
--#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
-+#if defined _IO_EOF_SEEN || defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1
-+  /* GNU libc, BeOS, Haiku, Linux libc5 */
-   if (fp->_IO_read_end == fp->_IO_read_ptr
-       && fp->_IO_write_ptr == fp->_IO_write_base
-       && fp->_IO_save_base == NULL)
- #elif defined __sferror || defined __DragonFly__ || defined __ANDROID__
--  /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Android */
-+  /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */
- # if defined __SL64 && defined __SCLE /* Cygwin */
-   if ((fp->_flags & __SL64) == 0)
-     {
-@@ -80,7 +81,7 @@ fseeko (FILE *fp, off_t offset, int whence)
- #elif defined __minix               /* Minix */
-   if (fp_->_ptr == fp_->_buf
-       && (fp_->_ptr == NULL || fp_->_count == 0))
--#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, OpenServer, mingw, NonStop Kernel */
-+#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, OpenServer, mingw, MSVC, NonStop Kernel, OpenVMS */
-   if (fp_->_ptr == fp_->_base
-       && (fp_->_ptr == NULL || fp_->_cnt == 0))
- #elif defined __UCLIBC__            /* uClibc */
-@@ -117,18 +118,19 @@ fseeko (FILE *fp, off_t offset, int whence)
-       if (pos == -1)
-         {
- #if defined __sferror || defined __DragonFly__ || defined __ANDROID__
--          /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Android */
-+          /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */
-           fp_->_flags &= ~__SOFF;
- #endif
-           return -1;
-         }
- 
--#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
-+#if defined _IO_EOF_SEEN || defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1
-+      /* GNU libc, BeOS, Haiku, Linux libc5 */
-       fp->_flags &= ~_IO_EOF_SEEN;
-       fp->_offset = pos;
- #elif defined __sferror || defined __DragonFly__ || defined __ANDROID__
--      /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Android */
--# if defined __CYGWIN__ || (defined __NetBSD__ && __NetBSD_Version__ >= 600000000)
-+      /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */
-+# if defined __CYGWIN__ || (defined __NetBSD__ && __NetBSD_Version__ >= 600000000) || defined __minix
-       /* fp_->_offset is typed as an integer.  */
-       fp_->_offset = pos;
- # else
-@@ -150,8 +152,8 @@ fseeko (FILE *fp, off_t offset, int whence)
-       fp_->_flags &= ~__SEOF;
- #elif defined __EMX__               /* emx+gcc */
-       fp->_flags &= ~_IOEOF;
--#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, OpenServer, mingw, NonStop Kernel */
--      fp->_flag &= ~_IOEOF;
-+#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, OpenServer, mingw, MSVC, NonStop Kernel, OpenVMS */
-+      fp_->_flag &= ~_IOEOF;
- #elif defined __MINT__              /* Atari FreeMiNT */
-       fp->__offset = pos;
-       fp->__eof = 0;
---- a/old/freadahead.c
-+++ b/gl/lib/freadahead.c
-@@ -1,5 +1,5 @@
- /* Retrieve information about a FILE stream.
--   Copyright (C) 2007-2015 Free Software Foundation, Inc.
-+   Copyright (C) 2007-2018 Free Software Foundation, Inc.
- 
-    This program is free software: you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-@@ -12,7 +12,7 @@
-    GNU General Public License for more details.
- 
-    You should have received a copy of the GNU General Public License
--   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
-+   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
- 
- #include <config.h>
- 
-@@ -22,17 +22,26 @@
- #include <stdlib.h>
- #include "stdio-impl.h"
- 
-+#if defined __DragonFly__
-+/* Defined in libc, but not declared in <stdio.h>.  */
-+extern size_t __sreadahead (FILE *);
-+#endif
-+
-+/* This file is not used on systems that have the __freadahead function,
-+   namely musl libc.  */
-+
- size_t
- freadahead (FILE *fp)
- {
--#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
-+#if defined _IO_EOF_SEEN || defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1
-+  /* GNU libc, BeOS, Haiku, Linux libc5 */
-   if (fp->_IO_write_ptr > fp->_IO_write_base)
-     return 0;
-   return (fp->_IO_read_end - fp->_IO_read_ptr)
-          + (fp->_flags & _IO_IN_BACKUP ? fp->_IO_save_end - fp->_IO_save_base :
-             0);
- #elif defined __sferror || defined __DragonFly__ || defined __ANDROID__
--  /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Android */
-+  /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */
-   if ((fp_->_flags & __SWR) != 0 || fp_->_r < 0)
-     return 0;
- # if defined __DragonFly__
-@@ -53,7 +62,7 @@ freadahead (FILE *fp)
-   if ((fp_->_flags & _IOWRITING) != 0)
-     return 0;
-   return fp_->_count;
--#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, OpenServer, mingw, NonStop Kernel */
-+#elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, OpenServer, mingw, MSVC, NonStop Kernel, OpenVMS */
-   if ((fp_->_flag & _IOWRT) != 0)
-     return 0;
-   return fp_->_cnt;
diff --git a/sys-apps/findutils/files/findutils-4.6.0-gnulib-S_MAGIC_NFS.patch b/sys-apps/findutils/files/findutils-4.6.0-gnulib-S_MAGIC_NFS.patch
deleted file mode 100644
index 8d47800..0000000
--- a/sys-apps/findutils/files/findutils-4.6.0-gnulib-S_MAGIC_NFS.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From 85717b68b03bf85016c5079fbbf0c8aa2b182ba6 Mon Sep 17 00:00:00 2001
-From: Pádraig Brady <P@draigBrady.com>
-Date: Mon, 18 Jan 2016 17:29:28 +0000
-Subject: fts: don't unconditionally use leaf optimization for NFS
-
-NFS st_nlink are not accurate on all implementations,
-leading to aborts() if that assumption is made.
-See <https://bugzilla.redhat.com/1299169>
-* lib/fts.c (leaf_optimization_applies): Remove NFS from
-the white list, and document the issue.
----
-(limited to 'lib/fts.c')
-
-diff --git a/lib/fts.c b/lib/fts.c
-index 7e9aca6..2c9df2f 100644
---- a/gl/lib/fts.c
-+++ b/gl/lib/fts.c
-@@ -718,22 +718,23 @@ leaf_optimization_applies (int dir_fd)
- 
-   switch (fs_buf.f_type)
-     {
--    case S_MAGIC_NFS:
--      /* NFS provides usable dirent.d_type but not necessarily for all entries
--         of large directories.  See <https://bugzilla.redhat.com/1252549>.  */
--      return true;
--
-       /* List here the file system types that lack usable dirent.d_type
-          info, yet for which the optimization does apply.  */
-     case S_MAGIC_REISERFS:
-     case S_MAGIC_XFS:
-       return true;
- 
-+      /* Explicitly list here any other file system type for which the
-+         optimization is not applicable, but need documentation.  */
-+    case S_MAGIC_NFS:
-+      /* NFS provides usable dirent.d_type but not necessarily for all entries
-+         of large directories, so as per <https://bugzilla.redhat.com/1252549>
-+         NFS should return true.  However st_nlink values are not accurate on
-+         all implementations as per <https://bugzilla.redhat.com/1299169>.  */
-+      /* fall through */
-     case S_MAGIC_PROC:
--      /* Explicitly listing this or any other file system type for which
--         the optimization is not applicable is not necessary, but we leave
--         it here to document the risk.  Per http://bugs.debian.org/143111,
--         /proc may have bogus stat.st_nlink values.  */
-+      /* Per <http://bugs.debian.org/143111> /proc may have
-+         bogus stat.st_nlink values.  */
-       /* fall through */
-     default:
-       return false;
---
-cgit v0.9.0.2
diff --git a/sys-apps/findutils/files/findutils-4.6.0-gnulib-mb.patch b/sys-apps/findutils/files/findutils-4.6.0-gnulib-mb.patch
deleted file mode 100644
index 925d7cf..0000000
--- a/sys-apps/findutils/files/findutils-4.6.0-gnulib-mb.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-https://bugs.gentoo.org/576818
-
-From 1f63650823cebf52044df840c81062ccb52163a2 Mon Sep 17 00:00:00 2001
-From: Daiki Ueno <ueno@gnu.org>
-Date: Mon, 28 Dec 2015 06:27:42 +0900
-Subject: [PATCH] maint: fix operator precedence in mbrtowc test
-
-This is a fix for test breakage introduced by commit 45228d96; the
-equality expression must be parenthesized when negated with '!',
-otherwise we always get:
-
-  test-mbrtowc.c:49: assertion 'ret == (size_t)(-2)' failed
-
-* m4/mbrtowc.m4 (gl_MBRTOWC_EMPTY_INPUT): Negate the entire expression.
-* m4/mbrlen.m4 (gl_MBRLEN_EMPTY_INPUT): Likewise.
----
- m4/mbrlen.m4  | 2 +-
- m4/mbrtowc.m4 | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
---- a/configure
-+++ b/configure
-@@ -569,7 +569,7 @@ changequote([,])dnl
-            int
-            main (void)
-            {
--             return ! mbrtowc (&wc, "", 0, &mbs) == (size_t) -2;
-+             return mbrtowc (&wc, "", 0, &mbs) != (size_t) -2;
-            }
- _ACEOF
- if ac_fn_c_try_run "$LINENO"; then :
--- 
-2.6.2
-
diff --git a/sys-apps/findutils/findutils-4.6.0-r1.ebuild b/sys-apps/findutils/findutils-4.6.0-r1.ebuild
deleted file mode 100644
index 4349590..0000000
--- a/sys-apps/findutils/findutils-4.6.0-r1.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-PYTHON_COMPAT=( python{2_7,3_5,3_6,3_7} )
-
-inherit eutils flag-o-matic toolchain-funcs python-any-r1
-
-DESCRIPTION="GNU utilities for finding files"
-HOMEPAGE="https://www.gnu.org/software/findutils/"
-SRC_URI="mirror://gnu/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-3+"
-SLOT="0"
-KEYWORDS="*"
-IUSE="nls selinux static test"
-
-RDEPEND="selinux? ( sys-libs/libselinux )
-	nls? ( virtual/libintl )"
-DEPEND="${RDEPEND}
-	test? ( ${PYTHON_DEPS} )
-	nls? ( sys-devel/gettext )"
-
-pkg_setup() {
-	use test && python-any-r1_pkg_setup
-}
-
-src_prepare() {
-	# Don't build or install locate because it conflicts with slocate,
-	# which is a secure version of locate.  See bug 18729
-	sed -i '/^SUBDIRS/s/locate//' Makefile.in
-
-	# Newer C libraries omit this include from sys/types.h.
-	# https://lists.gnu.org/archive/html/bug-gnulib/2016-03/msg00018.html
-	sed -i \
-		'/include.*config.h/a#ifdef MAJOR_IN_SYSMACROS\n#include <sys/sysmacros.h>\n#endif\n' \
-		gl/lib/mountlist.c || die
-
-	epatch "${FILESDIR}"/${P}-gnulib-mb.patch #576818
-	epatch "${FILESDIR}"/${P}-gnulib-S_MAGIC_NFS.patch #580032
-	epatch "${FILESDIR}"/${P}-glibc228.patch #663242
-	epatch_user
-}
-
-src_configure() {
-	use static && append-ldflags -static
-
-	program_prefix=$(usex userland_GNU '' g)
-	econf \
-		--with-packager="Gentoo" \
-		--with-packager-version="${PVR}" \
-		--with-packager-bug-reports="https://bugs.gentoo.org/" \
-		--program-prefix=${program_prefix} \
-		$(use_enable nls) \
-		$(use_with selinux) \
-		--libexecdir='$(libdir)'/find
-}
-
-src_compile() {
-	# We don't build locate, but the docs want a file in there.
-	emake -C locate dblocation.texi
-	default
-}
diff --git a/sys-apps/findutils/findutils-4.7.0.ebuild b/sys-apps/findutils/findutils-4.7.0.ebuild
new file mode 100644
index 0000000..69fb990
--- /dev/null
+++ b/sys-apps/findutils/findutils-4.7.0.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7} )
+
+inherit flag-o-matic toolchain-funcs python-any-r1
+
+DESCRIPTION="GNU utilities for finding files"
+HOMEPAGE="https://www.gnu.org/software/findutils/"
+SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="*"
+IUSE="nls selinux static test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="selinux? ( sys-libs/libselinux )
+	nls? ( virtual/libintl )"
+DEPEND="${RDEPEND}
+	test? ( ${PYTHON_DEPS} )
+"
+BDEPEND="
+	nls? ( sys-devel/gettext )
+"
+
+pkg_setup() {
+	use test && python-any-r1_pkg_setup
+}
+
+src_prepare() {
+	# Don't build or install locate because it conflicts with mlocate,
+	# which is a secure version of locate.  See bug 18729
+	sed \
+		-e '/^SUBDIRS/s@locate@@' \
+		-e '/^built_programs/s@ frcode locate updatedb@@' \
+		-i Makefile.in || die
+
+	default
+}
+
+src_configure() {
+	if use static; then
+		append-flags -pthread
+		append-ldflags -static
+	fi
+
+	program_prefix=$(usex userland_GNU '' g)
+	local myeconfargs=(
+		--with-packager="Gentoo"
+		--with-packager-version="${PVR}"
+		--with-packager-bug-reports="https://bugs.gentoo.org/"
+		--program-prefix=${program_prefix}
+		$(use_enable nls)
+		$(use_with selinux)
+		--libexecdir='$(libdir)'/find
+	)
+	econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+	# We don't build locate, but the docs want a file in there.
+	emake -C locate dblocation.texi
+	default
+}