sys-apps/findutils: use LFS & 64-bit time_t
This only matters for 32-bit systems, but they can fail to build under glibc-2.34 due to new 64-bit time_T checks. We want this to use 64-bit FS interfaces anyways since this heavily interacts with the filesystem. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
This commit is contained in:
parent
edd245fb1b
commit
ee514defae
|
@ -0,0 +1,76 @@
|
|||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
|
||||
PYTHON_COMPAT=( python3_{7..9} )
|
||||
|
||||
inherit flag-o-matic 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="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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"
|
||||
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() {
|
||||
append-lfs-flags #471102
|
||||
append-cppflags -D_TIME_BITS=64
|
||||
|
||||
if use static; then
|
||||
append-flags -pthread
|
||||
append-ldflags -static
|
||||
fi
|
||||
|
||||
if [[ ${CHOST} == *-darwin* ]] ; then
|
||||
# https://lists.gnu.org/archive/html/bug-findutils/2021-01/msg00050.html
|
||||
# https://lists.gnu.org/archive/html/bug-findutils/2021-01/msg00051.html
|
||||
append-cppflags '-D__nonnull\(X\)='
|
||||
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
|
||||
}
|
Loading…
Reference in New Issue